前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MMC卡SPI模式「建议收藏」

MMC卡SPI模式「建议收藏」

作者头像
全栈程序员站长
发布2022-09-05 11:43:31
4210
发布2022-09-05 11:43:31
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

MMC/SD卡简单SPI模式驱动

1. SPI模式下CRC检验无效的。

2. 命令格式是6个字节,采用大端法进行数据传输。

3. 第一个是(命令号|0x40)。

4. 第2-5个是有些命令需要地址,用来设置地址的,而其他的可以任意填充。

5. 最后一个字节是CRC校验位,除了CMD0为95H外,其他可以任意填充。

代码语言:javascript
复制
6. 命令发送函数。
1).片选拉低。
2).发送六个字节命令。
3).再发送一8个时钟信号。
4).发送时钟信号,等待回复。
5).回复不是0xff,就可以。
6).根据时序可在发送8个时钟信号。
7).返回R1,即MMC的回复。
(完)
代码语言:javascript
复制
7. MMC卡初始化函数
1).SPI初始化。
2).发送74个时钟以上。
3).发送命令CMD0.
4).不断发送时钟信号等回复0x01.成功。
5).再不断发送命令CMD1,等回复0x00,成功则MMC卡初始化成功。
(完)
代码语言:javascript
复制
8.MMC卡读函数。
1).不断发送命令CMD17。
2).等待0x00,则成功。
3).再不断发送时钟信号,当收到0xfe时,说明可以读512字节数据,也可以通过命令设置读写数据长度。
4).读512字节数据。
5).发送CRC校验,2个字节,虽然校验无效,但一定要发送。
6).再发送时序8个时钟。
(完)
代码语言:javascript
复制
9.MMC卡写数据。
1).发送不断CMD24命令。
2).等待0x00回复。
3).成功回复,再发送至少8个时钟。
4).发送0xfe。
5).发送512字节写进去。
6).CRC校验位发送,2个字节。
7).发送时钟信号,获得回复xxx00101。
8).获得正常回复后,说明写成功。
9).等待总线释放,即回复为0xff,则总线不忙。
10).发送8时钟信号。
(完)

基于LPC2124芯片的MMC/SD卡SPI模式简单读写实验。

附加说明:MMC卡在SPI模式与SD卡的SPI模式是一样。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/136867.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年6月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档