main.lua 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. -- LuaTools需要PROJECT和VERSION这两个信息
  2. PROJECT = "max30102demo"
  3. VERSION = "1.0.0"
  4. -- log.info("main", PROJECT, VERSION)
  5. -- 引入必要的库文件(lua编写), 内部库不需要require
  6. local sys = require "sys"
  7. -- sys.timerLoopStart(function ()
  8. -- log.info("mem.lua", rtos.meminfo())
  9. -- log.info("mem.sys", rtos.meminfo("sys"))
  10. -- end, 3000)
  11. _G.sysplus = require("sysplus")
  12. function pinx()
  13. local bsp = rtos.bsp()
  14. if bsp:startsWith("ESP32") then
  15. return 0, 2
  16. elseif bsp == "AIR105" then
  17. return 0, pin.PC05
  18. elseif bsp == "AIR101" or bsp == "AIR103" or bsp == "AIR601" then
  19. return 0, 10
  20. else
  21. return 0, 1
  22. end
  23. end
  24. local i2cid, irq_pin = pinx()
  25. local i2c_speed = i2c.FAST
  26. sys.taskInit(function()
  27. log.info("初始化i2c")
  28. i2c.setup(i2cid, i2c_speed)
  29. log.info("初始化max30102")
  30. max30102.init(i2cid, irq_pin)
  31. -- max30102.get().wait()
  32. -- max30102.shutdown()
  33. while 1 do
  34. log.info("尝试读取")
  35. local ret,HR,SpO2 = max30102.get().wait()
  36. if ret then
  37. log.info("max30102", HR,SpO2)
  38. else
  39. log.info("max30102", "false")
  40. end
  41. sys.wait(5000)
  42. end
  43. end)
  44. -- 用户代码已结束---------------------------------------------
  45. -- 结尾总是这一句
  46. sys.run()
  47. -- sys.run()之后后面不要加任何语句!!!!!