"); //-->
作者:下家山
5.3 以块方式写10个字节
5.3.1 CMD53配置
rSDICARG == 0x98000002;
rSDICCON == 0x00000B75;
响应
rSDICSTA == 0x00000A35;
rSDIRSP0 == 0x00001000;
rSDIDSTA == 0x00000010;
解读0x00000B75(略)
解读0x00000A35(略)
解读0x00001000(OK)
解读0x00000010(发送完成)
5.4 Stream Mode存在的问题(具体操作略)
其实,最开始我以简单起见,一直都是以Stream Mode方式操作的。
先写20个字节,好像也没发现什么异常,但,发现读时DMA中断不能发生。这是何故呢?
在传送数据时还有个数据状态寄存器rSDIDSTA(其实,我每发送一个命令把所有的状态寄存器读打印出来了),发现在写块后,其值老为0x00000002,表示数据正在发送。明明发送完了,命令也正确响应,为什么还在发送呢?再后来,我又去掉写动作,只读,发现虽然把数据读出来,但数据状态寄存器rSDIDSTA老是0x00000001,表示正在接收。
在此,我徘徊了很久,而且百思不得其解!
一次偶然,我从Block Mode转到Stream Mode时忘了清S3c2410 SDIO 的数据控制寄存器rSDIDCON的【17】位,即Block Mode位,发现竟然读出了我想要的20个数据。我茫然,怎么会这样呢?既然是以Stream Mode方式,为什么S3C2410 SDIO数据控制寄存器要设成Block Mode方式呢?这难道是sumsung s3c2410 datasheet对SDIO部分介绍不够专业的原因?
5.5 s3c2410 sdio 块传输相关寄存器设置
只需注意rSDIDCON(数据控制寄存器)的设置:
写时设置为rSDIDCON = 0x0033b002;
读时设置为rSDIDCON = 0x002ba002;
六 SDIO协议规范—与—S3C2410寄存器对应关系
6.1 CMD5剖析
Cmd5 协议规范
|
S |
D |
Command Index 000101b |
Stuff bits |
I/O OCR
|
CRC7 |
E |
1 1 6 8 24 7 1
S(tart bit): Start bit. Always 0
D(irection): Direction. Always 1 indicates transfer from host to card
Command Index: Identifies the CMD5 command with a value of 000101b
Stuff Bits: Not used, shall be set to 0
I/O OCR: Operation Conditions Register. The supported minimum and maximum values for VDD. The layout of the OCR is shown follow
|
I/O OCR bit position |
VDD voltage window (in Volts) |
|
0-3 |
Reserved |
|
4 |
Reserved |
|
5 |
Reserved |
|
6 |
Reserved |
|
7 |
Reserved |
|
8 |
2.0-2.1 |
|
9 |
2.1-2.2 |
|
10 |
2.2-2.3 |
|
11 |
2.3-2.4 |
|
12 |
2.4-2.5 |
|
13 |
2.5-2.6 |
|
14 |
2.6-2.7 |
|
15 |
2.7-2.8 |
|
16 |
2.8-2.9 |
|
17 |
2.9-3.0 |
|
18 |
3.0-3.1 |
|
19 |
3.1-3.2 |
|
20 |
3.2-3.3 |
|
21 |
3.3-3.4 |
|
22 |
3.4-3.5 |
|
23 |
3.5-3.6 |
Table 1
CRC7: 7bits of CRC data
E(nd bit): End bit, always 1
在S3C2410中要发送CMD5需要设置rSDICARG ,rSDICCON ,两个寄存器。
rSDICARG:SDI 命令参数寄存器;
rSDICCON:SDI 命令控制寄存器;
这两个寄存器合起来构成SDIO协议规范中的CMD5命令。其中:
rSDICARG[24:0]=====================CMD5[31:8] 高8bit无效
rSDICCON[7:0]======================CMD5[47:40]
个人观点: CMD5的stuff bit ,CRC7bit ,Endbit可以不管。因为他们的值固定,s3c2410已把他们做到SDIO控制器里面去了,实际发送命令时,这些位都传过去了,只是我们看不到而已。
专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
遥控调光调速接收器电路原理图
三菱FX系列PLC教程 33 —— FX系列的传送指令
三菱FX系列PLC教程 34 —— FX系列的块传送指令及多点传送指令
COT 控制方式如何保证多相电路均流
Fuji PLC MICREX-SX SPB用户手册(内置高速计数器篇)
【工程师笔记】EMI 噪声源的分析与优化方法
精选16 问,带你了解 MPS 数据中心备电单元(BBU)解决方案!
富昌电子荣膺瑞萨 “2025年度最佳潜力奖”
TS28电路原理图
行动与速度是致胜的关键
Fuji PLC MICREX-SX SPB用户手册(硬件篇)1
FPGA设计指导手册电子版第一版
相信“能”的人就会赢——摘自《潜能无限》
超再生式无线电接收器电路
三菱FX系列PLC教程 35 —— FX系列的区间比较指令
网虫的离婚协议书
由TDA7010T组成的接收电路
Fuji PLC MICREX-SX SPB用户手册(硬件篇)
Gartner:中国企业盲目复制Palantir模式将面临“苦涩教训”
三国系列之长坂坡
德州仪器 (TI) 携手英伟达 (NVIDIA),加速下一代物理 AI 落地
ADC 原理拆解 | 一图理清 ADC 五大架构特点
三菱FX系列PLC教程 32 —— FX系列的程序流向控制指令
科学意义上的“一眼万年”是怎么实现的?ADC 的深情你从来不懂!
成功是一种选择一个决定
TDA7000的内电路及其组成的基本接收电路
Fuji PLC MICREX-SX SPB用户手册(指令篇)
三菱FX系列PLC教程 36 —— FX系列的取反指令
【工程师笔记】频谱扩展技术(FSS)中的参数选择
2026光学技术大会PHOTONICS CONGRESS CHINA完整议程公布!