| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- -- LuaTools需要PROJECT和VERSION这两个信息
- PROJECT = "fatfs"
- VERSION = "1.0.0"
- -- sys库是标配
- _G.sys = require("sys")
- -- 注意: V0006 beta5 开始才有fatfs模块,而且默认不包含进固件.
- --[[
- 接线要求:
- TF模块通常是5V, 然后用转3.3v, 记得使用5V供电.
- SPI 使用常规4线解法, 本demo使用的GPIO18作为CS, 没使用默认SPI_CS.
- ]]
- local NETLED = gpio.setup(19, 0, gpio.PULLUP) -- 输出模式
- sys.taskInit(function()
- while 1 do
- -- 一闪一闪亮晶晶
- NETLED(0)
- sys.wait(500)
- NETLED(1)
- --G18(1)
- sys.wait(500)
- end
- end)
- sys.taskInit(function()
- sys.wait(5000) -- 启动延时
- local spiId = 0
- local cs = 0
- local result = spi.setup(
- spiId,--串口id
- cs,
- 0,--CPHA
- 0,--CPOL
- 8,--数据宽度
- 400*0000--,--频率
- -- spi.MSB,--高低位顺序 可选,默认高位在前
- -- spi.master,--主模式 可选,默认主
- -- spi.full--全双工 可选,默认全双工
- )
- gpio.setup(18, 1)
- --fatfs.debug(1) -- 若挂载失败,可以尝试打开调试信息,查找原因
- fatfs.mount("SD", 0, 18)
- local data, err = fatfs.getfree("SD")
- if data then
- log.info("fatfs", "getfree", json.encode(data))
- else
- log.info("fatfs", "err", err)
- end
- -- 重新设置spi,使用更高速率
- spi.close(0)
- sys.wait(100)
- spi.setup(spiId, cs, 0, 0, 8, 2*1000*1000)
- local data, err = fatfs.getfree("SD")
- if data then
- log.info("fatfs", "getfree", json.encode(data))
- else
- log.info("fatfs", "err", err)
- end
- end)
- -- 用户代码已结束---------------------------------------------
- -- 结尾总是这一句
- sys.run()
- -- sys.run()之后后面不要加任何语句!!!!!
|