From 3e334826ee3679923a12df4ce702fd4d9f0374ee Mon Sep 17 00:00:00 2001 From: YunHorn Technology Date: Wed, 18 Dec 2024 23:31:57 +0800 Subject: [PATCH] wip --- Core/Src/dma.c | 4 ++-- Core/Src/gpio.c | 8 +++++++- Core/Src/i2c.c | 2 +- Core/Src/main.c | 6 ++++-- Core/Src/sys_app.c | 2 +- LoRaWAN/App/lora_app.c | 2 +- STM32CubeIDE/.cproject | 4 ++-- STM32CubeIDE/.project | 7 +------ STM32CubeIDE/.settings/language.settings.xml | 4 ++-- .../Release/Application/User/Core/subdir.mk | 7 +------ .../Application/User/STS/TOF/App/subdir.mk | 18 ++++-------------- STM32CubeIDE/Release/WLE5CC_NODE_STS.elf | Bin 159648 -> 159632 bytes STM32CubeIDE/Release/makefile | 3 --- STM32CubeIDE/Release/sources.mk | 3 --- STS/TOF/App/app_tof_peoplecount.c | 13 ++++++++----- 15 files changed, 34 insertions(+), 49 deletions(-) diff --git a/Core/Src/dma.c b/Core/Src/dma.c index 0aad753..cffe8a6 100644 --- a/Core/Src/dma.c +++ b/Core/Src/dma.c @@ -80,8 +80,8 @@ void MX_DMA_Init(void) //HAL_NVIC_SetPriority(DMA1_Channel7_IRQn, 0, 0); //HAL_NVIC_EnableIRQ(DMA1_Channel7_IRQn); - HAL_NVIC_SetPriority(DMA1_Channel5_IRQn, 2, 0); - HAL_NVIC_EnableIRQ(DMA1_Channel5_IRQn); + // HAL_NVIC_SetPriority(DMA1_Channel5_IRQn, 2, 0); + // HAL_NVIC_EnableIRQ(DMA1_Channel5_IRQn); } diff --git a/Core/Src/gpio.c b/Core/Src/gpio.c index 287b9b3..0bdc85f 100644 --- a/Core/Src/gpio.c +++ b/Core/Src/gpio.c @@ -55,6 +55,9 @@ void MX_GPIO_Init(void) #ifdef L8 HAL_GPIO_WritePin(VL53L8A1_PWR_EN_C_PORT, VL53L8A1_PWR_EN_C_PIN, GPIO_PIN_SET); HAL_GPIO_WritePin(VL53L8A1_LPn_C_PORT, VL53L8A1_LPn_C_PIN, GPIO_PIN_SET); +#endif +#ifdef STS_P2 + HAL_GPIO_WritePin(TOF_C_XSHUT_GPIO_Port, TOF_C_XSHUT_Pin, GPIO_PIN_SET); #endif /*Configure GPIO pins : PBPin PBPin PBPin */ GPIO_InitStruct.Pin = LED1_Pin|LED2_Pin|LED3_Pin; @@ -140,13 +143,14 @@ void MX_GPIO_Init(void) GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(TOF_C_XSHUT_GPIO_Port, &GPIO_InitStruct); +#if 0 /*Configure GPIO pins : TOF_L_XSHUT_Pin */ GPIO_InitStruct.Pin = TOF_L_XSHUT_Pin; GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Pull = GPIO_PULLUP; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(TOF_L_XSHUT_GPIO_Port, &GPIO_InitStruct); - +#endif HAL_NVIC_SetPriority(TOF_C_INT_EXTI_IRQn, 0, 0); HAL_NVIC_EnableIRQ(TOF_C_INT_EXTI_IRQn); @@ -205,6 +209,8 @@ void MX_GPIO_Init(void) HAL_NVIC_SetPriority(EXTI15_10_IRQn, 0, 0); HAL_NVIC_EnableIRQ(EXTI15_10_IRQn); + HAL_NVIC_SetPriority(TOF_C_INT_EXTI_IRQn, 0, 0); + HAL_NVIC_EnableIRQ(TOF_C_INT_EXTI_IRQn); // HAL_NVIC_SetPriority(EXTI9_5_IRQn, 0, 0); // HAL_NVIC_EnableIRQ(EXTI9_5_IRQn); diff --git a/Core/Src/i2c.c b/Core/Src/i2c.c index 2713947..d30aea8 100644 --- a/Core/Src/i2c.c +++ b/Core/Src/i2c.c @@ -46,7 +46,7 @@ void MX_I2C2_Init(void) #ifdef L8 hi2c2.Init.Timing = I2C2_FAST_PLUS_1M; #else - hi2c2.Init.Timing = I2C2_STANDARD_100K; + hi2c2.Init.Timing = I2C2_FAST_400K; #endif hi2c2.Init.OwnAddress1 = 0; hi2c2.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT; diff --git a/Core/Src/main.c b/Core/Src/main.c index 390eb02..28a417a 100644 --- a/Core/Src/main.c +++ b/Core/Src/main.c @@ -114,10 +114,12 @@ int main(void) MX_DMA_Init(); MX_LoRaWAN_Init(); } -//PME_ON; -//WATER_LEAKAGE_ENABLE; + /* USER CODE BEGIN 2 */ //MX_USART2_UART_Init(); + + STS_TOF_VL53LX_PeopleCounting_Process_Init(); + /* USER CODE END 2 */ /* Infinite loop */ diff --git a/Core/Src/sys_app.c b/Core/Src/sys_app.c index 8b99d65..2e22904 100644 --- a/Core/Src/sys_app.c +++ b/Core/Src/sys_app.c @@ -129,7 +129,7 @@ void SystemApp_Init(void) MX_TOF_Init(); #endif #if defined(STS_P2) - STS_TOF_VL53LX_PeopleCounting_Process_Init(); + //STS_TOF_VL53LX_PeopleCounting_Process_Init(); #endif /*Init low power manager*/ diff --git a/LoRaWAN/App/lora_app.c b/LoRaWAN/App/lora_app.c index 2d04230..aeb475a 100644 --- a/LoRaWAN/App/lora_app.c +++ b/LoRaWAN/App/lora_app.c @@ -1096,7 +1096,7 @@ static void OnTxTimerEvent(void *context) /* USER CODE BEGIN OnTxTimerEvent_1 */ /* USER CODE END OnTxTimerEvent_1 */ - + UTIL_TIMER_Stop(&TxTimer); #ifdef STS_R4 UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_YunhornSTSEventP6), CFG_SEQ_Prio_0); #elif defined(STS_M1) diff --git a/STM32CubeIDE/.cproject b/STM32CubeIDE/.cproject index 61e853c..6b533d7 100644 --- a/STM32CubeIDE/.cproject +++ b/STM32CubeIDE/.cproject @@ -99,7 +99,7 @@ - + @@ -213,7 +213,7 @@ - + diff --git a/STM32CubeIDE/.project b/STM32CubeIDE/.project index d7be60c..7a0a531 100644 --- a/STM32CubeIDE/.project +++ b/STM32CubeIDE/.project @@ -442,11 +442,6 @@ 1 copy_PARENT/Core/Src/stm32wlxx_it.c - - Application/User/Core/stm32wlxx_nucleo_bus.c - 1 - PARENT-1-PROJECT_LOC/Core/Src/stm32wlxx_nucleo_bus.c - Application/User/Core/subghz.c 1 @@ -580,7 +575,7 @@ Application/User/STS/TOF/App/app_tof.c 1 - D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c + copy_PARENT/STS/TOF/App/app_tof.c Application/User/STS/TOF/App/app_tof.h diff --git a/STM32CubeIDE/.settings/language.settings.xml b/STM32CubeIDE/.settings/language.settings.xml index 0ec3934..f1b15d8 100644 --- a/STM32CubeIDE/.settings/language.settings.xml +++ b/STM32CubeIDE/.settings/language.settings.xml @@ -5,7 +5,7 @@ - + @@ -16,7 +16,7 @@ - + diff --git a/STM32CubeIDE/Release/Application/User/Core/subdir.mk b/STM32CubeIDE/Release/Application/User/Core/subdir.mk index 838f30b..9aac18b 100644 --- a/STM32CubeIDE/Release/Application/User/Core/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/Core/subdir.mk @@ -16,7 +16,6 @@ D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_S D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32_lpm_if.c \ D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_hal_msp.c \ D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_it.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_nucleo_bus.c \ D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/subghz.c \ D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_app.c \ D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_debug.c \ @@ -39,7 +38,6 @@ OBJS += \ ./Application/User/Core/stm32_lpm_if.o \ ./Application/User/Core/stm32wlxx_hal_msp.o \ ./Application/User/Core/stm32wlxx_it.o \ -./Application/User/Core/stm32wlxx_nucleo_bus.o \ ./Application/User/Core/subghz.o \ ./Application/User/Core/sys_app.o \ ./Application/User/Core/sys_debug.o \ @@ -62,7 +60,6 @@ C_DEPS += \ ./Application/User/Core/stm32_lpm_if.d \ ./Application/User/Core/stm32wlxx_hal_msp.d \ ./Application/User/Core/stm32wlxx_it.d \ -./Application/User/Core/stm32wlxx_nucleo_bus.d \ ./Application/User/Core/subghz.d \ ./Application/User/Core/sys_app.d \ ./Application/User/Core/sys_debug.d \ @@ -97,8 +94,6 @@ Application/User/Core/stm32wlxx_hal_msp.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLE arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -I../../../../../../../Drivers/BSP/Components/vl53l8cx/porting -I../../../../../../../Drivers/BSP/Components/Common -I../../../../../../../Drivers/BSP/53L8A1 -I../../../../../../../Drivers/BSP/Components/vl53l8cx/modules -I../../../../../../../Drivers/BSP/Components/vl53l8cx -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/stm32wlxx_it.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_it.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -I../../../../../../../Drivers/BSP/Components/vl53l8cx/porting -I../../../../../../../Drivers/BSP/Components/Common -I../../../../../../../Drivers/BSP/53L8A1 -I../../../../../../../Drivers/BSP/Components/vl53l8cx/modules -I../../../../../../../Drivers/BSP/Components/vl53l8cx -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/Core/stm32wlxx_nucleo_bus.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_nucleo_bus.c Application/User/Core/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -I../../../../../../../Drivers/BSP/Components/vl53l8cx/porting -I../../../../../../../Drivers/BSP/Components/Common -I../../../../../../../Drivers/BSP/53L8A1 -I../../../../../../../Drivers/BSP/Components/vl53l8cx/modules -I../../../../../../../Drivers/BSP/Components/vl53l8cx -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/subghz.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/subghz.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -I../../../../../../../Drivers/BSP/Components/vl53l8cx/porting -I../../../../../../../Drivers/BSP/Components/Common -I../../../../../../../Drivers/BSP/53L8A1 -I../../../../../../../Drivers/BSP/Components/vl53l8cx/modules -I../../../../../../../Drivers/BSP/Components/vl53l8cx -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/Core/sys_app.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/sys_app.c Application/User/Core/subdir.mk @@ -119,7 +114,7 @@ Application/User/Core/usart_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/ clean: clean-Application-2f-User-2f-Core clean-Application-2f-User-2f-Core: - -$(RM) ./Application/User/Core/adc.cyclo ./Application/User/Core/adc.d ./Application/User/Core/adc.o ./Application/User/Core/adc.su ./Application/User/Core/adc_if.cyclo ./Application/User/Core/adc_if.d ./Application/User/Core/adc_if.o ./Application/User/Core/adc_if.su ./Application/User/Core/dma.cyclo ./Application/User/Core/dma.d ./Application/User/Core/dma.o ./Application/User/Core/dma.su ./Application/User/Core/flash_if.cyclo ./Application/User/Core/flash_if.d ./Application/User/Core/flash_if.o ./Application/User/Core/flash_if.su ./Application/User/Core/gpio.cyclo ./Application/User/Core/gpio.d ./Application/User/Core/gpio.o ./Application/User/Core/gpio.su ./Application/User/Core/i2c.cyclo ./Application/User/Core/i2c.d ./Application/User/Core/i2c.o ./Application/User/Core/i2c.su ./Application/User/Core/main.cyclo ./Application/User/Core/main.d ./Application/User/Core/main.o ./Application/User/Core/main.su ./Application/User/Core/rtc.cyclo ./Application/User/Core/rtc.d ./Application/User/Core/rtc.o ./Application/User/Core/rtc.su ./Application/User/Core/stm32_lpm_if.cyclo ./Application/User/Core/stm32_lpm_if.d ./Application/User/Core/stm32_lpm_if.o ./Application/User/Core/stm32_lpm_if.su ./Application/User/Core/stm32wlxx_hal_msp.cyclo ./Application/User/Core/stm32wlxx_hal_msp.d ./Application/User/Core/stm32wlxx_hal_msp.o ./Application/User/Core/stm32wlxx_hal_msp.su ./Application/User/Core/stm32wlxx_it.cyclo ./Application/User/Core/stm32wlxx_it.d ./Application/User/Core/stm32wlxx_it.o ./Application/User/Core/stm32wlxx_it.su ./Application/User/Core/stm32wlxx_nucleo_bus.cyclo ./Application/User/Core/stm32wlxx_nucleo_bus.d ./Application/User/Core/stm32wlxx_nucleo_bus.o ./Application/User/Core/stm32wlxx_nucleo_bus.su ./Application/User/Core/subghz.cyclo ./Application/User/Core/subghz.d ./Application/User/Core/subghz.o ./Application/User/Core/subghz.su ./Application/User/Core/sys_app.cyclo ./Application/User/Core/sys_app.d ./Application/User/Core/sys_app.o ./Application/User/Core/sys_app.su ./Application/User/Core/sys_debug.cyclo ./Application/User/Core/sys_debug.d ./Application/User/Core/sys_debug.o ./Application/User/Core/sys_debug.su ./Application/User/Core/sys_sensors.cyclo ./Application/User/Core/sys_sensors.d ./Application/User/Core/sys_sensors.o ./Application/User/Core/sys_sensors.su ./Application/User/Core/syscalls.cyclo ./Application/User/Core/syscalls.d ./Application/User/Core/syscalls.o ./Application/User/Core/syscalls.su ./Application/User/Core/sysmem.cyclo ./Application/User/Core/sysmem.d ./Application/User/Core/sysmem.o ./Application/User/Core/sysmem.su ./Application/User/Core/timer_if.cyclo ./Application/User/Core/timer_if.d ./Application/User/Core/timer_if.o ./Application/User/Core/timer_if.su ./Application/User/Core/usart.cyclo ./Application/User/Core/usart.d ./Application/User/Core/usart.o ./Application/User/Core/usart.su ./Application/User/Core/usart_if.cyclo ./Application/User/Core/usart_if.d ./Application/User/Core/usart_if.o ./Application/User/Core/usart_if.su + -$(RM) ./Application/User/Core/adc.cyclo ./Application/User/Core/adc.d ./Application/User/Core/adc.o ./Application/User/Core/adc.su ./Application/User/Core/adc_if.cyclo ./Application/User/Core/adc_if.d ./Application/User/Core/adc_if.o ./Application/User/Core/adc_if.su ./Application/User/Core/dma.cyclo ./Application/User/Core/dma.d ./Application/User/Core/dma.o ./Application/User/Core/dma.su ./Application/User/Core/flash_if.cyclo ./Application/User/Core/flash_if.d ./Application/User/Core/flash_if.o ./Application/User/Core/flash_if.su ./Application/User/Core/gpio.cyclo ./Application/User/Core/gpio.d ./Application/User/Core/gpio.o ./Application/User/Core/gpio.su ./Application/User/Core/i2c.cyclo ./Application/User/Core/i2c.d ./Application/User/Core/i2c.o ./Application/User/Core/i2c.su ./Application/User/Core/main.cyclo ./Application/User/Core/main.d ./Application/User/Core/main.o ./Application/User/Core/main.su ./Application/User/Core/rtc.cyclo ./Application/User/Core/rtc.d ./Application/User/Core/rtc.o ./Application/User/Core/rtc.su ./Application/User/Core/stm32_lpm_if.cyclo ./Application/User/Core/stm32_lpm_if.d ./Application/User/Core/stm32_lpm_if.o ./Application/User/Core/stm32_lpm_if.su ./Application/User/Core/stm32wlxx_hal_msp.cyclo ./Application/User/Core/stm32wlxx_hal_msp.d ./Application/User/Core/stm32wlxx_hal_msp.o ./Application/User/Core/stm32wlxx_hal_msp.su ./Application/User/Core/stm32wlxx_it.cyclo ./Application/User/Core/stm32wlxx_it.d ./Application/User/Core/stm32wlxx_it.o ./Application/User/Core/stm32wlxx_it.su ./Application/User/Core/subghz.cyclo ./Application/User/Core/subghz.d ./Application/User/Core/subghz.o ./Application/User/Core/subghz.su ./Application/User/Core/sys_app.cyclo ./Application/User/Core/sys_app.d ./Application/User/Core/sys_app.o ./Application/User/Core/sys_app.su ./Application/User/Core/sys_debug.cyclo ./Application/User/Core/sys_debug.d ./Application/User/Core/sys_debug.o ./Application/User/Core/sys_debug.su ./Application/User/Core/sys_sensors.cyclo ./Application/User/Core/sys_sensors.d ./Application/User/Core/sys_sensors.o ./Application/User/Core/sys_sensors.su ./Application/User/Core/syscalls.cyclo ./Application/User/Core/syscalls.d ./Application/User/Core/syscalls.o ./Application/User/Core/syscalls.su ./Application/User/Core/sysmem.cyclo ./Application/User/Core/sysmem.d ./Application/User/Core/sysmem.o ./Application/User/Core/sysmem.su ./Application/User/Core/timer_if.cyclo ./Application/User/Core/timer_if.d ./Application/User/Core/timer_if.o ./Application/User/Core/timer_if.su ./Application/User/Core/usart.cyclo ./Application/User/Core/usart.d ./Application/User/Core/usart.o ./Application/User/Core/usart.su ./Application/User/Core/usart_if.cyclo ./Application/User/Core/usart_if.d ./Application/User/Core/usart_if.o ./Application/User/Core/usart_if.su .PHONY: clean-Application-2f-User-2f-Core diff --git a/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk b/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk index dfe9ec4..21f8268 100644 --- a/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/STS/TOF/App/subdir.mk @@ -5,38 +5,28 @@ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/X-WL55_WLE5_53L0X.c \ D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c \ -D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_vl53l0x_range.c +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c OBJS += \ -./Application/User/STS/TOF/App/X-WL55_WLE5_53L0X.o \ ./Application/User/STS/TOF/App/app_tof.o \ -./Application/User/STS/TOF/App/app_tof_peoplecount.o \ -./Application/User/STS/TOF/App/app_tof_vl53l0x_range.o +./Application/User/STS/TOF/App/app_tof_peoplecount.o C_DEPS += \ -./Application/User/STS/TOF/App/X-WL55_WLE5_53L0X.d \ ./Application/User/STS/TOF/App/app_tof.d \ -./Application/User/STS/TOF/App/app_tof_peoplecount.d \ -./Application/User/STS/TOF/App/app_tof_vl53l0x_range.d +./Application/User/STS/TOF/App/app_tof_peoplecount.d # Each subdirectory must supply rules for building sources it contributes -Application/User/STS/TOF/App/X-WL55_WLE5_53L0X.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/X-WL55_WLE5_53L0X.c Application/User/STS/TOF/App/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -I../../../../../../../Drivers/BSP/Components/vl53l8cx/porting -I../../../../../../../Drivers/BSP/Components/Common -I../../../../../../../Drivers/BSP/53L8A1 -I../../../../../../../Drivers/BSP/Components/vl53l8cx/modules -I../../../../../../../Drivers/BSP/Components/vl53l8cx -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/STS/TOF/App/app_tof.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof.c Application/User/STS/TOF/App/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -I../../../../../../../Drivers/BSP/Components/vl53l8cx/porting -I../../../../../../../Drivers/BSP/Components/Common -I../../../../../../../Drivers/BSP/53L8A1 -I../../../../../../../Drivers/BSP/Components/vl53l8cx/modules -I../../../../../../../Drivers/BSP/Components/vl53l8cx -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" Application/User/STS/TOF/App/app_tof_peoplecount.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_peoplecount.c Application/User/STS/TOF/App/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -I../../../../../../../Drivers/BSP/Components/vl53l8cx/porting -I../../../../../../../Drivers/BSP/Components/Common -I../../../../../../../Drivers/BSP/53L8A1 -I../../../../../../../Drivers/BSP/Components/vl53l8cx/modules -I../../../../../../../Drivers/BSP/Components/vl53l8cx -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" -Application/User/STS/TOF/App/app_tof_vl53l0x_range.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/STS/TOF/App/app_tof_vl53l0x_range.c Application/User/STS/TOF/App/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DSTS_P2 -DCORE_CM4 -DUSE_HAL_DRIVER -DSTM32WLE5xx -c -I../../Core/Inc -I../../STS/Core/Inc -I../../STS/TOF/App -I../../STS/TOF/Target -I../../STS/TOF/vl53l1x_uld -I../../STS/TOF/vl53l0x -I../../LoRaWAN/App -I../../LoRaWAN/Target -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc -I../../../../../../../Drivers/STM32WLxx_HAL_Driver/Inc/Legacy -I../../../../../../../Utilities/trace/adv_trace -I../../../../../../../Utilities/misc -I../../../../../../../Utilities/sequencer -I../../../../../../../Utilities/timer -I../../../../../../../Utilities/lpm/tiny_lpm -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler/Packages -I../../../../../../../Drivers/CMSIS/Device/ST/STM32WLxx/Include -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Crypto -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac/Region -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Mac -I../../../../../../../Middlewares/Third_Party/LoRaWAN/LmHandler -I../../../../../../../Middlewares/Third_Party/LoRaWAN/Utilities -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy -I../../../../../../../Middlewares/Third_Party/SubGHz_Phy/stm32_radio_driver -I../../../../../../../Middlewares/ST/STM32_Cryptographic/include -I../../../../../../../Drivers/CMSIS/Include -I../../../../../../../Drivers/BSP/STM32WLxx_Nucleo -I../../../../../../../Drivers/BSP/Components/vl53l8cx/porting -I../../../../../../../Drivers/BSP/Components/Common -I../../../../../../../Drivers/BSP/53L8A1 -I../../../../../../../Drivers/BSP/Components/vl53l8cx/modules -I../../../../../../../Drivers/BSP/Components/vl53l8cx -Os -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Application-2f-User-2f-STS-2f-TOF-2f-App clean-Application-2f-User-2f-STS-2f-TOF-2f-App: - -$(RM) ./Application/User/STS/TOF/App/X-WL55_WLE5_53L0X.cyclo ./Application/User/STS/TOF/App/X-WL55_WLE5_53L0X.d ./Application/User/STS/TOF/App/X-WL55_WLE5_53L0X.o ./Application/User/STS/TOF/App/X-WL55_WLE5_53L0X.su ./Application/User/STS/TOF/App/app_tof.cyclo ./Application/User/STS/TOF/App/app_tof.d ./Application/User/STS/TOF/App/app_tof.o ./Application/User/STS/TOF/App/app_tof.su ./Application/User/STS/TOF/App/app_tof_peoplecount.cyclo ./Application/User/STS/TOF/App/app_tof_peoplecount.d ./Application/User/STS/TOF/App/app_tof_peoplecount.o ./Application/User/STS/TOF/App/app_tof_peoplecount.su ./Application/User/STS/TOF/App/app_tof_vl53l0x_range.cyclo ./Application/User/STS/TOF/App/app_tof_vl53l0x_range.d ./Application/User/STS/TOF/App/app_tof_vl53l0x_range.o ./Application/User/STS/TOF/App/app_tof_vl53l0x_range.su + -$(RM) ./Application/User/STS/TOF/App/app_tof.cyclo ./Application/User/STS/TOF/App/app_tof.d ./Application/User/STS/TOF/App/app_tof.o ./Application/User/STS/TOF/App/app_tof.su ./Application/User/STS/TOF/App/app_tof_peoplecount.cyclo ./Application/User/STS/TOF/App/app_tof_peoplecount.d ./Application/User/STS/TOF/App/app_tof_peoplecount.o ./Application/User/STS/TOF/App/app_tof_peoplecount.su .PHONY: clean-Application-2f-User-2f-STS-2f-TOF-2f-App diff --git a/STM32CubeIDE/Release/WLE5CC_NODE_STS.elf b/STM32CubeIDE/Release/WLE5CC_NODE_STS.elf index 812681e82ecd41f1fc14ab7c0bd4cb4aa7f4713a..1f831c7830ba4c04fd227486cbef91b4c9542dcb 100644 GIT binary patch delta 41847 zcma)_3tSZC8vo~A7FZPo1Qb+c0a3hzc!9hD!iwSr^L{&lm%`G*60@=vOVdtT+Gt~` zrKN?HCkzQqNjhm)JxSh6PkPeS)Liqza^3&$nVoT--OvB?`TwbL=KDO)`@Hve-gjnp zX3KBQ*5Ln$W{uM&OCL#+3fIQOMMVq~5^cT^NWqdMXrHJ4YmHc&A1#7+Eqy7-PGJsp zlPuq2`yShm*p6T$YyS5WWYwDd81^Tyjhf-!&ah*WT>@X$WLL4jsU6?K{x-I|*hF{9 z64+g`TOx6wJE92bxE+(}y8qvOj91twa1SQaGv)S|?2bH@8T>yZlKY0liOKSmkal8n zSrPsfi_6xwdfHFCUe+w~h7cRdYTEjmgd{h%pCe|>&O z4o8JW4v(HI9+d6TzlMc4es{$dgchXQg3f2yQfwiPUtRL!))et&*@xC~LbR6aWBLlI zEGf1qxWxyJ5xXj{SkffNC3#oxIa#J!%Pz_BX?;kx&pNT=$W<}k$MNqbl5MXK$TmCL zJL&k{`Y{eyk|o>6F|o-H((j$VIR2=~Z1Vxllcy!SlAD|@t!77$S}8Wf7KEdFPWm@q zmiVt{x@%M{PA{kDI)Wu&w?E9%Ww7TA>NR` z?YBUTlT-UY<=dvgWbH5S>K`7GXhZ2azONUti8gDD*>O-l(m%@ndY#xY#<3>t$W>F3 zSZ{W$s0)r0I}&Xufxbts`ed3NFVtCdNq-+$EUL5WOcvwKj`?-5wisJ8tB<3Vi~db_ z5&Pk&xr_cyRoNd$CKvsiq;eM=)!Cb9*F_aj(7&7L-x!yFsiRUlAep7?R@tE=P)KoA zSEV>9PQ+GSHTAB#YEG`Y>X+;@)9k2jpo+QTv}8-j)Cjf8E}&Y7<~He-e0q-s{?dFT zt29|kD=dGr)YldkE5!u)lmt7TtWUwA1xNGc#*{YxTkFZ?=W@H$zNX)50cIsdd$qyIeKvn_M-4*q>`a>uNAL;_D?xiM;fIQ1Pz3{(-o_G02ju=6|k$Y+px_ zeCUA~u|dB4K%AH@w-^v96ghrCl6_gD2?bTwD8+WQhS+=@OB%a^KW+>z4W@!iKqiMt z62&TN%{jvQwR5FJ?cMBn$z8CMeH`_BNbhvIYHAx@H4Bic^agjI_;w#@E;@-sjD%Jj zQCT>wa9Go2?LYa%fFOGdcv^=dC5;6(2lmoY;V^+d(f@#S;Jit)(s2@wi?!o!IKHTb zan)QrAhP`&JN8HiGRj>ZH_DRQP*dB(hZ?>h}66cfW>xj^Lt*a*FfJL4)Fy4Nx zp|{qXd>m~mB`ILHf4T1n-;aZ1gdFUc?R57vQz=U0K*!#~l32dH)NC`A1loceHySHz z0}}m4NOEwDX`|KVsyXkn+L~&L>Jy56OA{-}evG3uBe+~Hh`S>VmGgoeH=BZUM921p zlH(I+ki$8mE-*XD5mX?4RW-schw}IN=>yv4pT#n&5EcxsQbz*!D*1~ zKaEW7!eA+-Nt1&do%UPGT{Ugw34{8JWAf@jk-;WMqsteS>gV*$q+|K>L3v%iaUtD~ z?_HT`CdXm?+dVIZYO>H3En+Czm-nF|V*jE%WN`mxB`%ZWU)Xlb_QAu_JGy*!SZzLU z`Z%IpU2UmIlG%~w>}pF=j|MoKxx1SModaDixZI4g_(z?8&ii?3w}Y%rHUF0VhYS~O zkDZ8;KSZ2!))Ts8L^Ts6yFW9}3$u-beb z?>nuw&a-?S`E|XKY7@fkk`JWCr;c(7q;?=m$5oT+@@e;KhIEYjK+WYK$6d6D;Bvo_ zrWo?Drp^?T(cWsKYVbulMWy#h7HVJH*w6w4hM(ifMoQ?q27i@aRcUpD8ErJ{e#=`f zKc61i!s>F589|PA^49cl|6B|Zu9`V=W%@9&T=va~ZnvwBBt0AAt#=-gVofn0%=B@D z*TtikX39e{`o`5Zo__+puZ~hf(q3O6)tOS7rM$UK*i0zXUt}dCM%d)N8SMgIXz&|u z&K9wLj_dXE`Hc2rquiJ=q|32d$x0&|bstN)KN9LvqkXHMPE4)q+~c3CX01GD=-AH1 z`_#b!k(`G8c{Ply=5?*p*L;D3PYiMlmCp_B_E1a5|6FS4sh1ACjgC-^Eu}ngWZ)=j z&;PDZz`qCTrP$^rQ=7JyZN1Ql16HvVopJ8uSdfu@RO{$*xrE;DMp}?ej`7W z8E#kVV+zdZKkbl$;4~AC&hEpU$x8N?^1z&Si%s2psxdSp#CB)%Y@EPid>rE&Q9ZHf zZwq`JqZ?_6@^N#%kHc13i15^iO`7!}>LePw!}O^neyZFo-_8t;99`el7MBeTLR%ZV z+Pc`RIh3FAa&%U>eYh+AZ{gE^ctJt8;^whIj$zJ%g2>_ivCUCV=}ydGVx-sv+hc{d z3jG|H8>GFC!gaO2i9%jiYfhA8DK-eD;{$K;E(}4HQfz=$T2Zb)FJDCY2WY9?MJ0pd zZ?ONJj+2F@MY6D4y5XP|HnfT1uA2AuNDd!MVR;9%1S*QEhITk|XX}dw^(em$Dt>oE zYZT_0IzPu&^o!hGQf#Oe@r9UQl(0C-=I3~{o@&Qccm6V!9o5fxB+80CmG_f4ei<9(Cb4{dsjKGk`b2dQu#^Nj zK56iCWH$KPq=YA`O(m|H-tr3Dj%g?AMS`W8+ESmo=|f4G_Nik1GZn%^=d!Id-AKp z+KFKK!(ma8+mR}@H6dlYact6Rx=KDbtefe#O1XLV!1SudK=mB$lXL8{bl_*0UBx!7 zkFbb@F%HQTaKMz~qm|!BmCr)H3Y(?e&oR5Hc(0$MtGpsRJv6Jn0}`@Fo#(Yzo6sWp z*X-!PhjES$)0#n^>_0sEvD`*8ou$>r;A1tHQsZyw$kG~Wn6G5r4*w^y`S%r;t=MnD z7KY<^Y$+I>18x3lMw)8=Y)ahQ6?Nv5P2H`j=1Qe{RzNGkxaU|PuN@v98eAz7MYSpC z&SmQU$?!2;-a9;L=wA&pbENfDcjT%xE7mqW$FwfSmWZPNrC}*2SVq>lOq#lAJ?xhBEHrOwUON zQ#tm~uzu9p0w>WH$#!AMM+v`=?I5;G*!=nlOJ{87`bZY4-6PmHpz~Mvmn<|0 ztOiq8%HJYc^7~1aS5mQ>>`SXhAJGvFm%0^ovxV5!4wNh@G(6%s1mUQ0Z%xB$5!({T za(hCMK3=kz5`2$Z5=_-TIp{%!nEt2*_1FFgi)4MO+}9RhYmF*}?Ol#?=*wkS z0P3OCWkHvq5r3A$?z0+;nx>je`S!^8$Q%@0cNAJ7(!8=Xz$SGWdo&p#R>(=Ch6L}Z zmEr?$MN6xl(Ybz(E46a*sL`f|I{E0R4yNmMvSU=(6sfi32U2ltVXe_!I?1@Q!XDzd%4}1&aoCOXPZ$s z9*c#MQ?jC)#yT!bu|AL$FEBZrE_wEte~3Qv*JI*4U8~KonK5&t-gmRke`9iy)n-9e zIaY{{wWxwl{*tvJNp6|jx<`4FInL)JXzif>PAHmgV- zehvg9NQ68#SN5ke7LHHkYq`6^yP~*)%cYKMN(aWqU=l}J50ZC{J=JD=ZLl`zOs%u- z4a`o9or{h;Retxuc4C#h@4>jhXZK1@ABz~ChF-ByzV={}m>@@u>mdfqIpdxWOoV4D zBx=SF$|uG}i&x~kxX&X%|+@Sw{-rxFYKw#DsMZv0G=V{PUfIxz-1>YLo9 zR}5bdBV1y+6u-T6No*IJZ;5$5DyLyw+-hfV;+Q+-PwjNJN)({5#3obCyK=LM@#3)D zYvSuk%bKFHi*bSsbi9uFxOqq0>_A7cD`G?!8+DA0b@4cvQNvb~lS^ySn-kjzoINJR zgs(xQ6!`*dU*q@zRO9>dph<1o3~DGwGCo2JPH8YZ?4~4JL`k5dkNnuA`2qf}*0B*g zUO_z0Ci&u|B}sSdq}cgd3GHmefScD;bFEIqy>vTtrK{#T)-eBS`rl=#qoriE(~9Zx zL-N|mIig5DH#t%y$TgE+YO%)Ux52WbRZ2@osJwhi7ZD(TIwiIB?K%t2@e3OgY~5om zJ0z#b33Oa*l$)ls9dH(@y``l-G*wt$L=JMXmtqFSt{r7r+pMIe<9juDE`nQQ1Fzxw zkLsXG9yfJR|NOdVwNm?_G1eBbV-a$rG!~7BvGu>a**P;YwcGzrKZW@aR&$P=x&;`@ z>BuI3J9UN_E5}buYLVTTolRXZ(2*+VPb+V6r6B?wu_MrNMvj^Olz6sm{q#^FLggJZ zW(96;u*VBdWfjF7Q?dlkNdi zHD`zW9`bTbX1JInM?MtYf}Ca5k(&T{=tEP2!t1&%PFd-9%_lVSImyu^fAvtf$ftkX z3~q=k@X3tJ)Ahlzk^R29~F($M|4M3C<_f9dA5=4X77tiDduO_BI?R@G+- z2cEVq%eq(HY_ZQZ5&A1eo_!hX4&bU+oYZw;^{f#g1#e}f9i2J6S%K&haNw=>k+$EQ z#rCD4d8cv0^yzl?fJpuhM^kdZxorz3=d>$mJ2cH97n^&;R!_{CH0GGoyyXi-Kc)Ju z0-r9=RG%&|B`m6baCmHCi-MVjA{iwshuFrT%N95XtQ?&!k~e-fpmJHhAsHubTv_tTJ}@oAo}7nne7QN&Y-;u3%0-v`uSqTYIy)3gw_Jn2%%t3RD6aZ! zty4PhbFF2EcbwvUVb=9y7T8O{%{!+p7AYttDc%`e_4wuHorQJM&?}d_sCoVIXs2wc zV2Xs5!U2)=%H=O^nS!F#q_?j=<_uV~7g=fZaCNMn{sArWa#7P5u8{+a^SPB+Cm{!2 zY|j-7$B&Kea*&HP@8A^ME+@8-maQ`j0~~i;`&N?GzT&l)Tjq#CL!I%#uV1FN{5Qs? zJhWkIuOV{k>~7t+(rASR&=N@Z;rJvrx_Gmqsp_+cU8Wo<_9bU`EXb(^%O$fjg)HBg z-KO{V4N{L&Y7_It91-UgtPNvre(D(|z_HjxlH_8m?It=BMY?~0+;7g$raJ@5nm_!7 zDcIFydH)zLf7aK`b~V&=tdoxyEQ#OS)B@4f*F?MgY?V&46lANf`LxMoYk?_3s;!}B zkh7uYm|Qfszv=7%`CoJ2M*kZA=tJQ(wX{ks9!uAJg=1kI^?)04<)dR$4`Ss)i!iHA zI5O&DAm69jx+STq3!_XyCmVfjaRnO-ruknx(NOb~eD%qvQLOn-MT?i@rB77{x7GB& z`d@-Rv{9b9@H4n5YhBb)h)(i=MbW0#4Q108J?o3x4X2*#5;(M0YFCnR@0j^KN~tVx z$)`SH<`LBeBEwQ{I(js(p=MwcT~d(`+pmbra(Qu&prcKGwr&L*=Wg_S?|6O9_wudc zQQ|#$$kO5BdHI#4Z;3=X?!{rIfF^m~i)pxmzw^Zk+{KvlQa2%L%hoO%=7VX_nH5oO zZ1u(MObLIT@v;7miq0J2~*w`FwqiZ(S7}mcilcm)jP^I)tfhUVTkntv@b> zWi?3&dym%F+?F^0b4buJRTcr+`s(_c!}7I%_6pgp%4!>>gdukpeOh1hiQMhg^uSjk zO)i+~>x-N&m!EkxF6b#$GR@b1_W@YVlRtj7SKslqezsFc)!Y6Nup3qT64G?Z$>K{cBG;*CY-_D1X~G zI70wx&@wcR<%pZx^?F0AN4iW z@`Y6~fmN#H-kH6Sd?5#|juIcsJyypAz6~#B8TZb}kgt=ct&SGUvX5ou6e?}GZSDn(V2$hpU#ZIajt6hQA6Thx*Xg(r@Ej;+OfR3m+NbW%8jd6 z;99<)ZC}B!K9R@kYHH=RuZ4&F<)Tvbarpauobl_?x|%=air2aXRm1L-(~@+?#}}4A z$Twe$3EZoO-Ka{+5EY`?9)aLBIUr%S)ymzxXl}d*eTz9XCE#XfBfzV+_YG_ zB^gta@-22#POaRqb+Ei}>&xOwS^d^?BC^&s=JMNfGaMGv+xhd*HJV(mn^LiqwxI0R z`>zVoS$=+d8!@PC{q_MuJS|s$5Gfv&uYK^9$uUs=*N10CgZygAcCkZF+VO-bw4v<1 z9X1gt-jFOiWXZB%jbs@l-~H$%-{3(QtL5iEo+EP0e*d_KIja|z+g-2?`oC<`-u0Bn zF&he_Z$rx_ls;xMg*TP``?HsYh>(ZxexiBcX2}xVLb6`nEdP7=qS&H$Bumj&EbF&R zmJl3YX)amkUX(0pFgdpgH*zh!Os;or?)of2!xivBGN?3x|?U1VJ?mn@;5Bd!X`l8UVY z+c|7Q_ehqD^kD~hA0Q9A{yPgv zFAKlmPrIn!T|TtC+|9@I@u0F1f7Z1?fUJAtnk^nIER(UVDcgE)m}oW%hl8+X$+v1k zeO0C0%z0as$c@g+%~V6AV6l9o_SbMqOJ=lWC9CCGLdwE^RN1+@AQ4C^5~o2uxvaK+ zD8)X=RVMrz(KspxmERK&o7 z@KKEI-NDK~{6$;SzQGmG`in(oAyr^<`L(H;l#Y2q8aAb}rHB@Z73W%tcEWe@P>3oT zgT!yBtcr6XVxMR}JwsUD#&$ZR;=NGO(M{BhOCJ1AdZ>b$4aABOcR?cro@QL!qhNS$%qqw_^v{h^D26D6hE0n zh|<_evuQ$+Dso*r+p!@QAC&_v(7T1H6`F+KQB0vf6Ctfuj&Qjj%Ckn;DiqQVz zh!Ba&g%pHLRC=VsPogpz9Wqz7SHe)sHANOu*ot=Q&ci^ujnwzb%ju=T|@9NX327*Ft+ z$NJuq$+EQKP=VRs5P zWcSw@FvIL^!%{!l+0x4`kJ zp%0E9isJzFI43I?$ARwS#2GklNyq8q)Z-vJ9z8DcQOJXFJT>dVF$=NKd@z5uGHbk8 zYv17~Ec1PZWxGGF{bOGlEG%mwyBdhAxd9kI%)(OJN?1}ugynh2=fEZ$`x_Jn+eU1g zVe=L?1;;YBLGU#f+bcK@4-=L~=ni4K6pCy5*w1Z_t0B-Q#fs*Z{;`MBW;IMA}E`TR_=XCKQMa!aW#7bw+>MRXR0OW|Adb0905|Px$Qz)e{CMTJU z$w{^n|D5QhbbL+(2cBoT9cn}GafOK}crYe7*x}DTU|1PfDCsYVFm6F1x+^E16VdiW zW=Qe&@#1VRp3L}X)X)@gm>R9S-4-xC`J2a>qFu}w`rgtKCLn`VjLE?o#-!h*Y+r(O zZ}AdWF{WVOF{WV08I%4rW71z_O!_N~NuQ|AG_?Ybl~S013}!PX2L(#j^I}YTm6!NC zFaFz$os7wCm~!`d(JLyE4SyugWb9Cz#Mp==qY047LdKM!C5%a*g849Z_;WXzY{sNt zqHKRb3`r{X60c!QZr3rUU}u$ZyNC|C;w82ySrFTUF@b{-{@l$ag)w;>$e6rMXH5Fp zj7h(kG3kpLlfKlGmEY}n)~`_UEk>E{XF3Y|1LF`SrdWig|I9?~F;%0vs0pU}dHFcg zAH{T?=BPBA*T=WB%JyOr9eAFZ{iUph$W9SnXX1hIPBY$)EHs|szh78nAIx|J?CIf& zOlF_W^i!ax2PkKA4_g)7Y*~E5@?`&%uDE;uNEvz3EK<8uT;`=fm+brl$n1 zV!R#p^i)Wi=8tOQ;C;RF*HY2ie)v9{r0-!*PnFQ(MlZh8Oi%vLGX53z^fU^$zryrt z0W-bl=iIyh38mpL|{2pYS0DF4UWs@4(-Kx_R z-^Ni=go)$@X zZsxw*Tx~H$60)Dpcq!~@u|=x~Eg3VVLS{e#7BgOp0MCH?7y+bhOi%WoFn$;Iw1V5s z><21Y%aG4JEcPH(6=g7^#b1I-?owOE^yGFWi>cqR!u{JG04m@(;#8B<(q7?a*I$TNI<#y#Mf7PL;)yPDSr zB_}iJM^WQh4tL-5Q7bKMu;Gv*$Yo3kn9i8=%apszvFetTOD~IFA*;N!o0Rw!7>BlS zv68+5lhxTPgf+i}$!Ynq15An0$AK!Qr^u{BjKoo55*U+yHe=GyQ%XlAj-fO znRbOLN-AL@a$rvLj39t9>9dvPE5#7|cqZP3LYx5R185=BQ#uwiCN~=xlYR?h(w}Bb z`iq`ym##1Y1z4EwneJl7q+iFF9ByJv`l<}i@W&aG{w(82$&Rsr3CQ3IV~XH9V>N=I zo)KJRO!_5Rp89Q!Nq?MiB+dKIG65M_l?ne8(fI?18GcB7hcTrqHrrF5;>FSkLr?bI z8I!-o%87r9cSDAcx{8Q$%|h zQ~3R!Y?r1^^o*d`i?>bk)aOn%m?GG~m?GHX#b0{yX~vVJhcLgMVmKrReHc>&(;08T zMb)#o_Q}V~Jf^4cc;w>#fd0O+;589yKgdKh${hmpQSL0$mm`XE-~_nRPuJ2^!zD#w zW=u((Jk3*I;K`xVJSLz3-%V3qUL!`^k9)}-j47f!j4533bkB&w7?ZvaV+x)12+6`4d7a6laVOvgm^rsn<-pP1gb4j`VBrXs&FkvyOrV*^qcgacOBSyMkgFXp7 z5^{ZDC}euFU&5FoO)D_MlRl3z^#70?Oh5(!b3FsB^Wr8iE_l?irwA>N8T_fcpu?Ex z5b_WX=9B3(rl%xiGA5UKj7eX>nDk2+lfIZS^s&-$CLn{ejLAW!QvRmsHE85KBk3fb z%~*|>G3gr^-*RWwJm1sB_{R+<7tNCAK*Ndlm@jS-x*HS8G0zYMK5zal! zn5Zr8{VfOUYcNXF7N+k4{Z?>y$n_@n9n+KjVa5Yte}q_DTB`a&BTu<4FjG7N!D!7P z8MIws7(4+7?Z6|Lem2v;2K^lH8m7O)^gE%y3m(t(*-sk&BXOfwy3Pbt>R}7H0j4yJ zNuOC{=)Y47F)EvhC=crx|E8J@I?qJpu;$TerghfUyx7}5h$V6l^kTJPPV@&#y zj7gu%nDomSlYR|j(pNEV9)N4si!da8$AlelDdKyueno$ z8|QPL4$MmoCI=1A8%z$&FBq&Q&~7m44>BhGdB&u_$as?hMWE*30S;Cm~*Old)Mf9NHmkm#37UspRy|^Re_G--bK1`I1XD<4JX*sKp zx0y^&QDigDh5c|Z`^ijC_R|?t%9k*P-Yyk00U2~(;hCot#-!iCm?GH1nDpkAp5X%+ zlRlfVdgUOO3CLg>V~Sv<7uR`l;VYgIp7&zgKRxyTf`VcUG^weqspJMe21g zb_`S|z9%}^9ZWt2IlBeUghRbCcHem4vGf%5>chLx3!Fcwq%HI?uf~+IKFprDpBJZi z@@VM+Pl5D}7ys?Wy*C*Nq6nU3yjsbBPlU$qW}>%{#&U21O!YjS-lQygUv!8)%j~{| z9X$iAUrM1uy}n8L{C&|g;|{aC1iQOlcIM5VNeW<0evWTeI&Bk!)312R1K#lr7tDAO z1{Zopc{WRTfwFy@h>l&z%zEO9I(n>`j~`X;?DXnw zV0wffDh0e}IHU+t7*hlTy?8ofvcL1b^703wLrB;*Pd^1p`3JZ`w!}+(k+Bcb_lj~C zX7=Fio}s%lrd0ItVw)FFW=yGC#+bsdWK8;z9~kjLA1W0x0T~?sK>6T9(G+`{$#rFEgg}rF~?CC;fQFq%Zi`Q(wsV;b2@$SO5VpkcG^E94uCre`6T5Q(qcae@ezm8d=zf~iD&V2WZWi1lH$QB%>QIV z@4oLp-4IA!5nu+GpY(%wdPZPnoC*6FFi%h#(^Cer8Bc&c{g%RQ-`_nADPRT^ppfyy z2tYr=7|C)_s)X;v{mcE#Y^fr4;t_x6PG#awG)c?9j3jS@hh|_0nuuP;M@tPo#pq=G zA?$0x(^-t!yFBg3GoC#Ww;I8x4g21b^)t@^-5DQ11U`$02 z2WK08rTt7#=|0TZj1@iojD_0=>^A(7eHi1mu&1BAB-$f#uVKq#-!h-vvLIP?R#{D zLo(m0AC_*pt5GM}tXU#hCOL z8AETE3Jx0q$YA<^3?>H!j7eX0)Kh<$G3g(uHuS3f&jypf7{2(`jw0+f;EgufAFO8=4axCkYOxgWQWH@%P=q=XXgJ=lFD$!x%8B0jGuY&ZZH1a zi}!f(elPygi>o}@F8$k6AbsP-KX~zfy!dA?KIz4$z4#Xo##;KUhX7any!fIQU-9BU zz4$LLc6jmMoTE`W_qYID$5_cL6IStGwXQ;>(?(rUZAU0s!VN7}}W72nIO!|S0p|?wEOh5*+8Iyx~j7eY2nDomSll}^0(qCsx`Ub`gt;~}2 z@gU{l&qdD|=@%ns?L%>H0QW%veGpGn%0EYe^ran6Wn6V){MpPC~IxQgl33^G;|!dT59W6~dIO!_N~p+^;Z3Z%sU z8VRBRnT*L{He=FnVodrij7dN5H^U$43mH$6;v}inc~67ZjLAW^a(AzY&d6nA^0R?4 znH^_L`qPX_fAoSf@e9#2>i7lE=nDU5@M&e~=eUpG>32g!u3lq&T{Q_QxM-M=_l3&c zFYpth#a`kKjLFj`#uV%mC2ODPm0!xlWVXkPfAHetUi@D#{>zJL?RDgEkQ_xlR`(l6k3-T|gxw(Cr8sxBMpCO3}D%E?L$3r;V2$rZzn!tG{E;i?#u zKH#chPx^t3NuS18O+I7j?b0?TAcG};8Vw~mbj?#=%9!-+Z+PmhUOdr*F`Jpr z1Zo6~DFIu&cpGD~zxbDDgm)OL{%(5ew=kZB_@%>4KoK7G;*kzd2WuEp1lt%_qw48> z1!<5|ldA<+GA4U^!vS{qYauC)10t+9HA=U{{rFf3`ynZX_|dD<4_{IGRiW{G!eXYB z``z+PX@nP#@Zy)fc$*hrXH4lRz3t)OE*3Klft4yPp0M zJs6dD(L;cf&^^xp?|Jbjj446iF;?rIG3hNehQGvcoK;a%5s*{eMkeAQj2TdX?p{m* zAjY4MG*n5i5}|_%~*OIMHdOVT9_!zNyv_O-8adgI|Ozeb&;U&d|?9;XGrFu)fVZRXe>N_%UO-Icpu!QMh-%~1RG6Fn70n(67Ex@XX7KGwl zrS$z8CnfqtIbClOl3AT_t@ARgVmvNElGcN%;PtE?WctmB`4ISFrtj`DQn~~B9^jRl z9?7svpD=^ZU_dVdp|aBRzMJW(x_07pzBzgmlRnx1bs)T=w4pzv_Vqvzx%WNgnQ|i|+?gx8%^#zZ19n)t+ zzurr~f$3+rMhBx8Z*T{jn8D+4KriRu`YlZV4D|Fuj#!rOgG~Pt^z`BmepkTB^lArd zU;+gJ=xraoM^46DK;U1Ef=XaE;}2j@Zxq2jk^2QdkLk;xr?->vdn(JA{@->OOwDxX zP#;oOGK0g=(`!idr!y!4Z!rCD(9|-owHpyw3Eg(9^qD65RgmYR?JA+b_VXh#ZD79)%Q7t$n<2tgz*^I(~Dj(wYs07HB3JhdU`<&3I=++yU&#{gNI>2Zpi7wXbB{q=hUx1$8Ak$sbPr^Qr>0gHaI$o%V^Pwb^oj(ZwxdlwEKus^7 z(Jv$H1k=lH_HhcW5D)LA+AgNU>5gG+jU&0=<=DA;1;kb*=oCYR&! z&KvCT=Pt1V#>e1~-id?PM5-l1_9OA`9o1a3&okIAT|)qRInPQK;3!_$!vkDl+yHxe zq0e!a;B9!(54YdXI1rOCdJ)jGFwmR#{87nyzx^z;@XeTqWi1Mr3+Jv^0s z7~^RX(sYSlLG&HV`9Nks0Y)+=hb3s7+~HZqq`zXY^7`*0Tv>QTjVF}Ydg#U+f%{vu3_fAJ z2SalEEWGv@a{a_s%JgKPpqx04x1_aK?j9FU*b`%oG_>KNwdlw~pYs&^#vk9VL(t&O=`4q(nL1AFE6}i77%Av-3q}zXHSj zzTI)Ar?NQBI2eL6UiR0Sp6nfrDc-O+qimxh@pHbDA|!QnM{)n*HVV{{8Bw6_j7guU zvr>6d#PuBt*&v8kLZ#<#k8T191v$u=Tox8t)z8KKmj%=eSgJSETD^LxM0SV{9MKqY&>Jq zZ(~gQ62_$8)79`#d@)I9AE{+qN%1)=LRua5GCJE;>2wyI>!O!DteYNKn^`g@=Lw7{ zG2I!HKASP=M=~b;Y{t;zDH|prgH4Rd!4}4(zr&dH4U9=|?e3X@j*Lm4!Z;E?QUq``r4>F zbMB=ReQ=Sp`td|n;MQxO41`2wyF_2);{oVvT%75{cAV)$cAV)WbDZfzah&P1W}NA( zQ3iKJ2lo(2(nntWb3f(H^XQB8-e4mjCPn={nLa_q_4MH=&h#lK&h!~3&h&*O&h*_O z#!B)9k(8l+%0rd9i<7>)!HgvOkPT=0Fb(JZ1C-A%hz_mjT^d||XMpkta9c0bXS=(-BspHccD4c-EPkG zB6QCCJlQVME1$W6df!GBxJzEWufsXr%Ra-C>5b{!pJ}KkH+V1}g9-7vC^1zj{~edu z>DB1m54};H^HDE8oaL#f_kHX3$>`AZee?hbT4ChN29HwuUPLr_8@c+>Fo}yHruTMO zVHSdZ`x=;DuT570N&g`j@7cQV<|}X(+|rd_(jNsEee8bs1@R4VzEX~8OgEyHlNUvY zq(ByY48qad!SUp-8hj>r#^d+`fyPgQBbE3|7`@KTFjDa;#MKCft3_(CDsb5;gU^C* zVKUiA(>ur>H?)^%>>q`jd*j_dYNAvogHL1_g)9cx`7qQLQxlL$tH+z-o{#D3j?KsOE#M8eazou5>@kO!_A9^N-+j zi<-Vg2Rwz2EYKx)(zgS@)y4>)1fFuz{YwDS=YW0jm5f@btSxE#0DCu&>{-i!R`)$uKO2PQcQxPD0CPm>;r(Dm2AgOUw@HQ;(y z55dvWOzDu_{j+Ft5Fd>MpdzW_V!gQ@u^^`619Qeq9*q}7>td_+x~=`cY%YIIal%M*Hwhmo91bVPdqJI&T7FN zV0tY--I}0WH;YBnR?5|2Sh3JbfW$)}Zi5wu-WJA!Lzdxp8d_{~z{3^aKQVFVP39el z=cADIhF$^wn&skaaA2DIXA>07F|a=#;n3Ucb?`KV*VzUB3eO+ur5=HY^q%)IlG!f~ zrLq~FLeI_!7)+sgnwHL7aG`SIPyFJo5`6)`gH*FOAL3UIV$AVz^Gm8(_%+mhd{1M5 zJOFW$l64L5spPo~M4R1==Row4r5E^iqS5ekz;nU+aQ-kjA3amg#S7qPltYNEclcnV zFb+c;IM;pep9<$3I0pTxpO$DRc<(8t^>xu9!*{;>CoN=`9gjN=tS3wd|B6+a9_|tF z4Lshfm(f!2?NiDk__5Pj3}v7Wr2m5a6OE*%(Hz8d=q7@cbKc-c=**@WMC)! zCgvzg&*UytD|iA*bDidI(O{f@dPwSBFG_cpPN<74G-17*PIi%`UP}B8G~v4sx!+?+ zb~E881dB#JKl8!#PI78wbOLw*yj3Yeu#moZ2v{FKDztI@g>LH$m($XUh z>5S76PB&I9l|8|iSd$$Brk7`>X|at0k5c0Q!pq#Zqvd96!M=mI9OHrR_J81bW&K}R zWDHlz|3W{}9}A%@{R4@#APZ*A=`-L*aJg77+Bd;BarKb&WM2wi+EubF)ObI5b2|Ek z*39v?c`0=Te*L5AuYq&W4Rn8X36e7FridB)J(^`#&8R1ed*|E6SuO)icVJdQPvx2o zKEg_38u;pFqkx~J@XCps=vznLF>?MT#B;IS)LZ+1!0}4B1G9{4r<8sU{3dk{S{WL% znzg=2&MsvR)FMk+PP;&5JMGRWhp-FbE$|#{=PGv{D9u5`+`o0A(n;tB7kQGUR4a|a z;HBv81GOk7fnQ`kfoME>_-WudY&3oX z{G((P>1*9FFCAoZ-_xfYd;o(5O5eXlbo!All3If#J_hk1c2dGS+@-OT-M>O3eFJy` z3TC{PkLEpSLb(2Kyga)Gr((VJJp%DvObif0Eib&aUAn+#WN(1=&uj!se$p0jyb^yK zr_6XXLfy@e5a;8BYt>>q2VQ|L)IsBWV0?_&vR~ttxXko5O9o!(h>)jp*sE?neeAhc=*kHX-q7u`Q^r0g#N`yzloFunrj&Fww#U37o|E&M)k z^*yEa9SofKl+FEOy90SRW^yPVb>h^j7iJPD=IL6vZs4dnXm48k90sOO<>-F%z&ze3 zz-8zn=)`JyzX)D{(LryoCB2aNK}z`@6z~*nnL+vaAMCE;?7Be z!gLaR?lJdoVyVKffG@C`X^t5WPec@W0BUlT=5J^}{5oJYPGowEnE-9Ejdm-lDe+CPTp?d6pfU)ptK>MRl zHc=viQFXDYl2m~iL9P~QHh9!LBiLl{aI`=DTv$YUmWkKEJ=n_QBXB93b>ao48a@ELUXM>T#6ydG;7oj(L0(#A?^(&gYT82U0b`|ln=ziC9jnZahe zH(@jb=TH4S(*)i+*_apv55Rd04NcE{Jb1w@BT>oVW^5rc9Q-S5K@Wp@VHXX+?Vcti z;zw5T>tQqqbFc_4rMtmv(Tq^vYRMb{`@SHlk84rRE`XOJ(R(!gEpT6~&-F~S9Ei!r z7NfIv1h2*Ab_G9pTWxESYh431qSKNd6E%XB2uMbv;$;u^| zCDG>s^?@N3;`!5zGt?OHT(I6AW`c9p_ccYwoME-Touq6HR1V&`zQ`1v#M{DoNVi|b z3oEpg-yz0{C0FZLErvj`{*Wo!^wqEH|1fnB?eHk8sn^g{Rx7Ju6S)xMycXtt@Cl^P zs`=ar=5c-n{?R2VPYY92Tq>LAH$ky{G&-$T4;|95sDxn!3{7|cQcem}hjjYTqJG+X z5e8#Xpv|?I-T+s&7wTIhsF7|5?_y))esH+b*M#g`=&npOnL5~0G3w~F$t$6D^jS=?^H}rh1*-}p^}6p z;{CZsEI1uaY_{fR7?_u09(ab5Wi~~JpXQF_F z67Oq@?k&v5q;?bRZn9kN1g}N%^&wy%_!6!%`J&HYvVh?BS`4>(SAQT2V?3@{%+sPB z2_B0%hd#lY0>-y3?~jay;8)O6&>+-gz7Fnzd8Sq49pFHON35#;3$S?CsH-2c@J_8U z+8LMX`~(cP!ohScz$GxRl{?@GSRCql$%alHp)B%4pSkdg`xiXqClT_u&`0z}kq&Oa zqRb4xH2t0c{tDy1-UssHa1}4r=;Qx@ehyp2%?9s97l_r;wFKN3^`Xy9|7pX;hf!>7 z-3WvCan7)40d|9*$7<=Y#)rVe(OE`n{68>##5F);X&7eS8SZbSP=-2yw_=s2m*imZ z3A}V;nUA|<#}0$Wx3e+9dI$!0*>G0?ehDqGlNLb{xbGCBDprBNl9ZGFrVb%dCZh_! zh5WYSYe7HY6%mk)(N*aSvHiw5$$~zoR&XlB(^xT#1=BZau~YRA;efk&0(=X_kf!Nh z2KU9-NA*P6mce&$H+CAB>TMTz*ERQ7gGm2vHp;!mC0S-_0e*u)J*G;FGKmRUHT04gQ|?49+^5h7V#clWH{iKSRtps8Q=5!-<%fPY11E_zEm#zIHSR68 z)i@FSBPKU`Ee!=%&NQxej|PuY%Hh_Yh32g{&qXBGhA+AZv7FqXa&`Sy@GhK+_0)Y1 z_Q9E7Z=EN=V_7n8fv4aGkA6R@2|O3$v!45)QMib)3lRor>25ztk}k9Hz6ZF6QWSvG z!mcRy4J?MTDy9Euh%r6WvppIdu1p9t(PiTz+Kp1yW0!vjJ?A^k*ZVL^!c<<*TO~MsmHYRm zl;&gLL+1>=13VlpBUcMw56*hbI3)&*p|wJ?Ic+PGXf1L8;}JO~quQN{Rrn%2)hg}Co*Be`FKS75l&lT!_TrGrtb zSHNpe8s`aVtY-@i1>a)X?GFBmwT!W2sfD2j7i-CV2nL66Che;6Q{ef^r69Dh@NLF; z^*+Q|I6>+Yo?YNZ=JyD=wzbkP7^jyQ3>bP-!L>?stU1A^USfx`KG+of;QBu?DrmW% z2u=A1zxolSp%wmm@NirM)~8V=;Ga$@ej%m~rixQarx4R%JAF=F@Alos z;b{bn{ts)J%K%TSkt`=Qeh_>Ynb%8u9=M22rB{H5zGXD7_23g1+~2;VHoOze(_1wT zXSKbU%OAx+Lk2&=AW69!f=0XaW8?mCi}ARKh?BEE99h8+vD0dAFn#f|JJLyKwV~ih zT;uAkrF$Cq5}uCiqw#z&Plp|x^{QlfT+^=~kC%Eb_`s;nkI4a^rEO*EFt!K96VvHWVvo~>t6@&Q05?5NIJVVg|9f#oe_xb^t@Rsc%#y|3~?XHUFz7V!<>Q)uqo$ zH^P7y_ipfxJfnIKfuC3AgdsbxV6O6{=BEMTyA|uhOtbykk6%1~?)*7VN>hp+FL>g~ z$H$EyH!1(IITH%U&B}kgBD|gHr?DbMxirrd-HcwtUzjfNmioZ?rf6UKNphl+G~a}w zR+%v0)Y+GA0$G%$BneiwlY|~)3|6Wk@uepm!|1S0MeyUM?jm0L7Zo|4ME9p3HPdx8 e`kFaCkZAm^QSzTKb&lBd7)EJBN_Y3wzyAYlceZT+ delta 42110 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 diff --git a/STM32CubeIDE/Release/makefile b/STM32CubeIDE/Release/makefile index db0fb8f..db9d122 100644 --- a/STM32CubeIDE/Release/makefile +++ b/STM32CubeIDE/Release/makefile @@ -14,9 +14,6 @@ RM := rm -rf -include Middlewares/LoRaWAN/subdir.mk -include Drivers/STM32WLxx_HAL_Driver/subdir.mk -include Drivers/CMSIS/subdir.mk --include Drivers/BSP/STM32WLxx_Nucleo/subdir.mk --include Drivers/BSP/Components/subdir.mk --include Drivers/BSP/53L8A1/subdir.mk -include Application/User/Startup/subdir.mk -include Application/User/STS/TOF/vl53l1x_uld/subdir.mk -include Application/User/STS/TOF/Target/subdir.mk diff --git a/STM32CubeIDE/Release/sources.mk b/STM32CubeIDE/Release/sources.mk index cfb8dcf..709eaad 100644 --- a/STM32CubeIDE/Release/sources.mk +++ b/STM32CubeIDE/Release/sources.mk @@ -30,9 +30,6 @@ Application/User/STS/TOF/App \ Application/User/STS/TOF/Target \ Application/User/STS/TOF/vl53l1x_uld \ Application/User/Startup \ -Drivers/BSP/53L8A1 \ -Drivers/BSP/Components \ -Drivers/BSP/STM32WLxx_Nucleo \ Drivers/CMSIS \ Drivers/STM32WLxx_HAL_Driver \ Middlewares/LoRaWAN \ diff --git a/STS/TOF/App/app_tof_peoplecount.c b/STS/TOF/App/app_tof_peoplecount.c index b51bd60..991ab2b 100644 --- a/STS/TOF/App/app_tof_peoplecount.c +++ b/STS/TOF/App/app_tof_peoplecount.c @@ -624,11 +624,12 @@ void STS_TOF_VL53LX_PeopleCounting_Process_Start(void) //APP_LOG(TS_OFF, VLEVEL_M,"############### TOF VL53LX_ PEOPLE COUNTING SUB-PROCESS \r\n"); { + uint8_t status =0; status = sts_tof_vl53lx_peoplecount_start(); if (status !=0) { sts_people_count_sensor_data.Count_Valid = 0; - APP_LOG(TS_OFF, VLEVEL_M,"# Counting time out... \r\n"); + //APP_LOG(TS_OFF, VLEVEL_M,"# Counting time out... \r\n"); } } @@ -752,11 +753,11 @@ int sts_tof_vl53lx_peoplecount_init(void) // Those basic I2C read functions can be used to check your own I2C functions */ status = VL53L1_RdByte(dev, 0x010F, &byteData); - APP_LOG(TS_OFF, VLEVEL_H,"VL53L1X Model_ID: %X\n", byteData); + APP_LOG(TS_OFF, VLEVEL_M,"VL53L1X Model_ID: %X\n", byteData); status = VL53L1_RdByte(dev, 0x0110, &byteData); - APP_LOG(TS_OFF, VLEVEL_H,"VL53L1X Module_Type: %X\n", byteData); + APP_LOG(TS_OFF, VLEVEL_M,"VL53L1X Module_Type: %X\n", byteData); status = VL53L1_RdWord(dev, 0x010F, &wordData); - APP_LOG(TS_OFF, VLEVEL_H,"VL53L1X: %X\n", wordData); + APP_LOG(TS_OFF, VLEVEL_M,"VL53L1X: %X\n", wordData); sensor_id = wordData; wordData = 0; while (sensorState == 0) { @@ -768,7 +769,7 @@ int sts_tof_vl53lx_peoplecount_init(void) return status; } } - APP_LOG(TS_OFF, VLEVEL_H,"\nChip booted\n\n"); + APP_LOG(TS_OFF, VLEVEL_M,"\nChip booted\n\n"); /* Initialize and configure the device according to people counting need */ status = VL53L1X_SensorInit(dev); @@ -806,6 +807,7 @@ int sts_tof_vl53lx_peoplecount_start(void) uint16_t Distance, Signal; uint8_t RangeStatus; uint8_t dataReady; + uint8_t status =0; //char DisplayStr[5]; /* read and display data */ @@ -817,6 +819,7 @@ int sts_tof_vl53lx_peoplecount_start(void) if (wordData > 30) return -1; // 50 ms timer, so make this 60% to fail back } dataReady = 0; + status = 0; wordData =0; status += VL53L1X_GetRangeStatus(dev, &RangeStatus); status += VL53L1X_GetDistance(dev, &Distance); status += VL53L1X_GetSignalPerSpad(dev, &Signal);