Skip to content

Commit 181601d

Browse files
committed
v4 version, updated fw to v1.16 and added self-generated radar trigger and SPI
1 parent e9cc944 commit 181601d

File tree

9 files changed

+318
-256
lines changed

9 files changed

+318
-256
lines changed

src/.cproject

+3
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.floatabi.287837742" name="Floating-point ABI" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.floatabi" useByScannerDiscovery="true" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.floatabi.value.hard" valueType="enumerated"/>
2525
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board.1038850917" name="Board" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board" useByScannerDiscovery="false" value="NUCLEO-WB15CC" valueType="string"/>
2626
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults.1108686032" name="Defaults" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults" useByScannerDiscovery="false" value="com.st.stm32cube.ide.common.services.build.inputs.revA.1.0.5 || Debug || true || Executable || com.st.stm32cube.ide.mcu.gnu.managedbuild.option.toolchain.value.workspace || NUCLEO-WB15CC || 0 || 0 || arm-none-eabi- || ${gnu_tools_for_stm32_compiler_path} || ../Middlewares/ST/STM32_WPAN/ble/core/template | ../Middlewares/ST/STM32_WPAN/ble/core | ../Utilities/lpm/tiny_lpm | ../STM32_WPAN/App | ../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl | ../Middlewares/ST/STM32_WPAN/ble/svc/Inc | ../Middlewares/ST/STM32_WPAN/ble | ../Drivers/CMSIS/Include | ../Middlewares/ST/STM32_WPAN/ble/core/auto | ../Core/Inc | ../Utilities/sequencer | ../Drivers/STM32WBxx_HAL_Driver/Inc | ../Middlewares/ST/STM32_WPAN/utilities | ../Middlewares/ST/STM32_WPAN/ble/svc/Src | ../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/shci | ../Middlewares/ST/STM32_WPAN | ../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread | ../Drivers/STM32WBxx_HAL_Driver/Inc/Legacy | ../Drivers/CMSIS/Device/ST/STM32WBxx/Include || || || USE_HAL_DRIVER | STM32WB15xx || || Utilities | Drivers | STM32_WPAN | Core/Startup | Middlewares | Core || || || ${workspace_loc:/${ProjName}/STM32WB15CCUX_FLASH.ld} || true || NonSecure || || secure_nsclib.o || || None || " valueType="string"/>
27+
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.converthex.1930543119" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.converthex" useByScannerDiscovery="false" value="true" valueType="boolean"/>
2728
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform.738667417" isAbstract="false" osList="all" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform"/>
2829
<builder buildPath="${workspace_loc:/zenith}/Debug" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder.2024749236" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder"/>
2930
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.1987592812" name="MCU GCC Assembler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler">
@@ -128,6 +129,7 @@
128129
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.floatabi.1633149040" name="Floating-point ABI" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.floatabi" useByScannerDiscovery="true" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.floatabi.value.hard" valueType="enumerated"/>
129130
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board.307544985" name="Board" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.target_board" useByScannerDiscovery="false" value="NUCLEO-WB15CC" valueType="string"/>
130131
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults.2080714715" name="Defaults" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.defaults" useByScannerDiscovery="false" value="com.st.stm32cube.ide.common.services.build.inputs.revA.1.0.5 || Release || false || Executable || com.st.stm32cube.ide.mcu.gnu.managedbuild.option.toolchain.value.workspace || NUCLEO-WB15CC || 0 || 0 || arm-none-eabi- || ${gnu_tools_for_stm32_compiler_path} || ../Middlewares/ST/STM32_WPAN/ble/core/template | ../Middlewares/ST/STM32_WPAN/ble/core | ../Utilities/lpm/tiny_lpm | ../STM32_WPAN/App | ../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl | ../Middlewares/ST/STM32_WPAN/ble/svc/Inc | ../Middlewares/ST/STM32_WPAN/ble | ../Drivers/CMSIS/Include | ../Middlewares/ST/STM32_WPAN/ble/core/auto | ../Core/Inc | ../Utilities/sequencer | ../Drivers/STM32WBxx_HAL_Driver/Inc | ../Middlewares/ST/STM32_WPAN/utilities | ../Middlewares/ST/STM32_WPAN/ble/svc/Src | ../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/shci | ../Middlewares/ST/STM32_WPAN | ../Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread | ../Drivers/STM32WBxx_HAL_Driver/Inc/Legacy | ../Drivers/CMSIS/Device/ST/STM32WBxx/Include || || || USE_HAL_DRIVER | STM32WB15xx || || Utilities | Drivers | STM32_WPAN | Core/Startup | Middlewares | Core || || || ${workspace_loc:/${ProjName}/STM32WB15CCUX_FLASH.ld} || true || NonSecure || || secure_nsclib.o || || None || " valueType="string"/>
132+
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.converthex.277077155" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.option.converthex" useByScannerDiscovery="false" value="true" valueType="boolean"/>
131133
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform.2039966623" isAbstract="false" osList="all" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.targetplatform"/>
132134
<builder buildPath="${workspace_loc:/zenith}/Release" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder.2011710967" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.builder"/>
133135
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.1137493041" name="MCU GCC Assembler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler">
@@ -164,6 +166,7 @@
164166
<listOptionValue builtIn="false" value="../Utilities/sequencer"/>
165167
<listOptionValue builtIn="false" value="../Middlewares/ST/STM32_WPAN/ble"/>
166168
</option>
169+
<option id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.languagestandard.1778004992" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.languagestandard" useByScannerDiscovery="true" value="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.languagestandard.value.gnu18" valueType="enumerated"/>
167170
<inputType id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c.386931032" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.input.c"/>
168171
</tool>
169172
<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.808787876" name="MCU G++ Compiler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler">

src/Core/Inc/main.h

+12-5
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,22 @@ extern "C" {
4242
#define USE_DOUBLE_BUFFER
4343

4444
/* Definition of ADCx conversions data table size */
45-
#define ADC_CONVERTED_DATA_BUFFER_SIZE (1UL*1000UL) // uses double buffer to not stop the DMA
45+
#define ADC_CONVERTED_DATA_BUFFER_SIZE (1UL*158U) // uses double buffer to not stop the DMA
4646

4747
/* Init variable out of expected ADC conversion data range */
4848
#define VAR_CONVERTED_DATA_INIT_VALUE (__LL_ADC_DIGITAL_SCALE(LL_ADC_RESOLUTION_12B) + 1)
49-
#define QUEUE_RAMPS_NO 16
50-
#define SEND_BIN_NO 60
49+
#define QUEUE_BLE_PACKETS_NO 22
50+
#define SEND_BIN_NO 20
51+
#define BIN_SENT_OFFSET 3
5152
#define SEND_BIN_INITIAL_IDX 0
52-
#define EXTREMA_SAMPLES_DISCARD_NO 100
53-
#define TOTAL_SAMPLES_DISCARD_NO 200
53+
#define EXTREMA_SAMPLES_DISCARD_NO 16
54+
#define TOTAL_SAMPLES_DISCARD_NO 48
55+
56+
#define MICRODOPPLER_MODE
57+
58+
#define MD_BIN_SUM_START 10
59+
#define MD_BIN_SUM_NUMBER 60
60+
#define MD_SUMS_PER_PACKET 30 /* max 30 ramps */
5461

5562
/* USER CODE END Includes */
5663

src/Core/Inc/tim.h

+2-3
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,10 @@ extern "C" {
3232

3333
/* Parameters of time base (used as ADC conversion trigger) */
3434
/* Time base frequency (unit: Hz). With a timer 16 bits and time base */
35-
/* freq max 32kHz, range is [min=1Hz, max=32kHz]. */
36-
#define TIMER2_FREQUENCY_HZ (1000000UL) // tested OK with 2e6
35+
#define TIMER2_FREQUENCY_HZ (250000U) // tested OK with 2e6
3736
/* Time base range frequency maximum (unit: Hz).*/
3837
/* With a timer 16 bits, minimum frequency will be 1/32000 times this value.*/
39-
#define TIMER2_FREQUENCY_RANGE_MAX_HZ (1000000UL) // tested OK with 2e6
38+
#define TIMER2_FREQUENCY_RANGE_MAX_HZ (250000U) // tested OK with 2e6
4039

4140
/* USER CODE END Includes */
4241

src/Core/Src/adc.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,8 @@ void MX_ADC1_Init(void)
4949
hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT;
5050
hadc1.Init.ScanConvMode = ADC_SCAN_ENABLE;
5151
hadc1.Init.EOCSelection = ADC_EOC_SEQ_CONV;
52-
hadc1.Init.SamplingTimeCommon1 = ADC_SAMPLETIME_1CYCLE_5;
53-
hadc1.Init.SamplingTimeCommon2 = ADC_SAMPLETIME_1CYCLE_5;
52+
hadc1.Init.SamplingTimeCommon1 = ADC_SAMPLETIME_7CYCLES_5;
53+
hadc1.Init.SamplingTimeCommon2 = ADC_SAMPLETIME_7CYCLES_5;
5454
hadc1.Init.LowPowerAutoWait = DISABLE;
5555
hadc1.Init.ContinuousConvMode = DISABLE;
5656
hadc1.Init.NbrOfConversion = 2;

src/Core/Src/dma.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ void MX_DMA_Init(void)
5454
hdma_memtomem_dma1_channel2.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE;
5555
hdma_memtomem_dma1_channel2.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE;
5656
hdma_memtomem_dma1_channel2.Init.Mode = DMA_NORMAL;
57-
hdma_memtomem_dma1_channel2.Init.Priority = DMA_PRIORITY_VERY_HIGH;
57+
hdma_memtomem_dma1_channel2.Init.Priority = DMA_PRIORITY_HIGH;
5858
if (HAL_DMA_Init(&hdma_memtomem_dma1_channel2) != HAL_OK)
5959
{
6060
Error_Handler();

0 commit comments

Comments
 (0)