Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
RT-Thread
SD卡_TF卡
M2354
【NuMaker-M2354试用】MicroSD 模块测评
发布于 2021-12-19 15:00:41 浏览:793
订阅该版
[tocm] # 一、概述 `NuMaker-M2354` 是新唐针对 `M2354KJFAE` 微控制器推出的一款开发板,资源相当丰富,以下是新唐官网关于这块板子的简要介绍: >NuMaker-M2354 由两部分组成,采用 NuMicro® M2354KJFAE 微控制器的主控板,与 Nu-Link2-Me 除错刻录器。使用者只需使用此开发板就可以开发、刻录并验证应用程序。NuMaker-M2354 可作为安全项目评估、开发、验证以及功耗监控的平台。NuMaker-M2354 平台带有 M2354KJFAE 微控制器以及完整的脚位扩展介面,提供兼容于Arduino UNO的接口,方便搭配各式接口设备或Arduino 模块,该平台提供多种的电源供应设计,让项目的开发更加灵活。 > >NuMaker-M2354 平台具备电流量测接口可以随时监控功耗,协助项目开发与评估。 NuMaker-M2354 还带有 Wi-Fi 模块以及支援 COM/SEG LCD,让使用者能快速进行开发。 > >NuMaker-M2354的另一部分为Nu-Link2-Me调试编程器。Nu-Link2-Me可透过SWD接口对新唐微控制器进行在线ICP编程与除错,也可以进行离线ICP编程,编程的状态会显示在状态LED上。Nu-Link2-Me也支持虚拟串口(VCOM)功能,可输出消息至终端机窗口。Nu-Link2-Me还可以与开发板分离,成为独立的批次量产编程器。 本文主要是结合 `RT-Thread` 这款操作系统,对这块板子的 `MicroSD Card` 模块做一个简要的测评。 # 二、功能模块的硬件介绍 对应于开发板实物,该板子的模块所处的位置如下所示: ![image-20211217234312601](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458162.png) 该板子的 `MicroSD Card` 模块对应的原理图如下: ![image-20211217233143641](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458163.png) 由原理图可知,主芯片与 `MicroSD Card` 模块连接采用的是 `SDIO/4bit` 协议,该协议可以保证主芯片能够以足够快的速度读写 `SD` 卡。 详细的 `SDIO/4bit` 协议请看这篇文章:[《SDIO - 1bit / 4bit V2.0 协议深度解析-简单易懂协议详解》](https://blog.csdn.net/u013606261/article/details/112567922) # 三、功能模块的使用说明 首先,需要安装 Nu-link 驱动,下载地址:https://www.nuvoton.com.cn/products/microcontrollers/arm-cortex-m23-mcus/m2354-series/?group=Software&tab=2,安装如下图驱动即可: ![image-20211218235430502](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458165.png) 由于要测试 `SD`卡模块,记得要在 `SD`卡模块上先插入 `SD` 卡。 下载 RT-Thread 仓库:https://github.com/RT-Thread/rt-thread/blob/master/bsp/nuvoton/libraries/m2354/README.md 在 `numaker-m2354` 的仓库使用 `ENV` 工具。 ![image-20211218231653757](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458166.png) 然后在 `menuconfig` 的配置中,使能 `SD` 卡模块的支持。 ![image-20211218231855464](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458167.png) 使用 `pkgs –-update` 命令,更新软件和管理软件包: ![image-20211218232220597](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458168.png) 使用 `scons –-target=mdk5` 命令生成 `MDK5` 的工程 ![image-20211218233708171](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458169.png) 之后便可以使用 `MDK5` 打开工程 ![image-20211218233621087](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458170.png) 编译成功后,使用 `MDK5` 下载到板子即可。 ![image-20211219081857216](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458171.png) 打开设备管理器,找到该板子对应的接口: ![image-20211219082227724](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458172.png) 使用 `putty` ,设置参数如下: ![image-20211219082726449](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458173.png) 之后便可以使用 `putty` 查看板子的信息,比如按下复位键后,能够看到启动的信息: ![image-20211219082920671](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458174.png) 之后便可以开始愉快地玩耍了。 由于官方已经实现了在该板子上使用文件系统,我们可以使用通过 `putty` 来查看和操控 `SD` 的内容。详细请看:[《RT-Thread官方文档 -- 虚拟文件系统》](https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/programming-manual/filesystem/filesystem) 我们稍微测试一下: ![image-20211219085012867](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458175.png) 证明了 `SD Card` 模块是可以正常使用了。 # 四、外设性能指标测试 本次使用的 `SD` 卡是 `Kingston` 的 `8GB` 高容量卡(SDHC),`class-4` 等级,传输速度不低于 `4MB/s`,这个速度完全不会限制这块板子的测试。 具体的 `SD` 卡的类型请看这篇文章:[《MEMORY系列之“SDIO”》](https://www.eet-china.com/mp/a1635.html)。 ![image-20211219104630012](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458176.png) `RT-Thread` 官方提供了对于文件系统的读写测试,我们直接使用,用来测试。 复制 `RT-Thread` 仓库如下路径,如下的两个C文件,分别用于 `SD` 卡的读写测试。 ![image-20211219100706542](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458177.png) 复制到该板子的工程目录的如下路径: ![image-20211219100924186](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458178.png) 然后在 `MDK5` 的工程中加入这两个文件: ![image-20211219101233205](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458179.png) 点击编译,编译完成后点击下载,将程序下载到板子上。 然后对 `SD` 卡的 `lwr.bmp` 这个 `1MB` 大小的文件进行测试。效果如下: ![image-20211219111442569](https://gitee.com/Eureka1024/my-image-hosting-service/raw/master/img/202112191458180.png) 由结果可知:读的速度大概为 `27KB/s`,而写的速度大概为 `192KB/s`。 由于使用了操作系统和文件系统,速度还是被限制了,达不到裸机驱动时该有的速度。 # 五、模块功能的演示及代码 测试的视频链接:https://www.bilibili.com/video/BV1BM4y1c7FX?spm_id_from=333.999.0.0 测试代码github仓库地址:https://github.com/Eureka1024/NuMaker-M2354-SDCard-Test # 六、心得体会 第一次使用新唐的单片机,不是很熟悉新塘单片机的配置和使用,但是结合 RT-Thread 和双方提供的板级支持包后,可以很快就上手使用这个板子进行各种功能的测试以及一些功能的验证,在前期开发的工程中,省却了不少力气,当然如果拿来开发做产品,还是要比较深入地去看这款板子的手册。 据说后面会在 RT-Thread Studio 上也会有支持包,到时开发起来也将更加容易,期待。 # 七、参考资料 - [《NuMaker-M2345 开发板原理图》](https://oss-club.rt-thread.org/uploads/20211203/41ae4d20554df6af27d4346412fc050f.pdf) - [《NuMaker-M2354 User Manual》](https://www.nuvoton.com.cn/export/resource-files/UM_NuMaker-M2354_EN_Rev1.pdf) - [《RT-Thread官方文档 -- 虚拟文件系统》](https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/programming-manual/filesystem/filesystem) - [《SDIO - 1bit / 4bit V2.0 协议深度解析-简单易懂协议详解》](https://blog.csdn.net/u013606261/article/details/112567922)
3
条评论
默认排序
按发布时间排序
登录
注册新账号
关于作者
Eureka1024
嵌入式软件开发工程师一枚
文章
8
回答
94
被采纳
14
关注TA
发私信
相关文章
1
RT-THREAD在STM32H747平台上移植lwip
2
正点原子miniSTM32开发板读写sdcard
3
反馈rtt串口驱动对低功耗串口lpuart1不兼容的问题
4
Keil MDK 移植 RT-Thread Nano
5
RT1061/1052 带 RTT + LWIP和LPSPI,有什么坑要注意吗?
6
RT thread HID 如何收发数据
7
求一份基于RTT系统封装好的STM32F1系列的FLASH操作程序
8
RT-Thread修改项目名称之后不能下载
9
rt-studio编译c++
10
有木有移植rt-thread(nano)到riscv 32位MCU上
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
机器人操作系统 (ROS2) 和 RT-Thread 通信
4
国产MCU移植系列教程汇总,欢迎查看!
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
热门标签
RT-Thread Studio
串口
LWIP
SPI
Env
Bootloader
AT
ART-Pi
Hardfault
CAN总线
FinSH
USB
文件系统
DMA
RT-Thread
SCons
线程
RT-Thread Nano
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
ota在线升级
WIZnet_W5500
I2C_IIC
UART
flash
cubemx
packages_软件包
freemodbus
PWM
潘多拉开发板_Pandora
定时器
ADC
BSP
中断
编译报错
socket
keil_MDK
GD32
MicroPython
msh
Debug
ulog
SFUD
flashDB
SDIO总线
rt_mq_消息队列_msg_queue
本月问答贡献
用户名由3_15位
18
个答案
3
次被采纳
xiaorui
7
个答案
3
次被采纳
sakumisu
4
个答案
3
次被采纳
踩姑娘的小蘑菇
15
个答案
2
次被采纳
三世执戟
32
个答案
1
次被采纳
本月文章贡献
比特饼干
3
篇文章
8
次点赞
Z_Y
2
篇文章
5
次点赞
xusiwei1236
2
篇文章
3
次点赞
yinxiangxv
2
篇文章
3
次点赞
Alipay
2
篇文章
3
次点赞
回到
顶部
发布
问题
投诉
建议
回到
底部