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