chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

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

RT-Thread官方賬號 ? 2024-11-21 01:05 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

概述

基于上一篇的spi 驅(qū)動的基礎(chǔ)上【S32K146 RT-Thread】之 使用SFUD 組件驅(qū)動spi flash,我們已經(jīng)實(shí)現(xiàn)了spi10設(shè)備驅(qū)動,我們使用sfud組件來驅(qū)動spi flash。

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

SFUD 驅(qū)動庫是個github 的開源項(xiàng)目rt-thread 系統(tǒng)內(nèi)已經(jīng)集成了該軟件包,我們只需要開啟即可使用。

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

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

以下是SFDP heaed結(jié)構(gòu)軟件可以中讀取flash的參數(shù)信息進(jìn)行使用

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

使用SFUD 驅(qū)動flash

menuconfig 開啟sfud

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

使用測試命令探測spiflash 發(fā)現(xiàn)已經(jīng)正常探測到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

使用測試命令擦除讀寫驗(yàn)證可以正常操作flash

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

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FlaSh
    +關(guān)注

    關(guān)注

    10

    文章

    1714

    瀏覽量

    154631
  • SPI
    SPI
    +關(guān)注

    關(guān)注

    17

    文章

    1865

    瀏覽量

    99676
  • RT-Thread
    +關(guān)注

    關(guān)注

    32

    文章

    1534

    瀏覽量

    44223
  • SFUD
    +關(guān)注

    關(guān)注

    0

    文章

    7

    瀏覽量

    1263
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    首搭RT-Thread程翧車控平臺| RT-Thread程翧 S32K344 快速原型開發(fā)平臺正式上市!| 產(chǎn)品動態(tài)

    ——基于NXPS32K344的ECU快速原型開發(fā)平臺,RT-Thread程翧S32K344快速原型開發(fā)平臺,是首個深度內(nèi)置RT-Thread程翧車控軟件平臺的快速原型開發(fā)
    的頭像 發(fā)表于 10-31 11:53 ?435次閱讀
    首搭<b class='flag-5'>RT-Thread</b>程翧車控平臺| <b class='flag-5'>RT-Thread</b>程翧 <b class='flag-5'>S32K</b>344 快速原型開發(fā)平臺正式上市!| 產(chǎn)品動態(tài)

    基于RT-Thread的EK-RA2E2 設(shè)備驅(qū)動移植與應(yīng)用 | 技術(shù)集結(jié)

    目錄前言環(huán)境配置HelloRT-ThreadGPIO輸入與中斷I2C主機(jī)驅(qū)動SPI主機(jī)驅(qū)動ADC設(shè)備驅(qū)動PWM設(shè)備驅(qū)動
    的頭像 發(fā)表于 10-05 10:06 ?5687次閱讀
    基于<b class='flag-5'>RT-Thread</b>的EK-RA2E2 設(shè)備<b class='flag-5'>驅(qū)動</b>移植與應(yīng)用 | 技術(shù)集結(jié)

    使用RT-Thread studio 開發(fā)RT-Thread Nano項(xiàng)目的時候 串口的驅(qū)動是要自己寫嗎?

    剛?cè)肟?。使?b class='flag-5'>RT-Thread studio 開發(fā)RT-Thread 標(biāo)準(zhǔn)板項(xiàng)目的時候直接使用里邊的串口uart_dev=rt_device_find(“uart5”);然后操作設(shè)備,在開發(fā)R
    發(fā)表于 09-26 08:14

    RT-Thread 5.1.0版本中調(diào)用rt_sfud_flash_probe()函數(shù)報錯的原因?

    使用RT-Thread Studio編譯器,RT-Thread版本5.1.0 三、配置過程 1、啟用SPISFUD 2、修改sfud_
    發(fā)表于 09-18 06:08

    Windows上使用ENV工具開發(fā)基于先楫MCU的RT-Thread應(yīng)用

    前言Env是RT-Thread推出的開發(fā)輔助工具,針對基于RT-Thread操作系統(tǒng)的項(xiàng)目工程,提供編譯構(gòu)建環(huán)境、圖形化系統(tǒng)配置及軟件包管理功能。其內(nèi)置的menuconfig提供了簡單易用的配置剪裁
    的頭像 發(fā)表于 08-29 12:22 ?923次閱讀
    Windows上使用ENV工具開發(fā)基于先楫MCU的<b class='flag-5'>RT-Thread</b>應(yīng)用

    在Ubuntu上開發(fā)基于先楫MCU的RT-Thread應(yīng)用指南

    1、前言RT-ThreadEnv是RT-Thread推出的開發(fā)輔助工具,針對基于RT-Thread操作系統(tǒng)的項(xiàng)目工程,提供編譯構(gòu)建環(huán)境、圖形化系統(tǒng)配置及軟件包管理功能。其內(nèi)置的menuconfig
    的頭像 發(fā)表于 08-29 12:22 ?1205次閱讀
    在Ubuntu上開發(fā)基于先楫MCU的<b class='flag-5'>RT-Thread</b>應(yīng)用指南

    SFUD驅(qū)動庫實(shí)戰(zhàn)手冊:串行SPI Flash開發(fā)全流程解析

    工作原理與實(shí)戰(zhàn)技巧。 SFUD( Serial Flash Universal Driver)是開源的串行SPI Flash通用驅(qū)動庫。 ?
    的頭像 發(fā)表于 07-29 13:19 ?513次閱讀
    <b class='flag-5'>SFUD</b><b class='flag-5'>驅(qū)動</b>庫實(shí)戰(zhàn)手冊:串行<b class='flag-5'>SPI</b> <b class='flag-5'>Flash</b>開發(fā)全流程解析

    RT-Thread Nano硬核移植指南:手把手實(shí)現(xiàn)VGLite圖形驅(qū)動適配 | 技術(shù)集結(jié)

    VGLite是NXP提供的輕量級2D圖形API,本文將手把手帶你實(shí)現(xiàn)VGLite圖形驅(qū)動適配RT-Thread。文章分為上、下兩篇,將手把手教您移植。上篇對RT-ThreadNano內(nèi)核與Finsh
    的頭像 發(fā)表于 07-17 14:40 ?3016次閱讀
    <b class='flag-5'>RT-Thread</b> Nano硬核移植指南:手把手實(shí)現(xiàn)VGLite圖形<b class='flag-5'>驅(qū)動</b>適配 | 技術(shù)集結(jié)

    SPI玩轉(zhuǎn)WiFi,RT-Thread ESP-Hosted驅(qū)動深度適配指南 | 技術(shù)集結(jié)

    還在為MCU的WiFi連接方案發(fā)愁?RT-Thread社區(qū)開源ESP-Hosted驅(qū)動,通過標(biāo)準(zhǔn)SPI接口即可實(shí)現(xiàn),并且該倉庫已整理成RT-Thread軟件包。
    的頭像 發(fā)表于 07-09 19:03 ?1088次閱讀
    用<b class='flag-5'>SPI</b>玩轉(zhuǎn)WiFi,<b class='flag-5'>RT-Thread</b> ESP-Hosted<b class='flag-5'>驅(qū)動</b>深度適配指南 | 技術(shù)集結(jié)

    RT-Thread榮獲2025優(yōu)秀開源項(xiàng)目 | 新聞速遞

    6月底,RT-Thread睿賽德受邀參與由上海開源信息技術(shù)協(xié)會主辦的2025上海開源創(chuàng)新精英薈。上海市商委副主任張杰出席會議并致辭。RT-Thread嵌入式操作系統(tǒng)項(xiàng)目憑借其卓越的技術(shù)創(chuàng)新與開源生態(tài)
    的頭像 發(fā)表于 07-04 09:04 ?2406次閱讀
    <b class='flag-5'>RT-Thread</b>榮獲2025優(yōu)秀開源項(xiàng)目 | 新聞速遞

    T-Box智能升級:NXP S32K146攜手SD NAND(嵌入式SD卡)的創(chuàng)新應(yīng)用

    SD NAND?存儲在記錄車輛運(yùn)行數(shù)據(jù)的同時,也默默收集著用戶的駕駛習(xí)慣與偏好信息。例如,通過長期記錄駕駛者的座椅調(diào)節(jié)位置、空調(diào)溫度設(shè)定、音樂播放喜好、常用導(dǎo)航目的地等數(shù)據(jù),S32K146 T-Box?能夠借助這些存儲在 SD NAND?中的數(shù)據(jù),對用戶行為進(jìn)行深度分析與建模。
    的頭像 發(fā)表于 06-09 14:43 ?1319次閱讀
    T-Box智能升級:NXP <b class='flag-5'>S32K146</b>攜手SD NAND(嵌入式SD卡)的創(chuàng)新應(yīng)用

    RT-Thread審核團(tuán)招募: 深度參與開源RTOS社區(qū)治理與演進(jìn)

    全球開發(fā)者招募:RT-Thread審核團(tuán)(ReviewTeam)正式開放申請!在開源的世界里,代碼審查(CodeReview)是保證軟件質(zhì)量、促進(jìn)技術(shù)交流的關(guān)鍵環(huán)節(jié)。RT-Thread作為全球領(lǐng)先
    的頭像 發(fā)表于 05-21 18:02 ?1055次閱讀
    <b class='flag-5'>RT-Thread</b>審核團(tuán)招募: 深度參與開源RTOS社區(qū)治理與演進(jìn)

    如何在S32K146中實(shí)現(xiàn)以下功能?

    原來有一個項(xiàng)目芯片是MPC5606B(CodeWarrior編譯器),現(xiàn)在換成S32K146S32DS ARM),其中有段代碼移植遇到了些問題,請問如何在S32K146中實(shí)現(xiàn)以下功能,請幫忙
    發(fā)表于 04-04 08:00

    如何使用S32 Design Studio for ARM將自定義數(shù)據(jù)放入SRAM中以進(jìn)行S32K146

    如何使用 S32 Design Studio for ARM 將自定義數(shù)據(jù)放入 SRAM 中以進(jìn)行S32K146?
    發(fā)表于 04-01 08:27

    如何將RT-Thread移植到NXP MCUXPressoIDE上

    RT-Thread默認(rèn)支持的IDE只有IAR 和 Keil, 那如何將RT-Thread移植到NXP MCUXPressoIDE上呢?本文內(nèi)容比較簡單但稍有瑣碎,希望對有需要的小伙伴有所幫助。
    的頭像 發(fā)表于 02-13 10:37 ?2420次閱讀
    如何將<b class='flag-5'>RT-Thread</b>移植到NXP MCUXPressoIDE上