Просмотр исходного кода

修复 : 直流量2没有对应采样通道遥测也有很大零漂的问题;

lch 5 месяцев назад
Родитель
Сommit
f4c4c960c3
2 измененных файлов с 16 добавлено и 13 удалено
  1. 2 1
      README.md
  2. 14 12
      app_public/fuxi_public/fuxi_bsp/source/ad7616.c

+ 2 - 1
README.md

@@ -69,4 +69,5 @@
 07. 修复 : 兴通力电源模块通讯规约解析数据长度出错问题;
 08. 合并 : 零压、零流突变录波逻辑;
 09. 修改 : 录波逻辑为开关录波;
-10. 修复 : 初始化软、硬件错误计数时会将已设置的错误计数清零的问题;
+10. 修复 : 初始化软、硬件错误计数时会将已设置的错误计数清零的问题;
+11. 修复 : 直流量2没有对应采样通道遥测也有很大零漂的问题;

+ 14 - 12
app_public/fuxi_public/fuxi_bsp/source/ad7616.c

@@ -896,20 +896,22 @@ static int get_adc_dc(uint8_t *out_data)
 
 float dc_get(unsigned int index)
 {
-	u32 i,v;
-	float f;
-	
-	v = 0;
-	for(i=0;i<CFG_ADC_DOTS_PER_CHANNEL;i++)
-	{
-		v += (u16)g_adc_dots_dc[index][i];
-	}
+    u32 i, v;
+    float f;
+
+	if(index >= CFG_ADC_CHANNEL_DC) return 0.0;
+
+    v = 0;
+    for (i = 0; i < CFG_ADC_DOTS_PER_CHANNEL; i++)
+    {
+        v += (u16)g_adc_dots_dc[index][i];
+    }
 
-	f = (float)v/CFG_ADC_DOTS_PER_CHANNEL;
-	// ³ËÀíÂÛϵÊý
-	f /= 129.791f;
+    f = (float)v / CFG_ADC_DOTS_PER_CHANNEL;
+    // ³ËÀíÂÛϵÊý
+    f /= 129.791f;
 
-	return f;
+    return f;
 }