testAdc.lua 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. --- 模块功能:ADC功能测试.
  2. -- ADC测量精度(12bit)
  3. -- 每隔1s读取一次ADC值
  4. -- @author openLuat
  5. -- @module adc.testAdc
  6. -- @license MIT
  7. -- @copyright openLuat
  8. -- @release 2018.12.19
  9. module(...,package.seeall)
  10. --- ADC读取测试
  11. -- @return 无
  12. -- @usage read2()
  13. local function read2()
  14. --ADC2接口用来读取电压
  15. local ADC_ID = 2
  16. -- 读取adc
  17. -- adcval为number类型,表示adc的原始值,无效值为0xFFFF
  18. -- voltval为number类型,表示转换后的电压值,单位为毫伏,无效值为0xFFFF
  19. local adcval,voltval = adc.read(ADC_ID)
  20. log.info("testAdc2.read",adcval,voltval)
  21. end
  22. --- ADC读取测试
  23. -- @return 无
  24. -- @usage read3()
  25. local function read3()
  26. --ADC3接口用来读取电压
  27. local ADC_ID = 3
  28. -- 读取adc
  29. -- adcval为number类型,表示adc的原始值,无效值为0xFFFF
  30. -- voltval为number类型,表示转换后的电压值,单位为毫伏,无效值为0xFFFF
  31. local adcval,voltval = adc.read(ADC_ID)
  32. log.info("testAdc3.read",adcval,voltval)
  33. end
  34. -- 开启对应的adc通道
  35. adc.open(2)
  36. adc.open(3)
  37. -- 定时每秒读取adc值
  38. sys.timerLoopStart(read2,1000)
  39. sys.timerLoopStart(read3,1000)
  40. require"misc"
  41. sys.timerLoopStart(function ()
  42. log.info("vbatt.read",misc.getVbatt())
  43. end,1000)