您当前的位置:五五电子网电子知识单片机-工控设备DSP/FPGA技术dsPIC33F系列DSC的 SD存储卡接口设计 正文
dsPIC33F系列DSC的 SD存储卡接口设计

dsPIC33F系列DSC的 SD存储卡接口设计

点击数:7661 次   录入时间:03-04 11:42:13   整理:http://www.55dianzi.com   DSP/FPGA技术

  以上程序按照图2所示时序执行,来实现一次指令和响应数据的交互。当某条指令有后续数据时,按照规范中的时序发送或者读取数据。

  3.3 读写操作的实现

  READ_SINGLE_BLOCK是单数据块读指令,在接收到有效的读指令后SD卡将会送出一个响应。紧接着是一个带16位CRC校验后缀的数据块,数据块的长度要在之前由SET_BLOCKEN(CMDl6)指令定义,一般为512字节,正好一个扇区的大小。数据块的开始是1字节的开始令牌,值为“0xFE”,结束是2字节的CRC。该操作的通信过程如图4所示。

通信过程

点击看原图

  WRITE_SINGLE_BLOCK是单数据写操作指令,在接收到主机传来的数据后,SD卡会发送一个值为0x5的数据响应,之后进入busy状态。该操作的单数据写操作如图5所示。

单数据写操作

  按照以上通信过程编写程序,单数据块读和写的程序流程如图6所示。

单数据块读和写的程序流程

点击看原图

  4 结果验证

  将容量为1 GB的SD卡插入SD读卡器,再将读卡器插入PC机的USB接口中,此时系统出现“可移动磁盘(H:)”根目录。打开winhex软件,点击“工具”下拉菜单中的“打开磁盘”,选择“物理磁盘”中的“RMl:Ceneric STORAGE DEVICE(O.9G,USB)”,单击“确定”按钮,得到该SD卡第一个物理扇区的数据。该SD卡在偏移量从446开始的16个字节有数据“00 03 3D 00 06 OD ED DB F9 00 00 OO 07 5F 1E 00”,该扇区结束的两个字节为“55AA”,其余部分数据均为“00”。

  将SD卡取出,插入本设计电路的SD卡座中,用示波器连接D0、CLK和DI线,接通电源,测量SPI总线上的波形。

  本设计利用dsPIC33FJ64GP706的SPI接口实现了对SD存储卡的操作,可以把SD卡和dsPIC33F系列DSC两方面的优点集中到一个嵌入式系统中,有较高的利用价值。

www.55dianzi.com

上一页  [1] [2] 


本文关键字:接口  存储卡  DSP/FPGA技术单片机-工控设备 - DSP/FPGA技术