- 開發板
- 正點原子的STM32F407探索者
- IDE
- RT-Thread Studio
- FLASH
- W25Q128
- FATFS
- 參考RTThread官方文檔
步驟一:創建基礎工程
點擊完成。修改main.c中對應LED0燈的引腳
步驟二:點擊RT-Thread setting在圖形界面配置需要的組件和驅動
W25Q128是16M spi flash,一共有256個block ,每個Block 64KB。
一個Block可以分割為16個扇區(small sector),每個扇區4096字節(4KB),所以我們需要修改fatfs的扇區大小為4096
步驟三:根據RTT官網文檔對SPI驅動進行修改,右擊SPI 圖標-->選擇開發文檔-->驅動開發文檔
SPI 設備驅動的開發可總結為如下:
*** 新建 RT-Thread 完整版項目**
*** 打開 SPI 設備驅動框架**
*** 定義 SPI 總線相關的宏**
*** 打開 HAL 庫函數對 SPI 總線的支持**
*** 復制 SPI 引腳初始化函數到工程**
在rtthread源碼中
rt-thread/ bsp / stm32 / stm32f407-atk-explorer / board / CubeMX_Config / Src目錄下有stm32f4xx_hal_msp.c
文件中有CubeMX針對SPI的初始化函數將其拷貝到drv_spi.c的文末。
編譯,下載到板子。結果如圖
步驟四:添加SPI從設備,也就是W25Q128設備
添加文件和代碼
下載到開發板