From db36f74f33fca1df7b2ac72e54178db4d14b00a2 Mon Sep 17 00:00:00 2001 From: WXK <287788329@qq.com> Date: 星期五, 07 二月 2025 10:12:46 +0800 Subject: [PATCH] 2.11,修改重启bug当周围防撞标签多的时候 --- Src/ExternalDevices/dps368_test.c | 25 +++++++++++++------------ 1 files changed, 13 insertions(+), 12 deletions(-) diff --git a/Src/ExternalDevices/dps368_test.c b/Src/ExternalDevices/dps368_test.c index 40b006e..b106adf 100644 --- a/Src/ExternalDevices/dps368_test.c +++ b/Src/ExternalDevices/dps368_test.c @@ -69,7 +69,7 @@ /* Shall implement delay in milliseconds*/ void test_wait_ms(u8 delay) { - printf("Waiting for %dms\n",delay); +// printf("Waiting for %dms\n",delay); } struct dps310_state drv_state; f64 pressure,temperature; @@ -109,6 +109,8 @@ * and returns computed double precision pressure and temperature value */ ret = dps310_get_processed_data(&drv_state,&pressure,&temperature); + GetPressAndHeight(); + // printf("get_processed_data ret val = %d, pressure = %lf, temp = %lf\n",ret,pressure,temperature); /*To change configuration we first need to put sensor in @@ -138,20 +140,19 @@ return 0; } -float PressToHeight(float press,float temper) -{ - float temp1,temp2; - temp1 = 8.51*temper/284; - temp2 = log10f(101325/press); - return temp1*temp2; -} -float height; -void GetPressAndTemp(void) +float Height; +float GetPressAndHeight(void) { u8 ret; - + + /*Instantiate driver state*/ ret = dps310_get_processed_data(&drv_state,&pressure,&temperature); + + Height = 44330 * (1.0 - pow((pressure / 1013.25), (1 / 5.255))); + if(pressure==0) + Height = 0; + return Height; //height=PressToHeight(pressure,temperature); - printf("get_processed_data ret val = %d, pressure = %lf, temp = %lf\n",ret,pressure,temperature); + // printf("get_processed_data ret val = %d, pressure = %lf, temp = %lf\n",ret,pressure,temperature); } \ No newline at end of file -- Gitblit v1.9.3