Răsfoiți Sursa

update:105 adc 增加开启内部分压,从而增加量程

alienwalker 3 ani în urmă
părinte
comite
3e9fada504
1 a modificat fișierele cu 12 adăugiri și 8 ștergeri
  1. 12 8
      demo/adc/Air105/main.lua

+ 12 - 8
demo/adc/Air105/main.lua

@@ -1,5 +1,8 @@
 
 -- LuaTools需要PROJECT和VERSION这两个信息
+-- air105 adc参考电压是1.88V,所有通道一致,
+-- 内部分压没有隔离措施,在开启内部分压后,量程有所变化,具体看寄存器手册,1~5分压后能测到3.6,6通道能接近5V,但是不能直接测5V,可以测4.2V
+-- 0通道是始终开启无法关闭分压。
 PROJECT = "adcdemo"
 VERSION = "1.0.0"
 
@@ -15,18 +18,19 @@ if wdt then
 end
 
 sys.taskInit(function()
+    adc.setRange(adc.ADC_RANGE_3_6) --开启的内部分压,可以把量程扩大
+    adc.open(0) -- 0通道是内部采集CHARGE_VBAT, 0~5v, 这是特别的
+    adc.open(5) 
+    adc.open(6) 
     while 1 do
-        adc.open(0) -- 0通道是内部采集CHARGE_VBAT, 0~5v, 这是特别的
-        adc.open(1) -- 1通道是PC0, 0~1.8v,不要超过范围使用!!!,其它通道也是同样的范围
-        sys.wait(500)
         log.debug("adc", "adc0", adc.read(0))
-        log.debug("adc", "adc1", adc.read(1))
-        -- 使用完毕后关闭,可以使得休眠电流更低.
-        adc.close(0)
-        adc.close(1)
+        log.debug("adc", "adc5", adc.read(5))
+        log.debug("adc", "adc6", adc.read(6))
         sys.wait(500)
     end
-
+    adc.close(0)
+    adc.close(5)
+    adc.close(6)
 end)