ソースを参照

update:修改780EHM-flash-demo

马亚丹 4 ヶ月 前
コミット
e152ce04af

+ 4 - 4
module/Air780EHM_Air780EHV_Air780EGH/demo/accessory_board/AirSPINAND_1000/raw_spi.lua

@@ -32,7 +32,7 @@ local CS_PIN = 8                  -- CS引脚,根据实际情况修改
 local CPHA = 0                     -- 时钟相位
 local CPOL = 0                     -- 时钟极性
 local data_Width = 8               -- 数据宽度(位)
-local bandrate = 2000000           -- 波特率(Hz),初始化为2MHz
+local bandrate = 2*1000*1000           -- 波特率(Hz),初始化为2MHz
 local timeout = 1000               -- 操作超时时间(ms)
 local cspin = gpio.setup(CS_PIN, 1) --CS脚置于高电平
 spi_device = nil
@@ -70,9 +70,9 @@ end
 local function spiDev_init_func()
     log.info("W25N01GV", "初始化SPI1...")
     spi_device = spi.deviceSetup(SPI_ID, nil, CPHA, CPOL, data_Width, bandrate,
-        spi.MSB,    --高低位顺序
-        spi.master, --主模式
-        spi.half    --半双工
+        spi.MSB,    --高低位顺序    可选,默认高位在前
+    spi.master,     --主模式        可选,默认主
+        spi.half    --半双工        spi flash只支持半双工
     )
     if not spi_device then
         log.error("SPI初始化失败")

+ 2 - 2
module/Air780EHM_Air780EHV_Air780EGH/demo/accessory_board/AirSPINORFLASH_1000/lf_fs.lua

@@ -5,7 +5,7 @@
 @date    2025.9.05
 @author  马亚丹
 @usage
-本demo演示的功能为:使用Air780EHM/EHV/EGH核心板通过SPI库实现对 NOR Flash的操作,演示读数据写数据、删除数据等操作。
+本demo演示的功能为:使用Air780EHM/EHV/EGH核心板通过SPI核心库/lf核心库/io核心库实现对 NOR Flash的操作,演示读数据写数据、删除数据等操作。
 以Air780EHM/EHV/EGH核心板为例, 接线如下:
 
 Air780EHM/EHV/EGH核心板    AirSPINORFLASH_1000配件版
@@ -33,7 +33,7 @@ local CS_PIN = 8        -- CS引脚,根据实际情况修改
 local CPHA = 0          -- 时钟相位
 local CPOL = 0          -- 时钟极性
 local data_Width = 8    -- 数据宽度(位)
-local bandrate = 2000000 -- 波特率(Hz),初始化为2MHz
+local bandrate = 2*1000*1000 -- 波特率(Hz),初始化为2MHz
 
 
 -- 1. 以对象方式设置并启用 SPI,返回设备对象

+ 7 - 7
module/Air780EHM_Air780EHV_Air780EGH/demo/accessory_board/AirSPINORFLASH_1000/raw_spi.lua

@@ -5,7 +5,7 @@
 @date    2025.9.05
 @author  马亚丹
 @usage
-本demo演示的功能为:使用Air780EHM/EHV/EGH核心板通过SPI库实现对Flash的操作,演示读数据写数据、删除数据等操作。
+本demo演示的功能为:使用Air780EHM/EHV/EGH核心板通过SPI核心原始接口实现对Flash的操作,演示读数据写数据、删除数据等操作。
 以 Air780EHM/EHV/EGH核心板为例, 接线如下:
 
 Air780EHM/EHV/EGH核心板    AirSPINORFLASH_1000配件版
@@ -35,18 +35,18 @@ local CS_PIN = 8                   -- CS引脚,根据实际情况修改
 local CPHA = 0                     -- 时钟相位
 local CPOL = 0                     -- 时钟极性
 local data_Width = 8               -- 数据宽度(位)
-local bandrate = 2000000           -- 波特率(Hz),初始化为2MHz
-local timeout = 500                -- 操作超时时间(ms)
+local bandrate = 2*1000*1000           -- 波特率(Hz),初始化为2MHz
+local timeout = 1000                -- 操作超时时间(ms)
 local cspin = gpio.setup(CS_PIN, 1) --CS脚置于高电平
 
 
 -- 1. 设置并启用 SPI
 local function spiDev_init_func()
     log.info("raw_spi", "SPI_ID", SPI_ID, "CS_PIN", CS_PIN)
-    local spiDevice = spi.setup(SPI_ID,nil, CPHA,CPOL,data_Width,bandrate
-    -- spi.MSB,--高低位顺序    可选,默认高位在前
-    -- spi.master,--主模式     可选,默认主
-    -- spi.full--全双工       可选,默认全双工
+    local spiDevice = spi.setup(SPI_ID,nil, CPHA,CPOL,data_Width,bandrate,
+    spi.MSB,    --高低位顺序    可选,默认高位在前
+    spi.master, --主模式        可选,默认主
+    spi.half    --半双工       spi flash只支持半双工
     )
 
     log.info("硬件spi", "初始化,波特率:", spiDevice, bandrate)

+ 1 - 1
module/Air780EHM_Air780EHV_Air780EGH/demo/accessory_board/AirSPINORFLASH_1000/readme.md

@@ -1,6 +1,6 @@
 ## 功能模块介绍:
 
-1. main.lua:主程序入口,以下个脚本按自己的需求选择其一使用即可,另外两个注释。
+1. main.lua:主程序入口,以下个脚本按自己的需求选择其一使用即可,另外两个注释。
 
 2. raw_spi:通过原始spi接口对flash模块进行读写数据操作,详细逻辑请看raw_spi.lua 文件
 

+ 1 - 1
module/Air780EHM_Air780EHV_Air780EGH/demo/accessory_board/AirSPINORFLASH_1000/sfud_test.lua

@@ -5,7 +5,7 @@
 @date    2025.10.11
 @author  马亚丹
 @usage
-本demo演示的功能为:使用Air780EHM/EHV/EGH核心板通过SPI库实现对 NOR Flash的操作,演示读数据写数据、删除数据等操作。
+本demo演示的功能为:使用Air780EHM/EHV/EGH核心板通过SPI核心库/sfud核心库实现对 NOR Flash的操作,演示读数据写数据、删除数据等操作。
 以Air780EHM/EHV/EGH核心板为例, 接线如下:
 
 Air780EHM/EHV/EGH核心板    AirSPINORFLASH_1000配件版