MMC卡SPI模式「建议收藏」

MMC卡SPI模式「建议收藏」MMC/SD卡简单SPI模式驱动1. SPI模式下CRC检验无效的。 2. 命令格式是6个字节,采用大端法进行数据传输。3. 第一个是(命令号|0x40)。4. 第2-5个是有些命令需要地址,用来设置地址的,而其他的可以任意填充。5. 最后一个字节是CRC校验位,除了CMD0为95H外,其他可以任意填充。6.命令发送函数。1).片选拉低

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

MMC/SD卡简单SPI模式驱动

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

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

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

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

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

6. 命令发送函数。
1).片选拉低。
2).发送六个字节命令。
3).再发送一8个时钟信号。
4).发送时钟信号,等待回复。
5).回复不是0xff,就可以。
6).根据时序可在发送8个时钟信号。
7).返回R1,即MMC的回复。
(完)

7. MMC卡初始化函数
1).SPI初始化。
2).发送74个时钟以上。
3).发送命令CMD0.
4).不断发送时钟信号等回复0x01.成功。
5).再不断发送命令CMD1,等回复0x00,成功则MMC卡初始化成功。
(完)

8.MMC卡读函数。
1).不断发送命令CMD17。
2).等待0x00,则成功。
3).再不断发送时钟信号,当收到0xfe时,说明可以读512字节数据,也可以通过命令设置读写数据长度。
4).读512字节数据。
5).发送CRC校验,2个字节,虽然校验无效,但一定要发送。
6).再发送时序8个时钟。
(完)

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.net/136867.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Element.clientWidth

    Element.clientWidthElement.clientWidth

    2022年7月22日
    8
  • call stack详解

    call stack详解callstackxiang:调用堆栈:调用堆栈是一个方法列表,按调用顺序保存所有在运行期被调用的方法。栈:在函数调用时,第一个进栈的是主函数中函数调用后的下一条指令(函数调用语句的下一条可执行语句)的地址,然后是函数的各个参数,在大多数的C编译器中,参数是由右往左入栈的,然后是函数中的局部变量。注意静态变量是不入栈的。当本次函数调用结束后,局部变量先出栈,然后是参数,最

    2025年6月29日
    3
  • PO模式(Page Object Model)

    PO模式(Page Object Model)使用BDD框架后,在Framework层再使用线性脚本的方式明显是不适用的。

    2022年6月4日
    32
  • 面试题总结 —— JAVA高级工程师

    面试题总结 —— JAVA高级工程师面试题总结——JAVA高级工程师近期考虑换工作的问题,于是投简历面试,面试5家公司的高级Java工程师,有4家给了我offer,想着总结一下面试经验,方便最近正在寻求机会的你们一、无笔试题不知道是不是职位原因还是没遇到,面试时,都不需要做笔试题,而是填张个人信息表格,或者直接面试二、三大框架方面问题1、Spring事务的隔离性,并说说每个隔离性的…

    2022年6月14日
    24
  • PHP curl_init函数——爬虫必备

    PHP curl_init函数——爬虫必备原文地址:http://www.jb51.net/article/25193.htm我们可以使用PHP的扩展库-Curl,这个扩展库通常是默认在安装包中的,你可以它来获取其他站点的内容,也可以来干别的。 备注:这两段代码需要php_curl扩展库的支持,查看phpinfo(),如果curlsupport enabled则表示支持curl库。 1、Windows下的PHP开启curl库

    2022年7月12日
    20
  • journalctl命令「建议收藏」

    journalctl命令「建议收藏」journalctl命令journalctl命令是Systemd日志系统的一个命令,主要用途是用来查看通过Systemd日志系统记录的日志,在Systemd出现之前,Linux系统及各应用的日志都是分别管理的,Systemd取代了initd之后便开始统一管理了所有Unit的启动日志,可以只用一个journalctl命令,查看所有内核和应用的日志。语法journalctl[OPTIONS…][MATCHES…]参数–no-full,–full,-l:当字段匹配可用列时将其省

    2022年5月10日
    91

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号