[ZLG-ARM] SD卡的I/O口读写程序

[复制链接]
2739|3
 楼主| nsnwz 发表于 2007-5-21 15:50 | 显示全部楼层 |阅读模式
void&nbsp;SPI_SendByte(INT8U&nbsp;byte)//向SD卡送入数据<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;INT8U&nbsp;i&nbsp;;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;for(i=0;i&lt8;i++)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SPI_SCK_CLR()&nbsp;;//时钟置底<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(byte&0x80)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SPI_MOSI_SET()&nbsp;;//输出置高<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SPI_MOSI_CLR()&nbsp;;//输出置低<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delay(5)&nbsp;;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SPI_SCK_SET()&nbsp;;//时钟置高&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delay(10)&nbsp;;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;byte&lt&lt=1&nbsp;;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />}<br /><br /><br />INT8U&nbsp;SPI_RecByte(void)//从SD卡读入数据<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;INT8U&nbsp;i,&nbsp;&nbsp;get_char&nbsp;;<br />&nbsp;&nbsp;&nbsp;&nbsp;for(i=0;&nbsp;i&lt8;&nbsp;i++)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SPI_SCK_CLR()&nbsp;;//时钟置底<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delay(10)&nbsp;;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SPI_SCK_SET()&nbsp;;//时钟置高<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;get_char&nbsp;|=&nbsp;SPI_MISO_GET()&nbsp;;//从SD卡读取一位<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(i&lt7)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;get_char&nbsp;&lt&lt=&nbsp;1&nbsp;;//左移<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delay(10)&nbsp;;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;get_char&nbsp;;<br />}<br /><br />上面是用I/O口来读写SD卡的程序,请高手看看,有没有什么问题.先谢谢了!
crlx 发表于 2007-5-21 17:24 | 显示全部楼层

SD卡的文件系统是什么结构的?

请问这位朋友,SD卡的文件系统是什么结构的?或者说是什么格式的(相比我们常见的FAT和ntfs)
平常人 发表于 2007-5-21 17:51 | 显示全部楼层

默认是FAT12或FAT16,也可以格式化成其他格式,如FAT32

  
 楼主| nsnwz 发表于 2007-5-22 13:55 | 显示全部楼层

问题解决

原来是读的函数中,get_char没给初值。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

13

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部