S3c2410_SDIO_调试笔记二
摘自:上海嵌入式索漫科技培训教材 作者:下家山
(见Simplified SDIO Card Specification.pdf 35page)因为,CMD52响应后返回数据为8bit,所以要送三次。第一次:
rSDICARG == 0x00001200;
rSDICCON == 0x00000B74;
响应
rSDICSTA == 0x00000A34;
rSDIRSP0 == 0x00001000;
解读0x00001200
0 000 0 0 00 0000 0000 0001 001 0 0000 0000
R/W flag |
Function Number |
RAW flag |
Stuff |
Register Address |
Stuff |
Write data or stuff bits |
1 3 1 1 17 1 8
解读0x00000B74(略)
解读0x00000A34(略)
解读0x00001000
0x00001000的低8位表示从地址0x09读出来的值为0x00;
第二次:
rSDICARG == 0x00001400;
rSDICCON == 0x00000B74;
响应
rSDICSTA == 0x00000A34;
rSDIRSP0 == 0x00001010;
解读0x00001400
0 000 0 0 00 0000 0000 0001 010 0 0000 0000
R/W flag |
Function Number |
RAW flag |
Stuff |
Register Address |
Stuff |
Write data or stuff bits |
1 3 1 1 17 1 8
解读0x00000B74(略) 解读0x00000A34(略)解读0x00001010
0x00001010的低8位表示从地址0x0a读出来的值为0x10;
第三次:
rSDICARG == 0x00001600;
rSDICCON == 0x00000B74;
响应
rSDICSTA == 0x00000A34;
rSDIRSP0 == 0x00001000;
解读0x00001600
0 000 0 0 00 0000 0000 0001 011 0 0000 0000
R/W flag |
Function Number |
RAW flag |
Stuff |
Register Address |
Stuff |
Write data or stuff bits |
1 3 1 1 17 1 8
解读0x00000B74(略)解读0x00000A34(略)
解读0x00001000
0x00001000的低8位表示从地址0x0b读出来的值为0x00;
最后,可以得到FN0 CIS指针地址为0x001000。
3.4 读出ID号
同样,读出ID号也是通过CMD52来实现的。(见5.2 CMD52及响应剖析)
我们可以从SDIO 协议规范中看出CIS 的整个区域地址范围为0x00001000~0x00017fff。
而,我刚才读出FN0 的CIS指针地址为0x001000,这证明是正确的。那么出厂时,这些CIS信息是如何存放在0x001000所在的区域的呢?以FN0为例,听我一一道来:
在0x001000起始的区域,SDIO 协议规范是以一个或多个链(连起来的列表)被称为数据块或tuples(便士)来组织这些CIS信息的。
转载于:https://blog.51cto.com/xiajiashan/1035478
S3c2410_SDIO_调试笔记二相关推荐
- TQIMAX6q调试笔记二:linux与uboot的编译
一.按照<TQIMX6环境搭建>,成功安装ubuntu开发环境. 二.按照<TQIMX6_COREC编译手册>,成功安装交叉编译器. 三.按照<TQIMX6_COREC编 ...
- 调试笔记--jlink 变量转实时波形小技巧
调试笔记–jlink 变量转实时波形小技巧 上篇讲了jlink RTT组件在RAM中开辟一段内存,将printf字符串存入然后通过jlink调试接口读取RAM,将printf字符串在jlink-RTT ...
- gpio驱动广播Android,[RK3288][Android6.0] 调试笔记 --- 通用GPIO驱动控制LED【转】
Platform: ROCKCHIP OS: Android 6.0 Kernel: 3.10.92 由于板子没有lcd无法得知sd卡升级是否完成,因此使用LED显示. Recovery中升级完成后控 ...
- keil4怎么移植其他人的程序_【调试笔记】韦东山:在100ask_imx6ull上移植使用六轴传感器ICM20608...
之前发了LCD调试笔记,大家很感兴趣,所以这次再来一篇:六轴传感器ICM20608驱动移植笔记,大家还需要什么移植笔记?可以留言.我们尽量满足. 1.1 移植思路 先找到驱动:也许内核里已经有,也许需 ...
- 深度强化学习笔记(二)——Q-learning学习与二维寻路demo实现
深度强化学习笔记(二)--Q-learning学习与二维寻路demo实现 文章目录 深度强化学习笔记(二)--Q-learning学习与二维寻路demo实现 前言 理论 什么是Q-Learning 算 ...
- Quartus 调试笔记
Quartus 调试笔记 @(verilog) 最近忙于芯片跟测试FPGA联调,解锁了不少quartus的用法,在此记录一下备忘. 文章目录 Quartus 调试笔记 一. modelsim 联仿 1 ...
- [安卓开发笔记二]android Studio通过jni调用C++代码
[安卓开发笔记二]android Studio通过jni调用C++代码 16/12/11 更新 此博客基于安卓android studio 1.5所写,现在已经有了android studio2.2的 ...
- OMAPL138调试笔记
title: Linux 嵌入式使用 tags: 新建,模板,小书匠 grammar_cjkRuby: true Copyright (C) @2018 Widic Filename:File-fun ...
- NodeJS笔记二---kalrry
NodeJS笔记二---kalrry NodeJS 服务器 什么是服务器 web服务端保存的资源: web服务器(软件)的作用: nodeJS 介绍 目标 优势 劣势 特点: 环境安装 版本 运行 w ...
最新文章
- cygwin中写c语言程序,在windows下怎么利用Cygwin进行编程
- 推导和实现:全面解析高斯过程中的函数最优化(附代码公式)
- Linux基础之grep攻坚
- 爱迪生欺骗了世界! ----马云给雅虎员工演讲
- shell编程基础之根据输入进行相应的操作
- H5 使用微信开放标签跳转小程序
- if-else多级嵌套,输入3/4/5个数寻找最大值(太多了容易乱!!!)
- 微型php框架 include/conf.class.php
- mathmagic pro mac使用教程|快速地创建任何方程
- 安全成Win10进军企业级市场的最大卖点?
- python oracle连接池_python - DBUtils 连接池减少oracle数据库的连接数
- 中间键 csrf跨站请求伪造 装饰器相关 auth模块
- 新版财经直播间系统 贵金属喊单直播间 视频直播室在线喊单 源码
- fedora9 换源方法
- java电子小词典课程设计,java课程设计---英汉电子词典
- 【Java 8 新特性】使用Collectors.toList()方法将Map转化成List的示例
- ADSL拨号代理-构建IP代理池
- 获取手机存储空间大小
- 【python基础】小练习③——华氏温度与摄氏温度转化
- 【图解】什么是拥塞控制,这应该是把拥塞控制讲的最好的文章了
热门文章
- python属性访问顺序_Python 对象属性的访问
- 超凡先锋怎么进入维护服务器,超凡先锋新手教程怎么过 新手教程攻略_超凡先锋...
- xgboost算法 c语言,xgboost与sklearn的接口
- java配置文件报错_java使用spring框架配置文件时遇到的错误——Referenced file contains errors...
- 【企业管理】企业创造的要素
- PMP知识点(二、整合管理)
- WebService怎样在IIS上部署
- Mysql在Windows上离线安装与配置
- SpringBoot+JsTree实现在编辑时能选择树形结构并获取选中的ID
- MyBatis中获取对应日期的记录的mapper语句