Explorar el Código

修改路径,移植Drv_spi.h内的文件

xuxinyi hace 4 meses
padre
commit
71b83c4eb2
Se han modificado 3 ficheros con 52 adiciones y 34 borrados
  1. 51 0
      drv_periph/Drv_spi.lua
  2. 1 2
      main.lua
  3. 0 32
      testSpiFlash.lua

+ 51 - 0
drv_periph/Drv_spi.lua

@@ -0,0 +1,51 @@
+--- 模块功能:SPI接口的实现
+-- 读取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"
+
+result = nil 
+
+--[[
+    初始化SPI接口
+]]
+function SPI_GPIO_Init()
+    result = spi.setup(spi.SPI_1,0,0,8,800000,1)--初始化spi,
+    log.info("spi1",spi.SPI_1)
+    log.info("Lora Spi init :",result)
+end
+
+--[[
+    初始化SPI接口,底层接口
+    @param txDat 要发送的数据:string类型
+    @param len 要发送的数据长度=要收到的数据长度:例如:1D0740000000 有效数据:1D0740 站位数据:00  要读取的位数0000,4个0,len就是4,实际读取的是两个字节 0x1424
+    @return string类型,返回接收到的数据
+]]
+function drv_spi_read_write_byte(txDat,len)
+    local ret = spi.send_recv(spi.SPI_1,string.fromHex(txDat)):toHex()
+    return string.sub(ret, -len)  -- 从倒数第四个字符到末尾
+end
+
+
+--测试案例
+-- sys.taskInit(function ()
+--     sys.wait(3000)
+--     SPI_GPIO_Init()
+--     sys.wait(3000)
+--     while true do
+--         local ret = drv_spi_read_write_byte("1D0740000000",4)
+
+--         log.info("提取结果", ret)  -- 输出: 1D0F
+--         sys.wait(2000)
+--     end
+--     spi.close(spi.SPI_1)
+-- end)

+ 1 - 2
main.lua

@@ -64,8 +64,7 @@ errDump.request("udp://dev_msg1.openluat.com:12425", nil, true)
 --require "update"
 --update.request()
 
---加载SPI接口的FLASH功能测试模块
-require "testSpiFlash"
+require "Drv_spi"
 
 --启动系统框架
 sys.init(0, 0)

+ 0 - 32
testSpiFlash.lua

@@ -1,32 +0,0 @@
---- 模块功能:SPI接口的FLASH功能测试.
--- 读取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"
-
-local result = spi.setup(spi.SPI_1,0,0,8,800000,1)--初始化spi,
-log.info("spi1",spi.SPI_1)
-log.info("testSpiFlash.init",result)
-
-sys.taskInit(function ()
-    sys.wait(5000)
-    while true do
-        local command = string.fromHex("1D0740000000") 
-        local ret = spi.send_recv(spi.SPI_1,command):toHex()
-        log.info("testSpiFlash.readFlashID",ret)--收发读写  & string.fromHex("000000FFFFFF")
-        local lastFourChars = string.sub(ret, -4)  -- 从倒数第四个字符到末尾
-        log.info("提取结果", lastFourChars)  -- 输出: 1D0F
-        
-        sys.wait(2000)
-    end
-    spi.close(spi.SPI_1)
-end)