ds18b20.lua 945 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. PROJECT = "DS18B20"
  2. VERSION = "2.0.0"
  3. --加载日志功能模块,并且设置日志输出等级
  4. --如果关闭调用log模块接口输出的日志,等级设置为log.LOG_SILENT即可
  5. require "log"
  6. LOG_LEVEL = log.LOGLEVEL_TRACE
  7. require "sys"
  8. local function testds18b20()
  9. sys.wait(5000)
  10. -- 个别gpio需要打开电压域才可以正常使用
  11. pmd.ldoset(15,pmd.LDO_VLCD)
  12. while true do
  13. local status,temperature = onewire.read_ds18b20(pio.P0_19)
  14. if status == onewire.OK then
  15. log.info("18b20","temperature:",temperature/10000)
  16. elseif status == onewire.NOT_SENSOR then
  17. log.info("18b20","未检测到传感器,请检查硬件连接")
  18. elseif status == onewire.READ_ERROR then
  19. log.info("18b20","读取数据过程错误")
  20. elseif status == onewire.CHECK_ERROR then
  21. log.info("18b20","数据校验错误")
  22. end
  23. sys.wait(1000)
  24. end
  25. end
  26. sys.taskInit(testds18b20)
  27. --启动系统框架
  28. sys.init(0, 0)
  29. sys.run()