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

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

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

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

貼片SD卡移植FATFS文件系統(tǒng)(SD NAND FLASH)

深圳市雷龍發(fā)展有限公司 ? 2023-02-03 16:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一、前言
手頭有一塊深圳雷龍?zhí)峁┑馁N片 CS 創(chuàng)世 SD NAND Flash,掛載個文件系統(tǒng)把玩一下。首先介紹一下使用的貼片 SD 卡,以前使用的都是拔插式的 SD 卡,下面這個樣子:
SD NAND,貼片式TF卡,貼片式SD卡
深圳雷龍?zhí)峁┑腃S創(chuàng)世 SD NAND Flash 如下圖:
SD NAND,貼片式TF卡,貼片式SD卡
二、貼片 SD 卡介紹
深圳雷龍?zhí)峁┑?CS 創(chuàng)世 SD NAND 屬于 LGA-8 封裝,標(biāo)準(zhǔn) SDIO 接口,兼容SPI/SD/eMMC接口,兼容各大MCU平臺,可替代普通TF卡/SD卡,尺寸6x8mm毫米,內(nèi)置SLC晶圓擦寫壽命10萬次,通過1萬次隨機(jī)掉電測試耐高低溫,支持工業(yè)級溫度-40°~+85°,機(jī)貼手帖都非常方便,速度級別Class10(讀取速度23.5MB/S寫入速度12.3MB/S)標(biāo)準(zhǔn)的SD2.0協(xié)議普通的SD卡可直接驅(qū)動。
貼片 SD 卡的使用很簡單,管腳的連接方式和普通拔插的 SD 卡一致,所以我們設(shè)計硬件時按照普通 SD 的接線方式設(shè)計就行,以小熊派開發(fā)板為例子,單線 SDIO 硬件接線如下:
SD NAND,貼片式TF卡,貼片式SD卡
我使用小熊派開發(fā)板來掛載 FATFS 到雷龍這塊 SD 卡上
三、配置 CubeMX 底層接口
首先使用 CubeMX 配置底層 SD 卡接口,選擇單線模式,分頻設(shè)置高一點,其他參數(shù)保持默認(rèn)
SD NAND,貼片式TF卡,貼片式SD卡
配置完 SD 卡后開啟 FATFS 的文件系統(tǒng),選擇掛載到 SD 卡,文件名選擇 US ,buff 放到 STACK 上(注意調(diào)大??臻g)
SD NAND,貼片式TF卡,貼片式SD卡
配置完成后生成代碼,cubemx 主要是以下兩個初始化函數(shù):
SD NAND,貼片式TF卡,貼片式SD卡
四、編寫命令行測試代碼
使用我之前移植的命令行框架,編寫測試函數(shù)
void mount(char argc, char *argv)
{
if (argc > 1)
{
if (!strcmp("init", &argv[argv[1]]))
{
FRESULT ret = FR_INT_ERR;
ret = f_mount(&SDFatFS, SDPath, 1);
if (ret != FR_OK) {
shell_printf("mount init failed! %d\r\n", ret);
} else {
shell_printf("mount init succ!\r\n");
}
} else if (!strcmp("deinit", &argv[argv[1]])) {
FRESULT ret = FR_INT_ERR;
ret = f_mount(NULL, "", 1);
if (ret != FR_OK) {
shell_printf("mount deinit failed!\r\n");
} else {
shell_printf("mount deinit succ!\r\n");
}
}
}
else
{
shell_printf("mount need more arguments!\r\n");
}
};
void open(char argc, char *argv)
{
if (argc > 1)
{
FRESULT ret = FR_INT_ERR;
ret = f_open(&SDFile, &argv[argv[1]], FA_READ | FA_WRITE | FA_CREATE_NEW);
if (ret != FR_OK) {
shell_printf("open %s failed! code: %d \r\n ", &argv[argv[1]], ret);
} else {
shell_printf("open %s succ!\r\n", &argv[argv[1]]);
}
}
else
{
shell_printf("mount need more arguments!\r\n");
}
};
void close(char argc, char *argv)
{
if (argc > 1)
{
FRESULT ret = FR_INT_ERR;
ret = f_close(&SDFile);
if (ret != FR_OK) {
shell_printf("close %s failed!\r\n", &argv[argv[1]]);
} else {
shell_printf("close %s succ!\r\n", &argv[argv[1]]);
}
}
else
{
shell_printf("mount need more arguments!\r\n");
}
};
void write(char argc, char *argv)
{
if (argc > 1)
{
FRESULT ret = FR_INT_ERR;
uint32_t write_num = 0;
ret = f_write(&SDFile, &argv[argv[1]], strlen(&argv[argv[1]]), &write_num);
if (ret != FR_OK) {
shell_printf("write file failed!\r\n");
} else {
shell_printf("write file succ!\r\n");
}
}
else
{
shell_printf("mount need more arguments!\r\n");
}
};
void read(char argc, char *argv)
{
if (argc > 1)
{
FRESULT ret = FR_INT_ERR;
uint32_t read_num = 0;
uint8_t read_buff[100];
ret = f_read(&SDFile, read_buff, 50, &read_num);
if (ret != FR_OK) {
shell_printf("read file failed! %d\r\n", ret);
} else {
shell_printf("read file succ!\r\n");
shell_printf("read dat: %s, read num %d\r\n", read_buff, read_num);
}
}
else
{
shell_printf("mount need more arguments!\r\n");
}
};
將測試函數(shù)掛到命令行中:
const static_cmd_st static_cmd[] = {
{"ls", shell_ls_cmd},
{"mount", mount},
{"open", open},
{"close", close},
{"read", read},
{"write", write},
{"\0", NULL, NULL},
};
下載代碼,在命令行測試掛載以及讀寫函數(shù):
SD NAND,貼片式TF卡,貼片式SD卡
讀的數(shù)據(jù)有些亂碼,用讀卡器讀出來看看:
SD NAND,貼片式TF卡,貼片式SD卡
可以看到成功寫入,SD 卡掛載 FATFS 成功,命令行操作文件系統(tǒng)功能正常
————————————————
【本文轉(zhuǎn)載自CSDN,作者:Top嵌入式
深圳市雷龍發(fā)展專注存儲行業(yè)13年,專業(yè)提供小容量存儲解決方案。

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

    關(guān)注

    16

    文章

    1755

    瀏覽量

    141040
  • FlaSh
    +關(guān)注

    關(guān)注

    10

    文章

    1748

    瀏覽量

    155514
  • SD卡
    +關(guān)注

    關(guān)注

    2

    文章

    589

    瀏覽量

    68691
  • TF卡
    +關(guān)注

    關(guān)注

    2

    文章

    91

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    從NOR FlashNAND FlashSD NAND,從底層結(jié)構(gòu)到應(yīng)用差異

    在嵌入式系統(tǒng)開發(fā)中,“存儲選型”是經(jīng)常會遇到的問題,特別是許多曾長期使用 NOR   Flash 的工程師,在切換到 NAND Flash 時常常感到疑惑:   為什么
    發(fā)表于 12-08 17:54

    SD NAND、TF、SD的應(yīng)用領(lǐng)域大揭秘

    在如今這個數(shù)據(jù)爆炸的時代,各類存儲設(shè)備猶如繁星般閃耀,而SD NAND、TFSD更是其中的佼佼者。它們看似相似,實則各有千秋,在不同的
    的頭像 發(fā)表于 11-30 15:16 ?955次閱讀
    <b class='flag-5'>SD</b> <b class='flag-5'>NAND</b>、TF<b class='flag-5'>卡</b>、<b class='flag-5'>SD</b><b class='flag-5'>卡</b>的應(yīng)用領(lǐng)域大揭秘

    解鎖SD NAND、TF、SD的應(yīng)用密碼

    在科技飛速發(fā)展的今天,數(shù)據(jù)存儲的需求滲透到生活與工作的每一個角落——從手腕上的智能手表,到專業(yè)攝影師的相機(jī),再到工廠里的工業(yè)路由器,都離不開高效可靠的存儲介質(zhì)。SD NAND、TFSD
    的頭像 發(fā)表于 11-24 11:04 ?521次閱讀
    解鎖<b class='flag-5'>SD</b> <b class='flag-5'>NAND</b>、TF<b class='flag-5'>卡</b>、<b class='flag-5'>SD</b><b class='flag-5'>卡</b>的應(yīng)用密碼

    解鎖存儲密碼:SD NAND、TF、SD的應(yīng)用全景

    在數(shù)據(jù)洪流的時代,存儲介質(zhì)就如同數(shù)字世界的基石,支撐著各類設(shè)備的正常運轉(zhuǎn)。SD NAND、TFSD,雖同屬
    的頭像 發(fā)表于 10-29 14:24 ?650次閱讀

    SD NAND寫保護(hù)問題的分析

    “安全移除”、長期使用產(chǎn)生壞塊、空間已滿等,系統(tǒng)為避免進(jìn)一步數(shù)據(jù)損壞,可能將自動掛為“只讀” 。 惡意程序篡改分區(qū)表、文件系統(tǒng)設(shè)置,甚至設(shè)置隱藏的只讀/寫保護(hù)屬性,導(dǎo)致無法寫入或格式化。 如??Windows??驅(qū)動不兼容、用
    的頭像 發(fā)表于 10-21 10:28 ?521次閱讀
    <b class='flag-5'>SD</b> <b class='flag-5'>NAND</b>寫保護(hù)問題的分析

    掛載elm文件系統(tǒng)sd上時靈時不靈如何解決?

    使用野火開發(fā)板的gd32h759,將elm文件系統(tǒng)掛載到sd上,使用的是sdio接口,發(fā)現(xiàn)時靈時不靈,sd格式化幾次還是不行,請教一下各
    發(fā)表于 09-12 06:18

    如何使用 FatFs 顯示 SD 中的 JPEG 文件

    使用 FatFs 顯示 SD 中的 JPEG 文件
    發(fā)表于 09-04 06:20

    一文讀懂 SD NAND,小白也能秒變存儲技術(shù)大神

    SD NAND 是一種貼片式存儲芯片,內(nèi)部集成 NAND FlashSD 控制器,兼容
    的頭像 發(fā)表于 08-19 14:40 ?2254次閱讀
    一文讀懂 <b class='flag-5'>SD</b> <b class='flag-5'>NAND</b>,小白也能秒變存儲技術(shù)大神

    SD—雷龍 SD NAND

    一、SD介紹 1.基本介紹 本質(zhì):nand flash + 控制芯片 1.SD ,Secur
    的頭像 發(fā)表于 07-21 17:59 ?3747次閱讀
    <b class='flag-5'>SD</b><b class='flag-5'>卡</b>—雷龍 <b class='flag-5'>SD</b> <b class='flag-5'>NAND</b>

    【嵌入式開發(fā)】SD—雷龍 SD NAND

    Digital Ultra Capacity) 假如對SD的操作跟EEPROM或者NOR FLASH操作一樣,讀寫數(shù)據(jù)并驗證數(shù)據(jù)的正確性,不需要FAT文件系統(tǒng)。
    發(fā)表于 07-21 17:56

    NAND FlashSD NAND的存儲扇區(qū)架構(gòu)差異

    NAND Flash?和?SDSD NAND)的存儲扇區(qū)分配表都是用于管理存儲設(shè)備中扇區(qū)的分
    的頭像 發(fā)表于 03-13 15:20 ?1874次閱讀
    <b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b>與<b class='flag-5'>SD</b> <b class='flag-5'>NAND</b>的存儲扇區(qū)架構(gòu)差異

    Nand flashSDSD NAND)存儲扇區(qū)分配表異同

    SD NAND)是基于 NAND Flash的存儲設(shè)備,其存儲扇區(qū)分配表建立在 SD
    發(fā)表于 03-13 10:45

    通過FATFS文件系統(tǒng)讀寫SD創(chuàng)建文件可以了,加入MSC一直顯示一個沒有格式化的U盤盤符,也不能格式化,為什么?

    通過FATFS文件系統(tǒng)讀寫SD創(chuàng)建文件可以了,但加入MSC,一直顯示一個沒有格式化的U盤盤符,也不能格式化,這是什么問題導(dǎo)致的
    發(fā)表于 03-12 07:20

    [上手體驗]雷龍SD NAND:比TF更小更耐用

    和SPI FLASH以及 NAND FLASH,基本沒聽說過SD NAND。查閱了雷龍官方介紹),得知S
    發(fā)表于 03-08 14:28

    在stm32cubeprogrammer上燒錄時,取消勾選根文件系統(tǒng),燒錄后發(fā)現(xiàn)sd上根文件系統(tǒng)的分區(qū)沒有了,為什么?

    在修改了linux內(nèi)核后,我想只把bootfs燒錄到sd上,而不擦除根文件系統(tǒng)的分區(qū)。 我在stm32cubeprogrammer上燒錄時,取消勾選根文件系統(tǒng),燒錄后發(fā)現(xiàn)
    發(fā)表于 03-07 06:38