main.lua 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. -- LuaTools需要PROJECT和VERSION这两个信息
  2. PROJECT = "sfuddemo"
  3. VERSION = "1.0.0"
  4. log.info("main", PROJECT, VERSION)
  5. sys = require("sys")
  6. --添加硬狗防止程序卡死
  7. if wdt then
  8. wdt.init(9000)--初始化watchdog设置为9s
  9. sys.timerLoopStart(wdt.feed, 3000)--3s喂一次狗
  10. end
  11. -- spi_id,pin_cs
  12. local function sfud_spi_pin()
  13. local rtos_bsp = rtos.bsp()
  14. if rtos_bsp == "AIR101" then
  15. return 0,pin.PB04
  16. elseif rtos_bsp == "AIR103" then
  17. return 0,pin.PB04
  18. elseif rtos_bsp == "AIR105" then
  19. return 5,pin.PC14
  20. elseif rtos_bsp == "ESP32C3" then
  21. return 2,7
  22. elseif rtos_bsp == "ESP32S3" then
  23. return 2,14
  24. elseif rtos_bsp == "EC618" then
  25. return 0,8
  26. else
  27. log.info("main", "bsp not support")
  28. return
  29. end
  30. end
  31. sys.taskInit(function()
  32. local spi_id,pin_cs = sfud_spi_pin()
  33. if not spi_id then
  34. while 1 do
  35. sys.wait(1000)
  36. log.info("main", "bsp not support yet")
  37. end
  38. end
  39. spi_flash = spi.deviceSetup(spi_id,pin_cs,0,0,8,20*1000*1000,spi.MSB,1,0)
  40. local ret = sfud.init(spi_flash)
  41. if ret then
  42. log.info("sfud.init ok")
  43. else
  44. log.info("sfud.init Error")
  45. return
  46. end
  47. log.info("sfud.getDeviceNum",sfud.getDeviceNum())
  48. local sfud_device = sfud.getDeviceTable()
  49. log.info("sfud.eraseWrite",sfud.eraseWrite(sfud_device,1024,"sfud"))
  50. log.info("sfud.read",sfud.read(sfud_device,1024,4))
  51. log.info("sfud.mount",sfud.mount(sfud_device,"/sfud"))
  52. log.info("fsstat", fs.fsstat("/sfud"))
  53. end)
  54. -- 用户代码已结束---------------------------------------------
  55. -- 结尾总是这一句
  56. sys.run()
  57. -- sys.run()之后后面不要加任何语句!!!!!