diff --git a/Core/Inc/main.h b/Core/Inc/main.h index bfd1a5a..b5ac09d 100644 --- a/Core/Inc/main.h +++ b/Core/Inc/main.h @@ -126,7 +126,9 @@ void MX_TOF_Init(void); #define TOF_C_XSHUT_Pin GPIO_PIN_3 #define TOF_C_XSHUT_GPIO_Port GPIOB #endif - +// Common Shared Int Pin and Port for VL53L0X +#define TOF_INT_EXTI_PIN TOF_C_INT_Pin +#define TOF_INT_EXTI_PORT TOF_C_INT_GPIO_Port /* TOF_2 */ #if defined(TOF_2) && defined(STM32WL55xx) diff --git a/Core/Src/stm32wlxx_it.c b/Core/Src/stm32wlxx_it.c index 47306d8..e3545a0 100644 --- a/Core/Src/stm32wlxx_it.c +++ b/Core/Src/stm32wlxx_it.c @@ -373,6 +373,10 @@ void EXTI9_5_IRQHandler(void) /* USER CODE END EXTI9_5_IRQn 0 */ #if defined(STM32WL55xx) HAL_GPIO_EXTI_IRQHandler(BUT3_Pin); +#endif +#if defined(STM32WLE5xx) + //HAL_GPIO_EXTI_IRQHandler(TOF_INT_EXTI_PIN); + HAL_GPIO_EXTI_IRQHandler(TOF_INT_EXTI_PIN); #endif /* USER CODE BEGIN EXTI9_5_IRQn 1 */ @@ -387,7 +391,9 @@ void EXTI15_10_IRQHandler(void) /* USER CODE BEGIN EXTI15_10_IRQn 0 */ /* USER CODE END EXTI15_10_IRQn 0 */ +#if defined(STM32WL55xx) HAL_GPIO_EXTI_IRQHandler(TOF_INT_EXTI_PIN); +#endif /* USER CODE BEGIN EXTI15_10_IRQn 1 */ /* USER CODE END EXTI15_10_IRQn 1 */ diff --git a/STM32CubeIDE/.settings/language.settings.xml b/STM32CubeIDE/.settings/language.settings.xml index 25c94c1..9a1860e 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/STS_RR_R125.launch b/STM32CubeIDE/STS_RR_R125.launch index 2b98275..77565a0 100644 --- a/STM32CubeIDE/STS_RR_R125.launch +++ b/STM32CubeIDE/STS_RR_R125.launch @@ -20,6 +20,7 @@ + @@ -41,6 +42,15 @@ + + + + + + + + + @@ -78,5 +88,6 @@ + diff --git a/TOF/App/app_tof_vl53l0x_range.c b/TOF/App/app_tof_vl53l0x_range.c index b67f150..b9feb14 100644 --- a/TOF/App/app_tof_vl53l0x_range.c +++ b/TOF/App/app_tof_vl53l0x_range.c @@ -345,12 +345,18 @@ void STS_TOF_VL53L0X_Range_Process(void) nSensorPresent = sts_tof_vl53l0x_DetectSensors(); // confirm sensor online APP_LOG(TS_OFF, VLEVEL_L, "\r\n %u pcs sensor(s) online \r\n", nSensorPresent); } + sts_tof_distance_data[0] = 0; + sts_tof_distance_data[1] = 0; + sts_tof_distance_data[2] = 0; if (nSensorPresent > 0) { // RangingConfig == HIGH ACCURACY, LONG RANGE, HIGH SPEED sts_tof_vl53l0x_SetupSingleShot(RangingConfig); - + sts_tof_distance_data[0]=0; + sts_tof_distance_data[1]=0; + sts_tof_distance_data[2]=0; + sensor_data_ready = 0 ; for (i=0; i< MAX_TOF_COUNT; i++) { if (VL53L0XDevs[i].Present ==1) @@ -377,9 +383,11 @@ void STS_TOF_VL53L0X_Range_Process(void) HAL_Delay(30); } // for i < MAX_TOF_COUNT + if (sensor_data_ready != 0) { + APP_LOG(TS_OFF, VLEVEL_L, "\r\n## Measured Range: \r\nTOF #0 = %4u mm, \r\nTOF #1 = %4u mm, \r\nTOF #2 = %4u mm\r\n", + (int)sts_tof_distance_data[0],(int)sts_tof_distance_data[1],(int)sts_tof_distance_data[2]); + } - APP_LOG(TS_OFF, VLEVEL_L, "\r\n## Measured Range: \r\nTOF #0 = %4u mm, \r\nTOF #1 = %4u mm, \r\nTOF #2 = %4u mm\r\n", - (int)sts_tof_distance_data[0],(int)sts_tof_distance_data[1],(int)sts_tof_distance_data[2]); } // nSensorPresent >0 } diff --git a/TOF/Target/app_tof_pin_conf.h b/TOF/Target/app_tof_pin_conf.h index 4f56a45..0a5d2ab 100644 --- a/TOF/Target/app_tof_pin_conf.h +++ b/TOF/Target/app_tof_pin_conf.h @@ -26,10 +26,12 @@ extern "C" { /* Includes ------------------------------------------------------------------*/ #include "stm32wlxx_hal.h" - /* Exported symbols ----------------------------------------------------------*/ -#define TOF_INT_EXTI_PIN (GPIO_PIN_10) // WL55JC GPIO_PIN_10, F401xE ==>(GPIO_PIN_4) -#define TOF_INT_EXTI_PORT (GPIOA) +//#define TOF_INT_EXTI_PIN (GPIO_PIN_10) // WL55JC GPIO_PIN_10, F401xE ==>(GPIO_PIN_4) +//#define TOF_INT_EXTI_PORT (GPIOA) + +//#define TOF_INT_EXTI_PIN TOF_C_INT_Pin +//#define TOF_INT_EXTI_PORT TOF_C_INT_GPIO_Port #ifdef __cplusplus }