From ae065c0ff8287b8655a60efc28e470cdd0329bc5 Mon Sep 17 00:00:00 2001 From: YunHorn Technology Date: Fri, 22 Nov 2024 18:15:31 +0800 Subject: [PATCH] initial all build without error and boot up success --- Core/Inc/main.h | 63 +++++++++++---- Core/Inc/stm32wlxx_hal_conf.h | 2 +- Core/Src/dma.c | 11 ++- Core/Src/gpio.c | 75 +++++++++++++++--- Core/Src/main.c | 2 + Core/Src/stm32wlxx_it.c | 39 ++++++++- LoRaWAN/App/lora_app.c | 10 +++ STM32CubeIDE/.project | 15 ++++ .../Release/Application/User/Core/subdir.mk | 7 +- .../Drivers/STM32WLxx_HAL_Driver/subdir.mk | 12 ++- STM32CubeIDE/Release/WLE5CC_NODE_STS.elf | Bin 275772 -> 276292 bytes 11 files changed, 202 insertions(+), 34 deletions(-) diff --git a/Core/Inc/main.h b/Core/Inc/main.h index 56a6224..2d0628f 100644 --- a/Core/Inc/main.h +++ b/Core/Inc/main.h @@ -64,11 +64,17 @@ void Error_Handler(void); #define LED1_Pin GPIO_PIN_15 #define LED1_GPIO_Port GPIOB #endif -#define LED2_Pin GPIO_PIN_9 -#define LED2_GPIO_Port GPIOB -#define BUT1_Pin GPIO_PIN_0 -#define BUT1_GPIO_Port GPIOA -#define BUT1_EXTI_IRQn EXTI0_IRQn + +#define LED2_Pin GPIO_PIN_7 +#define LED2_GPIO_Port GPIOB + +#define BUT1_Pin GPIO_PIN_0 +#define BUT1_GPIO_Port GPIOA +#define BUT1_EXTI_IRQn EXTI0_IRQn +#define BUT2_Pin GPIO_PIN_1 +#define BUT2_GPIO_Port GPIOA +#define BUT2_EXTI_IRQn EXTI1_IRQn + #define PROB2_Pin GPIO_PIN_13 #define PROB2_GPIO_Port GPIOB @@ -78,20 +84,26 @@ void Error_Handler(void); #if 0 #define BUT3_Pin GPIO_PIN_6 #define BUT3_GPIO_Port GPIOC -#endif #define BUT3_EXTI_IRQn EXTI9_5_IRQn -#define BUT2_Pin GPIO_PIN_1 -#define BUT2_GPIO_Port GPIOA -#define BUT2_EXTI_IRQn EXTI1_IRQn #define LED3_Pin GPIO_PIN_11 #define LED3_GPIO_Port GPIOB -#define USARTx_RX_Pin GPIO_PIN_3 -#define USARTx_RX_GPIO_Port GPIOA -#define USARTx_TX_Pin GPIO_PIN_2 -#define USARTx_TX_GPIO_Port GPIOA +#endif + +#define USARTx_RX_Pin GPIO_PIN_3 +#define USARTx_RX_GPIO_Port GPIOA +#define USARTx_TX_Pin GPIO_PIN_2 +#define USARTx_TX_GPIO_Port GPIOA /* USER CODE BEGIN Private defines */ #if defined(STS_O7)||defined(L8) +#define STS_LED1_Pin LED1_Pin +#define STS_LED1_GPIO_Port LED1_GPIO_Port + +#define STS_LED2_Pin LED2_Pin +#define STS_LED2_GPIO_Port LED2_GPIO_Port + +#define STS_LED_WS2812_Pin GPIO_PIN_8 +#define STS_LED_WS2812_Port GPIOA #define HALL1_Pin GPIO_PIN_0 // DOOR CONTACT #define HALL1_GPIO_Port GPIOA @@ -105,6 +117,7 @@ void Error_Handler(void); #define PIR_GPIO_Port GPIOB #define PIR_EXTI_IRQn EXTI9_5_IRQn +#if 0 #define HALL3_Pin GPIO_PIN_9 // ALARM MUTE PIN #define HALL3_GPIO_Port GPIOA #define HALL3_EXTI_IRQn EXTI9_5_IRQn @@ -112,20 +125,20 @@ void Error_Handler(void); #define HALL4_Pin GPIO_PIN_10 // ALARM RESET PIN #define HALL4_GPIO_Port GPIOA #define HALL4_EXTI_IRQn EXTI15_10_IRQn +#endif #define ALARM_MUTE_Pin HALL3_Pin // ALARM MUTE BUTTON #define ALARM_RESET_Pin HALL4_Pin // ALARM RESET BUTTON #define HALL1_STATE HAL_GPIO_ReadPin(HALL1_GPIO_Port, HALL1_Pin) //DOOR CONTACT #define HALL2_STATE HAL_GPIO_ReadPin(HALL2_GPIO_Port, HALL2_Pin) //SOS BUTTON +#if 0 #define HALL3_STATE HAL_GPIO_ReadPin(HALL3_GPIO_Port, HALL3_Pin) //ALARM MUTE BUTTON #define HALL4_STATE HAL_GPIO_ReadPin(HALL4_GPIO_Port, HALL4_Pin) //ALARM RESET BUTTON +#endif + #define PIR_STATE HAL_GPIO_ReadPin(PIR_GPIO_Port, PIR_Pin) //PIR SENSOR -#else -#define BUT1_Pin GPIO_PIN_0 -#define BUT1_GPIO_Port GPIOA -#define BUT1_EXTI_IRQn EXTI0_IRQn #endif #define LED1_Pin GPIO_PIN_2 @@ -136,6 +149,12 @@ void Error_Handler(void); #define LED1_STATE HAL_GPIO_ReadPin(LED1_GPIO_Port, LED1_Pin) #define LED1_TOGGLE HAL_GPIO_TogglePin(LED1_GPIO_Port, LED1_Pin) +#define LED2_ON HAL_GPIO_WritePin(LED2_GPIO_Port, LED2_Pin, GPIO_PIN_SET ) +#define LED2_OFF HAL_GPIO_WritePin(LED2_GPIO_Port, LED2_Pin, GPIO_PIN_RESET) +#define LED2_STATE HAL_GPIO_ReadPin(LED2_GPIO_Port, LED2_Pin) +#define LED2_TOGGLE HAL_GPIO_TogglePin(LED2_GPIO_Port, LED2_Pin) + + #ifndef L8 #define MEMS_POWER_Pin GPIO_PIN_4 // PMU_ENABLE #define MEMS_POWER_GPIO_Port GPIOB // PMU_ENABLE @@ -349,6 +368,16 @@ void Error_Handler(void); #endif #if defined(STS_O7)||defined(L8) + +#define A111_SPI_SCK_Pin GPIO_PIN_5 //GPIO_PIN_3 +#define A111_SPI_SCK_GPIO_Port GPIOA //GPIOB +#define A111_SPI_MISO_Pin GPIO_PIN_6 //GPIO_PIN_11 +#define A111_SPI_MISO_GPIO_Port GPIOA //GPIOA +#define A111_SPI_MOSI_Pin GPIO_PIN_7 //GPIO_PIN_12 +#define A111_SPI_MOSI_GPIO_Port GPIOA //GPIOA +#define A111_CS_N_Pin GPIO_PIN_4 //GPIO_PIN_15 +#define A111_CS_N_GPIO_Port GPIOA //GPIOA + #define A111_SENSOR_INTERRUPT_Pin GPIO_PIN_3 // SWITCH TO PB-3, 2024-05-06 #define A111_SENSOR_INTERRUPT_GPIO_Port GPIOB #define A111_SENSOR_INTERRUPT_EXTI_IRQn EXTI3_IRQn // SWITCH TO PB-3, 2024-05-06 diff --git a/Core/Inc/stm32wlxx_hal_conf.h b/Core/Inc/stm32wlxx_hal_conf.h index 660926c..5fe7fb9 100644 --- a/Core/Inc/stm32wlxx_hal_conf.h +++ b/Core/Inc/stm32wlxx_hal_conf.h @@ -52,7 +52,7 @@ #define HAL_RTC_MODULE_ENABLED /*#define HAL_SMARTCARD_MODULE_ENABLED */ /*#define HAL_SMBUS_MODULE_ENABLED */ -/*#define HAL_SPI_MODULE_ENABLED */ +#define HAL_SPI_MODULE_ENABLED #define HAL_SUBGHZ_MODULE_ENABLED #define HAL_TIM_MODULE_ENABLED #define HAL_UART_MODULE_ENABLED diff --git a/Core/Src/dma.c b/Core/Src/dma.c index 64afc88..090364d 100644 --- a/Core/Src/dma.c +++ b/Core/Src/dma.c @@ -66,6 +66,15 @@ void MX_DMA_Init(void) HAL_NVIC_EnableIRQ(DMA1_Channel1_IRQn); #endif + /* SPI1 RX */ + /* DMA1_Channel2_IRQn interrupt configuration */ + HAL_NVIC_SetPriority(DMA1_Channel2_IRQn, 0, 0); + HAL_NVIC_EnableIRQ(DMA1_Channel2_IRQn); + /* SPI1 TX */ + /* DMA1_Channel3_IRQn interrupt configuration */ + HAL_NVIC_SetPriority(DMA1_Channel3_IRQn, 0, 0); + HAL_NVIC_EnableIRQ(DMA1_Channel3_IRQn); + // I2C2 /* DMA1_Channel4_IRQn interrupt configuration */ HAL_NVIC_SetPriority(DMA1_Channel4_IRQn, 0, 0); @@ -76,7 +85,7 @@ void MX_DMA_Init(void) // USART2 /* DMA1_Channel6_IRQn interrupt configuration */ - HAL_NVIC_SetPriority(DMA1_Channel6_IRQn, 0, 0); + HAL_NVIC_SetPriority(DMA1_Channel6_IRQn, 2, 0); HAL_NVIC_EnableIRQ(DMA1_Channel6_IRQn); /* DMA1_Channel7_IRQn interrupt configuration */ //HAL_NVIC_SetPriority(DMA1_Channel7_IRQn, 0, 0); diff --git a/Core/Src/gpio.c b/Core/Src/gpio.c index cf5bd2b..e95f801 100644 --- a/Core/Src/gpio.c +++ b/Core/Src/gpio.c @@ -50,24 +50,34 @@ void MX_GPIO_Init(void) __HAL_RCC_GPIOA_CLK_ENABLE(); /*Configure GPIO pin Output Level */ - HAL_GPIO_WritePin(GPIOB, LED1_Pin|LED2_Pin|PROB2_Pin|PROB1_Pin - |LED3_Pin, GPIO_PIN_RESET); + HAL_GPIO_WritePin(GPIOB, LED1_Pin|LED2_Pin, GPIO_PIN_RESET); //|PROB2_Pin|PROB1_Pin|LED3_Pin, GPIO_PIN_RESET); + // A111 + HAL_GPIO_WritePin(A111_CS_N_GPIO_Port, A111_CS_N_Pin, GPIO_PIN_RESET); + #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 /*Configure GPIO pins : PBPin PBPin PBPin */ - GPIO_InitStruct.Pin = LED1_Pin|LED2_Pin|LED3_Pin; + GPIO_InitStruct.Pin = LED1_Pin|LED2_Pin; //|LED3_Pin; GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); +#if defined(STS_O7)||defined(STS_O6)||defined(STS_O2)||defined(L8) + GPIO_InitStruct.Pin = HALL1_Pin|HALL2_Pin; //|HALL3_Pin|HALL4_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING_FALLING; + GPIO_InitStruct.Pull = GPIO_PULLUP; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); +#else /*Configure GPIO pins : PAPin PAPin */ GPIO_InitStruct.Pin = BUT1_Pin|BUT2_Pin; GPIO_InitStruct.Mode = GPIO_MODE_IT_FALLING; GPIO_InitStruct.Pull = GPIO_PULLUP; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); +#endif /*Configure GPIO pins : PBPin PBPin */ GPIO_InitStruct.Pin = PROB2_Pin|PROB1_Pin; @@ -76,6 +86,26 @@ void MX_GPIO_Init(void) GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); + /*Configure GPIO pin : PtPin */ + GPIO_InitStruct.Pin = A111_ENABLE_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + GPIO_InitStruct.Pull = GPIO_PULLDOWN; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + HAL_GPIO_Init(A111_ENABLE_GPIO_Port, &GPIO_InitStruct); + + GPIO_InitStruct.Pin = A111_CS_N_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + GPIO_InitStruct.Pull = GPIO_NOPULL; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + HAL_GPIO_Init(A111_CS_N_GPIO_Port, &GPIO_InitStruct); + + /*Configure GPIO pin : PtPin */ + GPIO_InitStruct.Pin = A111_SENSOR_INTERRUPT_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING; + GPIO_InitStruct.Pull = GPIO_NOPULL; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; + HAL_GPIO_Init(A111_SENSOR_INTERRUPT_GPIO_Port, &GPIO_InitStruct); + #if 0 /*Configure GPIO pin : PtPin */ GPIO_InitStruct.Pin = BUT3_Pin; @@ -163,15 +193,22 @@ void MX_GPIO_Init(void) #endif /* ============== SOAP LEVEL DETECTION ========================= */ -#if defined(PIR) - /*Configure GPIO pins : PIR_Pin PIR_Pin */ - GPIO_InitStruct.Pin = PIR_Pin; - GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING_FALLING; - GPIO_InitStruct.Pull = GPIO_NOPULL; //GPIO_NOPULL; - HAL_GPIO_Init(PIR_GPIO_Port, &GPIO_InitStruct); - HAL_NVIC_SetPriority(PIR_EXTI_IRQn, 15, 0); - HAL_NVIC_EnableIRQ(PIR_EXTI_IRQn); +#if defined(STS_O7)||defined(STS_O6)||defined(STS_O2)||defined(L8) + HAL_NVIC_SetPriority(HALL1_EXTI_IRQn, 15, 0); + HAL_NVIC_EnableIRQ(HALL1_EXTI_IRQn); + + HAL_NVIC_SetPriority(HALL2_EXTI_IRQn, 15, 0); + HAL_NVIC_EnableIRQ(HALL2_EXTI_IRQn); + +#if 0 + HAL_NVIC_SetPriority(HALL3_EXTI_IRQn, 15, 0); + HAL_NVIC_EnableIRQ(HALL3_EXTI_IRQn); + + HAL_NVIC_SetPriority(HALL4_EXTI_IRQn, 15, 0); + HAL_NVIC_EnableIRQ(HALL4_EXTI_IRQn); #endif + +#else /* EXTI interrupt init*/ HAL_NVIC_SetPriority(EXTI0_IRQn, 15, 0); HAL_NVIC_EnableIRQ(EXTI0_IRQn); @@ -182,6 +219,22 @@ void MX_GPIO_Init(void) HAL_NVIC_SetPriority(EXTI9_5_IRQn, 15, 0); HAL_NVIC_EnableIRQ(EXTI9_5_IRQn); +#endif + + HAL_NVIC_SetPriority(A111_SENSOR_INTERRUPT_EXTI_IRQn, 0, 0); + HAL_NVIC_EnableIRQ(A111_SENSOR_INTERRUPT_EXTI_IRQn); + +#if defined(PIR) + /*Configure GPIO pins : PIR_Pin PIR_Pin */ + GPIO_InitStruct.Pin = PIR_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING_FALLING; + GPIO_InitStruct.Pull = GPIO_NOPULL; //GPIO_NOPULL; + HAL_GPIO_Init(PIR_GPIO_Port, &GPIO_InitStruct); + HAL_NVIC_SetPriority(PIR_EXTI_IRQn, 15, 0); + HAL_NVIC_EnableIRQ(PIR_EXTI_IRQn); +#endif + + #ifdef L8 HAL_NVIC_SetPriority(TOF_INT_EXTI_IRQn, 0, 0); HAL_NVIC_EnableIRQ(TOF_INT_EXTI_IRQn); diff --git a/Core/Src/main.c b/Core/Src/main.c index e5be67e..a0a1ca6 100644 --- a/Core/Src/main.c +++ b/Core/Src/main.c @@ -28,6 +28,7 @@ #include "usart.h" #include "sys_app.h" #include "tim.h" +#include "spi.h" #ifdef STS_P2 #include "app_tof.h" #include "app_tof_peoplecount.h" @@ -115,6 +116,7 @@ int main(void) #endif { MX_I2C2_Init(); + MX_SPI1_Init(); MX_DMA_Init(); MX_TIM1_Init(); diff --git a/Core/Src/stm32wlxx_it.c b/Core/Src/stm32wlxx_it.c index 315bcc4..2b2b2a4 100644 --- a/Core/Src/stm32wlxx_it.c +++ b/Core/Src/stm32wlxx_it.c @@ -61,6 +61,10 @@ extern DMA_HandleTypeDef hdma_usart2_tx; extern DMA_HandleTypeDef hdma_usart2_rx; extern UART_HandleTypeDef huart2; /* USER CODE BEGIN EV */ +extern DMA_HandleTypeDef hdma_spi1_rx; +extern DMA_HandleTypeDef hdma_spi1_tx; +extern SPI_HandleTypeDef hspi1; + extern DMA_HandleTypeDef hdma_i2c2_rx; extern DMA_HandleTypeDef hdma_i2c2_tx; extern DMA_HandleTypeDef hdma_usart2_tx; @@ -230,7 +234,13 @@ void EXTI0_IRQHandler(void) /* USER CODE BEGIN EXTI0_IRQn 0 */ /* USER CODE END EXTI0_IRQn 0 */ +#if defined(STS_O7)||defined(STS_O6)||defined(STS_O2)||defined(L8) + //sts_reed_hall_1_changed = 1; + HAL_GPIO_EXTI_IRQHandler(HALL1_Pin); +#else HAL_GPIO_EXTI_IRQHandler(BUT1_Pin); + +#endif /* USER CODE BEGIN EXTI0_IRQn 1 */ /* USER CODE END EXTI0_IRQn 1 */ @@ -244,7 +254,12 @@ void EXTI1_IRQHandler(void) /* USER CODE BEGIN EXTI1_IRQn 0 */ /* USER CODE END EXTI1_IRQn 0 */ +#if defined(STS_O7)||defined(STS_O6)||defined(STS_O2)||defined(L8) + //sts_reed_hall_2_changed = 1; + HAL_GPIO_EXTI_IRQHandler(HALL2_Pin); +#else HAL_GPIO_EXTI_IRQHandler(BUT2_Pin); +#endif /* USER CODE BEGIN EXTI1_IRQn 1 */ /* USER CODE END EXTI1_IRQn 1 */ @@ -257,6 +272,8 @@ void EXTI3_IRQHandler(void) /* USER CODE END EXTI3_IRQn 0 */ #if defined(VL53LX)||defined(VL53L0) HAL_GPIO_EXTI_IRQHandler(TOF_INT_EXTI_PIN); +#elif defined(L8) + HAL_GPIO_EXTI_IRQHandler(A111_SENSOR_INTERRUPT_Pin); #endif /* USER CODE BEGIN EXTI3_IRQn 1 */ @@ -306,7 +323,7 @@ void DMA1_Channel2_IRQHandler(void) /* USER CODE BEGIN DMA1_Channel2_IRQn 0 */ /* USER CODE END DMA1_Channel2_IRQn 0 */ - //HAL_DMA_IRQHandler(&hdma_spi1_rx); + HAL_DMA_IRQHandler(&hdma_spi1_rx); /* USER CODE BEGIN DMA1_Channel2_IRQn 1 */ /* USER CODE END DMA1_Channel2_IRQn 1 */ @@ -320,7 +337,7 @@ void DMA1_Channel3_IRQHandler(void) /* USER CODE BEGIN DMA1_Channel3_IRQn 0 */ /* USER CODE END DMA1_Channel3_IRQn 0 */ - //HAL_DMA_IRQHandler(&hdma_spi1_tx); + HAL_DMA_IRQHandler(&hdma_spi1_tx); /* USER CODE BEGIN DMA1_Channel3_IRQn 1 */ /* USER CODE END DMA1_Channel3_IRQn 1 */ @@ -400,6 +417,7 @@ void EXTI9_5_IRQHandler(void) HAL_GPIO_EXTI_IRQHandler(PIR_Pin); + //HAL_GPIO_EXTI_IRQHandler(HALL3_Pin); /* USER CODE BEGIN EXTI9_5_IRQn 1 */ @@ -419,11 +437,28 @@ void EXTI15_10_IRQHandler(void) HAL_GPIO_EXTI_IRQHandler(TOF_INT_EXTI_PIN); #endif +// HAL_GPIO_EXTI_IRQHandler(HALL4_Pin); // GPIOA -10 + /* USER CODE BEGIN EXTI15_10_IRQn 1 */ /* USER CODE END EXTI15_10_IRQn 1 */ } + +/** + * @brief This function handles SPI1 Interrupt. + */ +void SPI1_IRQHandler(void) +{ + /* USER CODE BEGIN SPI1_IRQn 0 */ + + /* USER CODE END SPI1_IRQn 0 */ + HAL_SPI_IRQHandler(&hspi1); + /* USER CODE BEGIN SPI1_IRQn 1 */ + + /* USER CODE END SPI1_IRQn 1 */ +} + /** * @brief This function handles USART2 Interrupt. */ diff --git a/LoRaWAN/App/lora_app.c b/LoRaWAN/App/lora_app.c index 695c363..6d8e0db 100644 --- a/LoRaWAN/App/lora_app.c +++ b/LoRaWAN/App/lora_app.c @@ -1112,7 +1112,9 @@ static void SendTxData(void) if ((JoinLedTimer.IsRunning) && (LmHandlerJoinStatus() == LORAMAC_HANDLER_SET)) { UTIL_TIMER_Stop(&JoinLedTimer); +#ifdef STM32WL55xx HAL_GPIO_WritePin(LED3_GPIO_Port, LED3_Pin, GPIO_PIN_RESET); /* LED_RED */ +#endif } status = LmHandlerSend(&AppData, LmHandlerParams.IsTxConfirmed, false); @@ -1177,7 +1179,9 @@ static void OnRxTimerLedEvent(void *context) static void OnJoinTimerLedEvent(void *context) { +#ifdef STM32WL55xx HAL_GPIO_TogglePin(LED3_GPIO_Port, LED3_Pin); /* LED_RED */ +#endif } /* USER CODE END PrFD_LedEvents */ @@ -1219,7 +1223,9 @@ static void OnJoinRequest(LmHandlerJoinParams_t *joinParams) if (joinParams->Status == LORAMAC_HANDLER_SUCCESS) { UTIL_TIMER_Stop(&JoinLedTimer); +#ifdef STM32WL55xx HAL_GPIO_WritePin(LED3_GPIO_Port, LED3_Pin, GPIO_PIN_RESET); /* LED_RED */ +#endif APP_LOG(TS_OFF, VLEVEL_M, "\r\n###### = JOINED = "); if (joinParams->Mode == ACTIVATION_TYPE_ABP) @@ -1375,7 +1381,9 @@ static void StopJoin(void) /* USER CODE BEGIN StopJoin_1 */ HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_SET); /* LED_BLUE */ HAL_GPIO_WritePin(LED2_GPIO_Port, LED2_Pin, GPIO_PIN_SET); /* LED_GREEN */ +#ifdef STM32WL55xx HAL_GPIO_WritePin(LED3_GPIO_Port, LED3_Pin, GPIO_PIN_SET); /* LED_RED */ +#endif /* USER CODE END StopJoin_1 */ UTIL_TIMER_Stop(&TxTimer); @@ -1419,7 +1427,9 @@ static void OnStopJoinTimerEvent(void *context) /* USER CODE BEGIN OnStopJoinTimerEvent_Last */ HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET); /* LED_BLUE */ HAL_GPIO_WritePin(LED2_GPIO_Port, LED2_Pin, GPIO_PIN_RESET); /* LED_GREEN */ +#ifdef STM32WL55xx HAL_GPIO_WritePin(LED3_GPIO_Port, LED3_Pin, GPIO_PIN_RESET); /* LED_RED */ +#endif /* USER CODE END OnStopJoinTimerEvent_Last */ } diff --git a/STM32CubeIDE/.project b/STM32CubeIDE/.project index f0fe114..9d94277 100644 --- a/STM32CubeIDE/.project +++ b/STM32CubeIDE/.project @@ -187,6 +187,16 @@ 1 copy_PARENT1/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc_ex.c + + Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi.c + 1 + copy_PARENT1/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_spi.c + + + Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi_ex.c + 1 + copy_PARENT1/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_spi_ex.c + Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.c 1 @@ -447,6 +457,11 @@ 1 copy_PARENT/Core/Src/rtc.c + + Application/User/Core/spi.c + 1 + PARENT-1-PROJECT_LOC/Core/Src/spi.c + Application/User/Core/stm32_lpm_if.c 1 diff --git a/STM32CubeIDE/Release/Application/User/Core/subdir.mk b/STM32CubeIDE/Release/Application/User/Core/subdir.mk index 5991518..8af9d56 100644 --- a/STM32CubeIDE/Release/Application/User/Core/subdir.mk +++ b/STM32CubeIDE/Release/Application/User/Core/subdir.mk @@ -14,6 +14,7 @@ D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_S D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/i2c.c \ D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/main.c \ D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/rtc.c \ +D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/spi.c \ 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 \ @@ -40,6 +41,7 @@ OBJS += \ ./Application/User/Core/i2c.o \ ./Application/User/Core/main.o \ ./Application/User/Core/rtc.o \ +./Application/User/Core/spi.o \ ./Application/User/Core/stm32_lpm_if.o \ ./Application/User/Core/stm32wlxx_hal_msp.o \ ./Application/User/Core/stm32wlxx_it.o \ @@ -66,6 +68,7 @@ C_DEPS += \ ./Application/User/Core/i2c.d \ ./Application/User/Core/main.d \ ./Application/User/Core/rtc.d \ +./Application/User/Core/spi.d \ ./Application/User/Core/stm32_lpm_if.d \ ./Application/User/Core/stm32wlxx_hal_msp.d \ ./Application/User/Core/stm32wlxx_it.d \ @@ -102,6 +105,8 @@ Application/User/Core/main.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Appl arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DL8 -DPIR -DCLOCK_SYNC -DO1L -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../../STS/RSS/include -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/RSS/include -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/rtc.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/rtc.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DL8 -DPIR -DCLOCK_SYNC -DO1L -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../../STS/RSS/include -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/RSS/include -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/spi.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/spi.c Application/User/Core/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DL8 -DPIR -DCLOCK_SYNC -DO1L -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../../STS/RSS/include -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/RSS/include -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/stm32_lpm_if.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32_lpm_if.c Application/User/Core/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DL8 -DPIR -DCLOCK_SYNC -DO1L -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../../STS/RSS/include -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/RSS/include -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_hal_msp.o: D:/ONEDRIVE/STM32WLV13/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/WLE5CC_NODE_STS/Core/Src/stm32wlxx_hal_msp.c Application/User/Core/subdir.mk @@ -134,7 +139,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/acc_integration_stm32.cyclo ./Application/User/Core/acc_integration_stm32.d ./Application/User/Core/acc_integration_stm32.o ./Application/User/Core/acc_integration_stm32.su ./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/sts_lamp_bar.cyclo ./Application/User/Core/sts_lamp_bar.d ./Application/User/Core/sts_lamp_bar.o ./Application/User/Core/sts_lamp_bar.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/tim.cyclo ./Application/User/Core/tim.d ./Application/User/Core/tim.o ./Application/User/Core/tim.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/acc_integration_stm32.cyclo ./Application/User/Core/acc_integration_stm32.d ./Application/User/Core/acc_integration_stm32.o ./Application/User/Core/acc_integration_stm32.su ./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/spi.cyclo ./Application/User/Core/spi.d ./Application/User/Core/spi.o ./Application/User/Core/spi.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/sts_lamp_bar.cyclo ./Application/User/Core/sts_lamp_bar.d ./Application/User/Core/sts_lamp_bar.o ./Application/User/Core/sts_lamp_bar.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/tim.cyclo ./Application/User/Core/tim.d ./Application/User/Core/tim.o ./Application/User/Core/tim.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/Drivers/STM32WLxx_HAL_Driver/subdir.mk b/STM32CubeIDE/Release/Drivers/STM32WLxx_HAL_Driver/subdir.mk index c2ac412..ab793dc 100644 --- a/STM32CubeIDE/Release/Drivers/STM32WLxx_HAL_Driver/subdir.mk +++ b/STM32CubeIDE/Release/Drivers/STM32WLxx_HAL_Driver/subdir.mk @@ -23,6 +23,8 @@ D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc.c \ D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rcc_ex.c \ D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc.c \ D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc_ex.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_spi.c \ +D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_spi_ex.c \ D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_subghz.c \ D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim.c \ D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim_ex.c \ @@ -49,6 +51,8 @@ OBJS += \ ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc_ex.o \ ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.o \ ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.o \ +./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi.o \ +./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi_ex.o \ ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.o \ ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.o \ ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim_ex.o \ @@ -75,6 +79,8 @@ C_DEPS += \ ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc_ex.d \ ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.d \ ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.d \ +./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi.d \ +./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi_ex.d \ ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.d \ ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.d \ ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim_ex.d \ @@ -120,6 +126,10 @@ Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.o: D:/ONEDRIVE/STM32WLV13/Drivers arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DL8 -DPIR -DCLOCK_SYNC -DO1L -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../../STS/RSS/include -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/RSS/include -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 "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_rtc_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DL8 -DPIR -DCLOCK_SYNC -DO1L -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../../STS/RSS/include -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/RSS/include -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 "$@" +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_spi.c Drivers/STM32WLxx_HAL_Driver/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DL8 -DPIR -DCLOCK_SYNC -DO1L -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../../STS/RSS/include -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/RSS/include -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 "$@" +Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi_ex.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_spi_ex.c Drivers/STM32WLxx_HAL_Driver/subdir.mk + arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DL8 -DPIR -DCLOCK_SYNC -DO1L -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../../STS/RSS/include -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/RSS/include -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 "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_subghz.c Drivers/STM32WLxx_HAL_Driver/subdir.mk arm-none-eabi-gcc "$<" -mcpu=cortex-m4 -std=gnu11 -DL8 -DPIR -DCLOCK_SYNC -DO1L -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../../STS/RSS/include -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/RSS/include -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 "$@" Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.o: D:/ONEDRIVE/STM32WLV13/Drivers/STM32WLxx_HAL_Driver/Src/stm32wlxx_hal_tim.c Drivers/STM32WLxx_HAL_Driver/subdir.mk @@ -136,7 +146,7 @@ Drivers/STM32WLxx_HAL_Driver/stm32wlxx_ll_adc.o: D:/ONEDRIVE/STM32WLV13/Drivers/ clean: clean-Drivers-2f-STM32WLxx_HAL_Driver clean-Drivers-2f-STM32WLxx_HAL_Driver: - -$(RM) ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_cortex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_cortex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_cortex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_cortex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_exti.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_exti.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_exti.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_exti.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_gpio.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_gpio.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_gpio.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_gpio.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_ll_adc.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_ll_adc.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_ll_adc.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_ll_adc.su + -$(RM) ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_adc_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_cortex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_cortex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_cortex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_cortex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_dma_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_exti.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_exti.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_exti.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_exti.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_flash_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_gpio.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_gpio.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_gpio.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_gpio.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_i2c_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_pwr_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rcc_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_rtc_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_spi_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_subghz.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_tim_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart_ex.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart_ex.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart_ex.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_hal_uart_ex.su ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_ll_adc.cyclo ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_ll_adc.d ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_ll_adc.o ./Drivers/STM32WLxx_HAL_Driver/stm32wlxx_ll_adc.su .PHONY: clean-Drivers-2f-STM32WLxx_HAL_Driver diff --git a/STM32CubeIDE/Release/WLE5CC_NODE_STS.elf b/STM32CubeIDE/Release/WLE5CC_NODE_STS.elf index 5ea2631a56d64fc94232d8f60f9265fecb671651..f12502fad6fbcbf9921163bf3abb3881d57a11f0 100644 GIT binary patch delta 63902 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 S(6-sl*Cu#hps_!j-v0;N-8pIi delta 62401 zcma&P3wRVo);`|dGf9S!%Ou1QLI{&dh#`a+AV9bpLKp%GcZ3iE1PE+kBMuie%OaCi zR8;gs8*NlpQCK$mp&LkIK)EWiETD$#qRVRBMLO+-8Rkqs-}C%`lc!Ss zp7+$LQ&lAPE$LAQ8-hAX2PK^xp!x zX(|rY#ext_l1^SVXfjLvKP3~1g+0&wG15VH|B)t`P9c1T@CCvd1WkkeI|tc?PWe9( ze~IuQ(o*<0J0|=+@GqUR+lZYAEeJt<1ycw@7leBdlKKh`Q-2)z3{ie`d>@nfxc}F9 zk}mC7;5kg@E0fn=wm0)7OyU1OBY8+vdSY|AXfibz3VZG`OfVGu?WRy|I!Lx>N`j@i zyl#C|yePT%)x8$|NU#*zQWxFhhA4G&?d@rlq+1noaIZzi81>(7xw2Q2IYwRW7OcjX za+88;V$=uSa#3QF)LtPc_O6gVJ1B4LeK~r5hqaBV;0Xw8P*)d65EOn(;h+X+8$M4*do63+4thi zAT_g%WMX?*L6Ew!osQeurl_6)Cg6`-gYkcGM-cwUwi#^(#FyITn)}>k%R9PSg49<# z1Z$Kn0!NEF=>Llvj>J((2mOCW!)6>!?=V{owewuYAA{8O2Tct@>S2$0&qJzFFdYmo zd~I2tnw$69!lK_=2gWZ9Qa|y?sRJy=AoWd;JaIrlbePMsM@ox1{E#Xd#grg*gGb&u zz%CAx?-{sIjF%rB_^9-Go2(9ukv?gYg9l|ucieLJAiK1>P2M$VnPbdTwJ}y9Nv!Fn zn%X2w!6c9Ky2ohoIKT6V`2Qcz*gM9gG@D=zRx?~_HqmNM3RdrRiPkB%suxaCH|GYc z7MGZsd&ih8q@db{i0??rX|~V4H;kR48cadzkM1eAjNQd|NEiImhF5~rZz0Q_A-
LoLb@N){BF6{PTgcm`!~1M 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 RqQ*@*5%1%8C@)g?{{cI&y!`+G