在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

【S32K146 RT-Thread】之 使用SFUD組件驅動spi flash

RT-Thread官方賬號 ? 2024-11-21 01:05 ? 次閱讀

概述

基于上一篇的spi 驅動的基礎上【S32K146 RT-Thread】之 使用SFUD 組件驅動spi flash,我們已經實現了spi10設備驅動,我們使用sfud組件來驅動spi flash。

SFUD 是一款開源的串行 SPI Flash 通用驅動庫。由于現有市面的串行 Flash 種類居多,各個 Flash 的規格及命令存在差異, SFUD 就是為了解決這些 Flash 的差異現狀而設計,讓我們的產品能夠支持不同品牌及規格的 Flash,提高了涉及到 Flash 功能的軟件的可重用性及可擴展性,同時也可以規避 Flash 缺貨或停產給產品所帶來的風險。

SFUD 驅動庫是個github 的開源項目rt-thread 系統內已經集成了該軟件包,我們只需要開啟即可使用。

JESD216 SFDP標準產生的背景
隨著串行Flash市場不斷的擴張,串行Flash的指令、功能和特性也日趨增多,而且各個廠商在串行Flash器件上的功能和特性也無法完全一致。例如,在扇區擦除功能上,支持4kB、32kB、64kB的擦除操作雖然分別有相應的指令,但是不同廠商的器件還是會存在一些指令和功能的差異。為了準確地完成系統的兼容性測試或者是考慮到容量的升級,開發和設計人員需要詳細閱讀每一份串行Flash的產品規范,了解引腳的分布和定義是否一致,操作所需要用到的功能指令是否完全兼容,從而對底層設備驅動軟件做相應的增補和修改,甚至改動到硬件,這無疑給項目的設計、維護和更新帶來一些不便。

因此,串行Flash器件迫切需要一個統一規范的功能參數表,可以讓開發和設計人員明確地讀取到每一個所使用串行Flash的功能和參數特性。JEDEC的新規范JESD216 SFDP就是在這樣的一個市場環境下孕育而生的。

以下是SFDP heaed結構軟件可以中讀取flash的參數信息進行使用

ae314e82-a761-11ef-8084-92fbcf53809c.jpgae3b16a6-a761-11ef-8084-92fbcf53809c.jpg

使用SFUD 驅動flash

menuconfig 開啟sfud

ae45c36c-a761-11ef-8084-92fbcf53809c.jpg

使用測試命令探測spiflash 發現已經正常探測到16MB的flash。

msh />sf probe spi10[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud.c:871) The flash device manufacturer ID is 0xC2, memo[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:132) Check SFDP header is OK. The reversion is[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:175) Check JEDEC basic flash parameter header[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:203) JEDEC basic flash parameter table info:[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:204) MSB-LSB 3 2 1 0[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:207) [0001] 0xFF 0xF1 0x20 0xE5[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:207) [0002] 0x07 0xFF 0xFF 0xFF[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:207) [0003] 0x6B 0x08 0xEB 0x44[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:207) [0004] 0xBB 0x04 0x3B 0x08[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:207) [0005] 0xFF 0xFF 0xFF 0xFE[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:207) [0006] 0xFF 0x00 0xFF 0xFF[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:207) [0007] 0xEB 0x44 0xFF 0xFF[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:207) [0008] 0x52 0x0F 0x20 0x0C[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:207) [0009] 0xFF 0x00 0xD8 0x10[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:215) 4 KB Erase is supported throughout the de[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:234) Write granularity is 64 bytes or larger.[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:245) Target flash status register is non-volat[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:271) 3-Byte only addressing.[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:305) Capacity is 16777216 Bytes.[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:312) Flash device supports 4KB block erase. Co[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:312) Flash device supports 32KB block erase. C[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud_sfdp.c:312) Flash device supports 64KB block erase. C[I/SFUD] Found a Macronix flash chip. Size is 16777216 bytes.[D/SFUD] (D:\work\andeyqi_rtthread\rt-thread\components\drivers\spi\sfud\src\sfud.c:849) Flash device reset success.[I/SFUD] sf_cmd flash device initialized successfully.[I/SFUD] Probe SPI flash sf_cmd by SPI device spi10 success.

從log 讀取的Parameter Table (0): JEDEC Flash Parameter Tables芯片手冊的描述是匹配的。

ae49efbe-a761-11ef-8084-92fbcf53809c.pngae4f0b98-a761-11ef-8084-92fbcf53809c.jpg

使用測試命令擦除讀寫驗證可以正常操作flash

ae57209e-a761-11ef-8084-92fbcf53809c.jpg

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FlaSh
    +關注

    關注

    10

    文章

    1635

    瀏覽量

    148023
  • SPI
    SPI
    +關注

    關注

    17

    文章

    1706

    瀏覽量

    91581
  • RT-Thread
    +關注

    關注

    31

    文章

    1289

    瀏覽量

    40129
  • SFUD
    +關注

    關注

    0

    文章

    5

    瀏覽量

    1063
收藏 人收藏

    評論

    相關推薦

    恩智浦FRDM-MCXA153 RT-Thread實踐指南 實現和優化RT-ThreadSPI驅動

    串行外設接口(SPI)是一種廣泛使用的同步串行通信接口,在嵌入式系統中扮演著重要角色。本文將深入探討如何在NXP MCXA153 MCU上實現和優化RT-ThreadSPI驅動,同時
    的頭像 發表于 11-14 08:58 ?1101次閱讀
    恩智浦FRDM-MCXA153 <b class='flag-5'>RT-Thread</b>實踐指南 實現和優化<b class='flag-5'>RT-Thread</b>的<b class='flag-5'>SPI</b><b class='flag-5'>驅動</b>

    RT-Thread上CAN實踐

    開箱測試RT-Thread官方已完成了對英飛凌XMC7200EVK的移植,通過shell可以看到做好了uart3的console。本文將介紹如何進行RT-ThreadCan移植。接下來我們要完成CAN_FD的驅動移植,并正常啟動
    的頭像 發表于 11-13 01:03 ?1179次閱讀
    <b class='flag-5'>RT-Thread</b>上CAN實踐

    基于NXP MCXA153 MCU實現RT-Thread的MTD NOR Flash驅動

    在嵌入式系統中,片上Flash存儲器是一個關鍵組件,用于存儲程序代碼和關鍵數據。本文將詳細介紹如何在NXPMCXA153 MCU上實現RT-Thread的MTD (Memory Technology Device) NOR
    的頭像 發表于 11-09 14:00 ?459次閱讀
    基于NXP MCXA153 MCU實現<b class='flag-5'>RT-Thread</b>的MTD NOR <b class='flag-5'>Flash</b><b class='flag-5'>驅動</b>

    S32K146 RT-thread SPI驅動適配

    概述RT-ThreadSPI總線的驅動,抽象出了spibus的設備驅動,我們基于S32K146的硬件學習spibus設備
    的頭像 發表于 11-01 08:11 ?396次閱讀
    【<b class='flag-5'>S32K146</b> <b class='flag-5'>RT-thread</b>】<b class='flag-5'>之</b> <b class='flag-5'>SPI</b><b class='flag-5'>驅動</b>適配

    2024 RT-Thread全球巡回 線下培訓火熱來襲!

    親愛的RT-Thread社區成員們:我們非常高興地宣布,2024年RT-Thread全球開發者線下培訓即將拉開帷幕!24年全球巡回培訓將覆蓋超10座城市及國家,為開發者提供一個深入學習RT-Thread嵌入式開發的絕佳機會。
    的頭像 發表于 08-07 08:35 ?1236次閱讀
    2024 <b class='flag-5'>RT-Thread</b>全球巡回 線下培訓火熱來襲!

    【好書推薦】RT-Thread設備驅動開發指南

    強烈,他們迫切地希望有一本可以指導他們在RT-Thread上開發驅動的指南。為了解決開發者的燃眉急,《RT-Thread設備驅動開發指南》
    的頭像 發表于 08-01 08:35 ?642次閱讀
    【好書推薦】<b class='flag-5'>RT-Thread</b>設備<b class='flag-5'>驅動</b>開發指南

    實時操作系統RT-Thread及FreeRTOS

    RT-Thread與其他很多RTOS如FreeRTOS的主要區別之一是,它不僅僅是一個實時內核,還具備豐富的中間層組件,如下圖所示。FreeRTOS和RT-Thread是兩種常見的嵌入式實時操作系統
    的頭像 發表于 05-29 08:10 ?3899次閱讀
    實時操作系統<b class='flag-5'>之</b><b class='flag-5'>RT-Thread</b>及FreeRTOS

    6月6日杭州站RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    6月6日下午我們將在杭州舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺上實現同時運行RT-Thread和linux,本次workshop邀請到RT-Thread資深
    的頭像 發表于 05-28 08:35 ?447次閱讀
    6月6日杭州站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    【Vision Board創客營連載體驗】RA8D1 Vision Board 實現 FAL 同時調用片上以及外掛 Flash

    ?即如何區別 QSPI 與 SPI? 為何 SFUD 最后會報錯提示 [E/SFUD] ERROR: Flash device W25Q64 not found! ? 使用軟件:
    發表于 04-24 17:31

    4月25日北京站RT-Thread線下workshop,探索RT-Thread混合部署新模式

    4月25日,下午我們將在北京舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺上實現同時運行RT-Thread和linux,本次workshop邀請到RT-Thread資深
    的頭像 發表于 04-16 08:35 ?423次閱讀
    4月25日北京站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式

    4月10日深圳場RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    4月10日我們將在深圳福田舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺上實現同時運行RT-Thread和linux,本次workshop邀請到RT-Thread資深嵌入式軟件工程師農曉明老師為您講
    的頭像 發表于 03-27 11:36 ?825次閱讀
    4月10日深圳場<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    4月10日深圳場RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    4月10日我們將在深圳福田舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺上實現同時運行RT-Thread和linux,本次workshop邀請到RT-Thread資深
    的頭像 發表于 03-27 08:34 ?537次閱讀
    4月10日深圳場<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    恩智浦半導體正式加入RT-Thread全球合作伙伴計劃!

    前不久,恩智浦半導體正式加入RT-Thread全球合作伙伴計劃,成為RT-Thread高級會員合作伙伴。同時,RT-Thread現已成為恩智浦注冊合作伙伴(RT-Thread| 簡介合
    的頭像 發表于 03-14 10:40 ?624次閱讀
    恩智浦半導體正式加入<b class='flag-5'>RT-Thread</b>全球合作伙伴計劃!

    RT-Thread設備驅動開發指南》基礎篇--以先楫bsp的hwtimer設備為例

    一、概述(一)RT-Thread設備驅動RT-Thread設備驅動開發指南》書籍是RT-thread官方出品撰寫,系統講解
    的頭像 發表于 02-24 08:16 ?1658次閱讀
    《<b class='flag-5'>RT-Thread</b>設備<b class='flag-5'>驅動</b>開發指南》基礎篇--以先楫bsp的hwtimer設備為例

    RT-Thread設備驅動開發指南基礎篇—以先楫bsp的hwtimer設備為例

    RT-Thread設備驅動開發指南》書籍是RT-thread官方出品撰寫,系統講解RT-thread IO設備驅動開發方法,從三方面進行講解
    的頭像 發表于 02-20 16:01 ?1713次閱讀
    <b class='flag-5'>RT-Thread</b>設備<b class='flag-5'>驅動</b>開發指南基礎篇—以先楫bsp的hwtimer設備為例
    主站蜘蛛池模板: 午夜特级毛片| 你懂的手机在线视频| 九九热在线观看| 亚洲免费视频网址| 手机免费看a| 国产欧美精品一区二区色综合 | 日处女穴| 正在播放91| 经典三级一区二区三区视频| 色天天干| 国产成人精品高清免费| 欧美高清一区| 色妞女女女女女bbbb| 国语一区| 狠狠狠色丁香婷婷综合久久88 | 国产一级片免费| 狠狠草视频| 亚洲国产高清人在线| 国产精品国产主播在线观看 | 成年1314在线观看| 日本最色视频| 天天槽天天槽天天槽| 老师受年下高h男| 九色综合久久综合欧美97| 国产免费一区二区三区香蕉精| 国产大片黄在线看免费| 色婷婷综合在线| 天天激情站| 中国特黄毛片| 爽天天天天天天天| 日本一卡二卡3卡四卡网站精品| 三浦理惠子中文在| 亚洲啊v| 好男人社区www的视频免费| 成人综合在线视频| 四虎影视院| 日韩一级片在线免费观看| 真人一级一级特黄高清毛片| 丁香午夜| 中文字幕一区二区三区不卡| 美女毛片视频|