91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

【試用報告】STM32與RT-Thread的完美結(jié)合:SD卡操作的順暢體驗!

電子發(fā)燒友論壇 ? 來源:未知 ? 2023-07-11 09:20 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本篇將介紹——如何在正點原子STM32探索者V3開發(fā)板上使用RT-ThreadSDIO驅(qū)動和FATFS文件系統(tǒng)組件實現(xiàn)SD卡上的文件讀寫。


開始本篇實驗前,需要搭建RT-Thread開發(fā)環(huán)境,可以參考我之前的帖子:【正點原子STM32探索者V3開發(fā)板體驗】體驗RT-Thread 5.0.0版本


在正點原子STM32探索者V3開發(fā)板上使用RT-Thread驅(qū)動SD卡實現(xiàn)文件讀寫只需要三步:


  • 配置FATFS和SDIO功能

  • 編譯項目代碼

  • 燒錄程序到開發(fā)板


對,你沒看錯,不用寫代碼,只需要改改配置,編譯、燒錄、運行就可以了!


一、準備工作


1.1 準備好開發(fā)板和SD卡

開始本篇實驗之前,需要準備一個MicroSD卡,我這里準備的是一個32G的閃迪卡:



1.2 創(chuàng)建RT-Thread項目

和上一篇文章類似,首先打開RT-Thread Env工具, 并跳轉(zhuǎn)到rt-thread源碼的bsp/stm32/stm32f407-atk-explorer子目錄。


然后,使用如下scons命令,創(chuàng)建RT-Thtread項目:

scons --dist --target=mdk --project-name=rtt_sdio --project-path=D:\Hardware\ST\ExplorerV3_STM32F407\Elecfans_03\rtt_sdio

(左右移動查看全部內(nèi)容)


如下圖所示:



注:如果已有RT-Thread項目,則可以跳過此步驟。


該命令執(zhí)行完成后,就可以看到創(chuàng)建的目錄和文件了:



其中,rtt_sdio.uvprojx即為剛剛scons命令生成的Keil項目文件。


二、配置RT-Thread


PS:這個以RT-Thread Env工具為例,對RT-Thread進行配置,如果是使用RT-Thread Studio創(chuàng)建項目,進行配置也是類似的。


2.1 打開文件系統(tǒng)相關(guān)配置

RT-Thread Env命令行窗口跳轉(zhuǎn)到項目所在目錄后,執(zhí)行meuconfig命令并回車,打開配置界面:



常用操作說明:

  • 上下鍵,移動光標

  • 回車鍵,進入配置項

  • ESC鍵,退出當前配置,返回上一級配置

  • 空格鍵,選中或取消光標所在配置項

  • “/”鍵,搜索界面


在 Hardware Drivers Config -> Onboard Periopheral Drivers 配置中,選中 Enable File System:



PS:該配置項選(BSP_USING_FS)中后,會自動選中RT_USING_DFS和RT_USING_DFS_ROMFS配置項。


2.2 打開SD卡相關(guān)配置

選中 Hardware Drivers Config -> Onboard Periopheral Drivers -> Enable File System (BSP_USING_FS)配置項后,繼續(xù)回車:



選中Enable SDCARD配置項目,如上圖所示。


然后左右移動底部光標到Save菜單上,回車保存,提示保存為.config:



回車后,彈出提示說配置已寫入到.config了:



敲回車,界面將會返回配置界面。


此時,我們的對項目配置的修改已經(jīng)保存到.config文件了,我們只需要連續(xù)按ESC鍵即可退出配置界面。


2.3 打開RTC配置

類似的,找到并打開如下配置項:



該配置項用于打開RTC功能,以實現(xiàn)計時功能(PS:文件系統(tǒng)需要計時功能)。


2.4 重新生成Keil項目文件

由于剛剛我們修改了配置項,開啟了文件系統(tǒng)和SD卡相關(guān)的配置項目,需要重新生成Keil項目文件,才能正常編譯成功。


在當前項目目錄中,使用如下命令,重新生成Keil項目文件:

scons --target=mdk --project-name=rtt_sdio

(左右移動查看全部內(nèi)容)


如下圖所示:




三、編譯、燒錄、運行


3.1 編譯項目

由于我安裝的是Keil 5.37,需要先切換默認便器才可以正常編譯通過。


切換默認編譯器,具體操作為:



在彈出的Options for Target - rt-thread界面中,下拉ARM Compiler,選擇Use default compiler version 6,即使用默認的版本6編譯器;


點擊底部的OK,確認。


修改完默認編譯器后,點擊編譯圖標(或者按快捷鍵F7進行編譯),將會開始編譯:



編譯完成后,Build Output將會看到:



有一個Error,重新編譯一下,可以直接看得清楚,不用往回找是哪個文件編譯報錯:



報錯信息說:

  • board/ports/drv_filesystem.c文件中,聲明變量romfs_root為static,

  • rt-thread/components/dfs/filesystems/romfs\dfs_romfs.h文件中,聲明變量romfs_root為非static,


前后聲明不一致,導(dǎo)致報錯,解決方法很簡單, 將drv_filesystem.c中的static去掉即可 。


修改后,再次重新編譯,就可以編譯通過了:



3.2 下載程序

編譯成功后,我們需要將生成的二進制程序代碼文件燒錄到開發(fā)板上。


開始測試之前,我們需要先將MicroSD卡插入開發(fā)板(建議斷電操作,PC端先斷開):



插入SD卡后,檢查開發(fā)板和PC之間的USB線和JTAG調(diào)試器連接。


由于我使用的是JLink調(diào)試器,因此還需要修改項目的調(diào)試器設(shè)置(Keil項目默認的調(diào)試器設(shè)置是ULINK)。


修改Keil項目的調(diào)試設(shè)置,具體操作如下(這里以JLink為例):





這里,我修改了Port為SW,代表使用SWD接口(JTAG也可以),Max表示最大時鐘信號頻率,修改為50M下載速度更快。


看到成功識別了 ARM CoreSight JTAG-DP,說明JLINK調(diào)試器已經(jīng)成功識別到主控芯片了。



最后點擊確定,回到Options for Target - Blinky界面,點擊OK,保存設(shè)置;


以上準備就緒后,在Keil中,點擊Download按鈕(或者F8快捷鍵),開始下載程序到開發(fā)板:



3.3 運行程序

燒錄完成后,連接串口,輸入help命令回車可以看到:



可以看到文件系統(tǒng)相關(guān)的操作命令:

  • mkfs,可以用于創(chuàng)建文件系統(tǒng)

  • mount,可以用于掛載文件系統(tǒng)

  • umount,可以用于卸載文件系統(tǒng)


還有文件相關(guān)的操作命令:

  • cp,拷貝文件

  • mv,移動或重命名文件

  • cat,顯示文件內(nèi)容

  • echo,可用于創(chuàng)建或?qū)懭胛募?/p>


四、在msh中操作SD卡


燒錄完成后,我們就可以在RT-Thread的msh環(huán)境中愉快地操作SD卡了。


4.1 查看設(shè)備

輸入list device命令并回車,可以查看設(shè)備:



這里sd0為分區(qū),后續(xù)會對他進行操作。


4.2 格式化SD卡

初次使用的SD卡,可能沒有文件系統(tǒng),或者文件系統(tǒng)不是FAT格式的,需要將SD卡格式化為FAT文件系統(tǒng),后續(xù)才能掛載成功。


注意:格式化操作會導(dǎo)致SD卡上已有數(shù)據(jù)全部丟失;因此,在執(zhí)行格式化操作前,請確認SD卡上沒有重要數(shù)據(jù),或者你已對SD卡上的重要數(shù)據(jù)進行了備份。


mkfs命令用法:



接下來,我們可以通過mkfs命令對SD卡進行格式化:



mkfs執(zhí)行會持續(xù)一段時間,請耐心等待(具體因不同SD卡容量和速度等級而異,我的32GB卡消耗了幾秒鐘)。


4.3 掛載文件系統(tǒng)

接下來,我們可以在串口終端內(nèi)使用mount命令將SD卡掛載到根目錄:



mount -h可以查看mount命令的用法:



另外需要注意的是,fstype參數(shù)使用的是elm(這里的elm實際就是FATFS)。


4.4 簡單的文件讀寫測試

前面提到echo命令比較特殊,可以寫文件,接下來使用echo寫文件,cat讀文件,ls查看文件:



這里使用了ls、echo、cat命令,進行了文件讀寫操作。


4.5 簡單的目錄操作測試

接下來,進行簡單的目錄操作演示。



這里首先使用了pwd查看當前工作目錄,然后演示了ls、mkdir、cd命令;


如果你是對RT-Thread了解不多的朋友,看到這里可能會非常驚奇——在一個可以運行在單片機RTOS上,居然可以這么方便的進行文件系統(tǒng)、目錄、文件操作。


五、本篇小結(jié)


可以看到,在基于RT-Thread系統(tǒng)的項目中,我們沒有添加任何代碼,就可以實現(xiàn)SD卡進行文件系統(tǒng)和件相關(guān)操作。這是因為RT-Thread系統(tǒng)正點原子STM32探索者V3開發(fā)板的BSP中已經(jīng)支持了SDIO功能,另外RT-Thread系統(tǒng)本身包含了SDIO驅(qū)動框架、FATFS支持,以及相關(guān)的命令。因此,我們可以在shell中非常方便的進行文件系統(tǒng)相關(guān)操作,以及文件相關(guān)操作。


參考鏈接

  • RT-Thread Env工具下載:https://www.rt-thread.org/download.html#download-rt-thread-studio

  • RT-Thread Env 用戶手冊:https://www.rt-thread.org/document/site/#/development-tools/env/env

  • RT-Thread 5.0.0 發(fā)布聲明:https://mp.weixin.qq.com/s/x9Sb3hc_GxV5VYfagGKhcA

  • RT-Thread RTC設(shè)備文檔:https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/programming-manual/device/rtc/rtc

  • RT-Thread 虛擬文件系統(tǒng):https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/programming-manual/filesystem/filesystem





聲明本文由電子發(fā)燒友社區(qū)發(fā)布,轉(zhuǎn)載請注明以上來源。如需社區(qū)合作及入群交流,請?zhí)砑游⑿臙EFans0806,或者發(fā)郵箱liuyong@huaqiu.com。


更多熱點文章閱讀

  • 基于Cortex-M3內(nèi)核的32位微控制器,STM32項目實戰(zhàn)分享!

  • 基于32位RISC-V設(shè)計的互聯(lián)型微控制器,沁恒微CH32V307開發(fā)樣例

  • RK3568!四核64位ARMv8.2A架構(gòu),匯聚編譯源碼及實戰(zhàn)樣例

  • 尺寸僅有21mm*51mm,板邊采用郵票孔設(shè)計,合宙 Air105 核心板開發(fā)總結(jié)

  • 嵌入式Linux開發(fā)秘籍!工程師大佬親歷分享項目樣例


原文標題:【試用報告】STM32與RT-Thread的完美結(jié)合:SD卡操作的順暢體驗!

文章出處:【微信公眾號:電子發(fā)燒友論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

原文標題:【試用報告】STM32與RT-Thread的完美結(jié)合:SD卡操作的順暢體驗!

文章出處:【微信號:gh_9b9470648b3c,微信公眾號:電子發(fā)燒友論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    基于RT-Thread與兆易創(chuàng)新GD32F527的工業(yè)級網(wǎng)絡(luò)-CAN透傳網(wǎng)關(guān)設(shè)計與實現(xiàn) | 技術(shù)集結(jié)

    目錄系統(tǒng)概述RT-Thread使用情況硬件框架軟件架構(gòu)軟件模塊詳解功能展示鏈接地址1系統(tǒng)概述本系統(tǒng)是一個基于GD32F527I_EVAL和RT-Thread實時操作系統(tǒng)開發(fā)的工業(yè)級網(wǎng)絡(luò)-CAN總線透
    的頭像 發(fā)表于 02-10 16:05 ?1.6w次閱讀
    基于<b class='flag-5'>RT-Thread</b>與兆易創(chuàng)新GD32F527的工業(yè)級網(wǎng)絡(luò)-CAN透傳網(wǎng)關(guān)設(shè)計與實現(xiàn) | 技術(shù)集結(jié)

    恩智浦亮相RT-Thread 20周年開發(fā)者大會

    日前,“開源向?qū)崱どa(chǎn)力進化啟示錄”全球峰會暨RT-Thread 20周年開發(fā)者大會在上海成功舉辦,恩智浦作為RT-Thread的緊密合作伙伴,在活動中重磅亮相,展示雙方在共建RT-Thread OS開發(fā)生態(tài)方面的新成果、新方案
    的頭像 發(fā)表于 01-26 09:07 ?540次閱讀

    學(xué)習(xí)強國深度報道 RT-Thread“1+X+N”戰(zhàn)略,國產(chǎn)操作系統(tǒng)賦能高端制造引關(guān)注|媒體視角

    近日,國產(chǎn)嵌入式操作系統(tǒng)領(lǐng)軍企業(yè)RT-Thread睿賽德在工博會發(fā)布的“1+X+N”戰(zhàn)略體系,獲得了國家級權(quán)威媒體平臺“學(xué)習(xí)強國”的重點報道。該報道從產(chǎn)業(yè)高度深入剖析了RT-Thread睿賽德以自主
    的頭像 發(fā)表于 09-29 17:37 ?1200次閱讀
    學(xué)習(xí)強國深度報道 <b class='flag-5'>RT-Thread</b>“1+X+N”戰(zhàn)略,國產(chǎn)<b class='flag-5'>操作</b>系統(tǒng)賦能高端制造引關(guān)注|媒體視角

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

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

    STM32cubeMX生成配置rt-thread引用問題求解

    如題,本人小白,剛接觸rt-thread,STM32F1/4簡便配置起見利用cubeMX自動生成,測試幾次后直接蒙了,不知道哪些文件是rt-thread項目必須的,網(wǎng)上說法也五花八門,說代碼屏蔽某些
    發(fā)表于 09-12 07:21

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

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

    【好書推薦】RT-Thread第20本相關(guān)書籍!《嵌入式實時操作系統(tǒng)RT-Thread原理與應(yīng)用》| 技術(shù)集結(jié)

    01內(nèi)容簡介ContentSummary本書為讀者提供了一個全面、系統(tǒng)的RT-Thread學(xué)習(xí)指南,旨在幫助初學(xué)者及有經(jīng)驗的開發(fā)者掌握RT-Thread實時操作系統(tǒng)和STM32嵌入式微
    的頭像 發(fā)表于 08-24 10:05 ?1005次閱讀
    【好書推薦】<b class='flag-5'>RT-Thread</b>第20本相關(guān)書籍!《嵌入式實時<b class='flag-5'>操作</b>系統(tǒng)<b class='flag-5'>RT-Thread</b>原理與應(yīng)用》| 技術(shù)集結(jié)

    RT-Thread 遇上 Rust:安全內(nèi)核 RusT-Thread 的誕生

    大家好,我們是中國科學(xué)技術(shù)大學(xué)操作系統(tǒng)原理與設(shè)計(H)課oooooS小組。這個項目是我們的課程大作業(yè):參考RT-Thread架構(gòu),使用Rust搭建一個原生的嵌入式操作系統(tǒng)內(nèi)核。初識Rust是因為xk
    的頭像 發(fā)表于 08-02 11:03 ?3533次閱讀
    <b class='flag-5'>RT-Thread</b> 遇上 Rust:安全內(nèi)核 RusT-<b class='flag-5'>Thread</b> 的誕生

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

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

    從驅(qū)動到應(yīng)用:RT-Thread環(huán)境下的SDIO開發(fā)指南

    目錄硬件介紹搭建開發(fā)環(huán)境配置SDIO驅(qū)動掛載文件系統(tǒng)文件讀寫測試演示視頻源碼工程總結(jié)本文主要講述RT-Thread環(huán)境下的SDIO開發(fā)指南,基于MCXN947開發(fā)板。1硬件介紹本次測評的是SDIO
    的頭像 發(fā)表于 06-28 09:02 ?2802次閱讀
    從驅(qū)動到應(yīng)用:<b class='flag-5'>RT-Thread</b>環(huán)境下的SDIO開發(fā)指南

    玄鐵加入RT-Thread 高級會員合作伙伴 | 戰(zhàn)略新篇

    今天起,玄鐵XuanTie正式成為RT-Thread高級會員合作伙伴。此次合作標志著雙方將在嵌入式操作系統(tǒng)創(chuàng)新、RISC-V生態(tài)構(gòu)建及行業(yè)應(yīng)用落地等領(lǐng)域展開深度協(xié)同,加速推動開源技術(shù)的產(chǎn)業(yè)化進程
    的頭像 發(fā)表于 06-23 20:22 ?1104次閱讀
    玄鐵加入<b class='flag-5'>RT-Thread</b> 高級會員合作伙伴 | 戰(zhàn)略新篇

    2025 RT-Thread全球技術(shù)大會議程正式發(fā)布!

    。2024RT-Thread全球技術(shù)大會,由開源操作系統(tǒng)RT-Thread發(fā)起,并聯(lián)合國內(nèi)外領(lǐng)先企業(yè)的重磅嘉賓,攜手國內(nèi)外頂尖企業(yè)專家與超3萬名線上參與者,共議邊緣計算、嵌入式
    的頭像 發(fā)表于 05-27 19:28 ?1353次閱讀
    2025 <b class='flag-5'>RT-Thread</b>全球技術(shù)大會議程正式發(fā)布!

    【直播預(yù)告】《實時操作系統(tǒng)應(yīng)用技術(shù)—基于RT-Thread與ARM的編程實踐》教學(xué)脈絡(luò)及資源簡介

    直播預(yù)告直播主題:《實時操作系統(tǒng)應(yīng)用技術(shù)—基于RT-Thread與ARM的編程實踐》教學(xué)脈絡(luò)及資源簡介開放時間:2025年5月29日(周四)20:00主講老師:王宜懷課程類型:視頻直播觀看平臺
    的頭像 發(fā)表于 05-26 17:50 ?1252次閱讀
    【直播預(yù)告】《實時<b class='flag-5'>操作</b>系統(tǒng)應(yīng)用技術(shù)—基于<b class='flag-5'>RT-Thread</b>與ARM的編程實踐》教學(xué)脈絡(luò)及資源簡介

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

    的開源實時操作系統(tǒng),正持續(xù)優(yōu)化社區(qū)協(xié)作流程,現(xiàn)面向全球開發(fā)者招募審核團(ReviewTeam)成員,共同維護代碼質(zhì)量,推動RT-Thread生態(tài)繁榮發(fā)展!什么是RT
    的頭像 發(fā)表于 05-21 18:02 ?1251次閱讀
    <b class='flag-5'>RT-Thread</b>審核團招募: 深度參與開源RTOS社區(qū)治理與演進

    中新社:RT-Thread攜“睿擎平臺”亮相工博會 | 媒體視角

    4月23日,成都國際工業(yè)博覽會拉開帷幕。中國新聞網(wǎng)專訪RT-Thread睿賽德,以“國產(chǎn)操作系統(tǒng)再亮劍,睿擎平臺開啟工業(yè)新時代”為題,報道了“睿擎工業(yè)開發(fā)平臺”在工博會上首發(fā)亮相。中國新聞網(wǎng)專訪
    的頭像 發(fā)表于 04-24 11:16 ?1270次閱讀
    中新社:<b class='flag-5'>RT-Thread</b>攜“睿擎平臺”亮相工博會 | 媒體視角