dht11.lua 980 B

123456789101112131415161718192021222324252627282930313233343536
  1. PROJECT = "DHT11"
  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 testdht11()
  9. sys.wait(5000)
  10. -- 个别gpio需要打开电压域才可以正常使用
  11. pmd.ldoset(15,pmd.LDO_VLCD)
  12. while true do
  13. local status,humidity,temperature = onewire.read_dht11(pio.P0_7)
  14. if status == onewire.OK then
  15. log.info("dht11","temperature:",temperature)
  16. log.info("dht11","humidity:",humidity)
  17. elseif status == onewire.NOT_SENSOR then
  18. log.info("dht11","未检测到传感器,请检查硬件连接")
  19. elseif status == onewire.READ_ERROR then
  20. log.info("dht11","读取数据过程错误")
  21. elseif status == onewire.CHECK_ERROR then
  22. log.info("dht11","数据校验错误")
  23. end
  24. sys.wait(1000)
  25. end
  26. end
  27. sys.taskInit(testdht11)
  28. --启动系统框架
  29. sys.init(0, 0)
  30. sys.run()