From 0a85320c68134a83d41fec37cf72197a06bb80f2 Mon Sep 17 00:00:00 2001 From: yelvlab Date: Tue, 3 Dec 2024 15:34:48 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0485=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E7=89=B9=E5=AE=9A=E5=91=BD=E4=BB=A4=E6=88=96=E8=80=85=E5=91=BD?= =?UTF-8?q?=E4=BB=A4=E5=8A=A0=E5=8F=82=E6=95=B0=E7=9A=84=E5=BD=A2=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CMakeLists.txt | 4 ++-- inc/ultrasonic_driver.h | 2 +- src/main.c | 23 +++++++++++++---------- 3 files changed, 16 insertions(+), 13 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 713384c..4c8dcc1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -5,8 +5,8 @@ project(xlsw_3dp_ultrasonic_300K) set(POWER_VOLTAGE "12V") set(VERSION_MAJOR 0) -set(VERSION_MINOR 0) -set(VERSION_PATCH 13) +set(VERSION_MINOR 1) +set(VERSION_PATCH 14) set(VERSION "V${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}") string(TIMESTAMP CURRENT_DATE "%Y-%m-%d") diff --git a/inc/ultrasonic_driver.h b/inc/ultrasonic_driver.h index d4db545..2a57dbc 100644 --- a/inc/ultrasonic_driver.h +++ b/inc/ultrasonic_driver.h @@ -23,7 +23,7 @@ #endif #define ULTRASONIC_CYCLES 0x05U -#define ULTRASONIC_TRAN_US 998 // (ms) +#define ULTRASONIC_TRAN_US 498 // (ms) #define LED_PORT GPIOA #define LED_PIN GPIO_PIN_9 diff --git a/src/main.c b/src/main.c index d928536..c63867a 100644 --- a/src/main.c +++ b/src/main.c @@ -14,7 +14,8 @@ #include "mlx90614.h" extern uint32_t g_capture_value; -uint16_t distance_uint16; +uint16_t g_distance_uint16; +uint16_t g_temperature_uint16; /*! \brief main function @@ -40,7 +41,7 @@ int main(void) /* ---------- debug end ---------- */ printf("\r\n"); - printf("XLSW-3DP-UltraSonic Analog 300K!\r\n"); + printf("XLSW-3DP-UltraSonic Analog 300K! V0.1.14\r\n"); printf("\r\n"); delay_ms(2000); @@ -48,17 +49,19 @@ int main(void) while (1) { delay_ms(ULTRASONIC_TRAN_US); - UltraSonic_PwmOut_Cycles(ULTRASONIC_CYCLES); - delay_ms(2); - printf("cap_val:%ld\t", g_capture_value); + // printf("cap_val:%ld\t", g_capture_value); + // const char* result = (g_capture_value <= CAPTURE_VALUE_MAX) ? "Distance: %d\t" : "Over Range\t"; + if (g_capture_value <= CAPTURE_VALUE_MAX) { + g_distance_uint16 = UltraSonic_CalcDistance(g_capture_value); + } else { + g_distance_uint16 = 0x0000; + } + // printf(result, distance_uint16); - const char* result = (g_capture_value <= CAPTURE_VALUE_MAX) ? "Distance: %d\t" : "Over Range\t"; - distance_uint16 = UltraSonic_CalcDistance(g_capture_value); - printf(result, distance_uint16); - - printf("Temp:%d\n", MLX90614_GetObjectTemperature()); + // printf("Temp:%d\n", MLX90614_GetObjectTemperature()); + g_temperature_uint16 = MLX90614_GetObjectTemperature(); } }