打印
[RISC-V MCU 应用开发]

【RISC-V MCU CH32V103测评】仿LINUX命令行操作MMC

[复制链接]
1015|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
qiangtech|  楼主 | 2020-11-28 15:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 qiangtech 于 2020-11-28 15:28 编辑

收到开发板后,就想做一个像LINUX控制台那样通过命令行过控制MMC卡的。经过几天的慢慢调试,总算有了一个趋形。
第一步,移植FATFS文件系统。去FATFS官网下载了一个最新版的源码。
解压后加入到工程里面,修改diskio.c和ffconf.h这两个文件就可以了。我这里直接使用了 @740071911 在论坛上发出的MMC卡底层驱动。让diskio.c直接对接到底壳驱动上。



diskio.c和ffconf.h都做了一些修改。但是长文件名没有做处理,所以在读写长文件名的文件时,会有一些问题。文后附件,有需要的可以下载参考。
主文件中包含ff.h,然后就可以通过FATFS操作MMC卡了。




第二步,接收串口命令来操作MMC卡。
先调通一个串口来接收。本打算就用PRINTF的串口1的,做好后却发现怎么也接收不到。拔开WCH-LINK与板子的连接,在WCH-LINK上用逻辑仪能测到UART信号,但是连上开发板后,就测不到信号了。是不是板子上还有个MAX3232的原因?后面改用在UART3,就可以正常接收了。

调试的时候还发现,图上的这个声明不能省。省掉的话只能接收到一个字符,后面的全接收不到了?这个决窍是什么?

接收到字符后,把字符分解成命令和参数。就可以对MMC卡进行一些操作了

现在还只是对cd和ls命令做了一点处理。




只是能够运行,长文件名也没处理,还需要进一步完善。

fatfs.rar (5.54 KB)






52.png (33.77 KB )

52.png

54.png (277.09 KB )

54.png

使用特权

评论回复

相关帖子

沙发
caizhiwei| | 2020-11-29 12:56 | 只看该作者
赞一个

使用特权

评论回复
板凳
740071911| | 2020-11-30 08:51 | 只看该作者
6666

使用特权

评论回复
评论
740071911 2020-11-30 10:27 回复TA
@qiangtech :我的里面没有串口啊 
qiangtech 2020-11-30 09:39 回复TA
@740071911 :其它的文件都没有动啊, 
740071911 2020-11-30 08:56 回复TA
你这下载文件还不全,不如不给 
地板
qiangtech|  楼主 | 2020-11-30 10:39 | 只看该作者

自已加的。我把工程贴出来吧,有兴趣的可以自已完善和改进。
touchkey.rar (1.19 MB)

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

80

主题

1362

帖子

11

粉丝