--- 模块功能:sx126x模块驱动 -- 读取FLASH ID -- @author openLuat -- @module spi.testSpiFlash -- @license MIT -- @copyright openLuat -- @release 2018.03.27 module(...,package.seeall) require"utils" require"pm" pm.wake("wake11") require"pins" -- require "sx126x_reg" require "Drv_spi" SX126xResetGPIO = pins.setup(pio.P0_13,0) -- 初始化SPI function SX126xIoInit() Drv_spi.SPI_GPIO_Init() end -- 复位SX126x function SX126xReset() sys.wait(10) SX126xResetGPIO(0) sys.wait(20) SX126xResetGPIO(1) sys.wait(10) end -- 初始化SX126x function SX126xInit() SX126xIoInit() SX126xReset() end function SX126xWakeup() Drv_spi.drv_spi_read_write_byte("C00000",2) end function SX126xWriteCommand(command ,buffer) Drv_spi.drv_spi_read_write_byte(command,0) sys.wait(20) drv_spi_read_write_byte(buffer); sys.wait(20) end -- --测试案例 -- sys.taskInit(function () -- sys.wait(3000) -- -- SX126xInit() -- sys.wait(3000) -- i = 0 -- while true do -- -- local ret = Drv_spi.drv_spi_read_write_byte("1D0740000000",4) -- -- log.info("提取结果", ret) -- 输出: 1D0F -- log.info("计算结果", i%2) -- if i%2 == 0 then -- log.info("1") -- SX126xResetGPIO(1) -- else -- log.info("0") -- SX126xResetGPIO(0) -- end -- i = i + 1 -- sys.wait(3*1000) -- end -- spi.close(spi.SPI_1) -- end)