單片機(jī)讀寫sd卡教程

單片機(jī)讀寫sd卡教程

ID:31728625

大小:188.50 KB

頁(yè)數(shù):8頁(yè)

時(shí)間:2019-01-17

單片機(jī)讀寫sd卡教程_第1頁(yè)
單片機(jī)讀寫sd卡教程_第2頁(yè)
單片機(jī)讀寫sd卡教程_第3頁(yè)
單片機(jī)讀寫sd卡教程_第4頁(yè)
單片機(jī)讀寫sd卡教程_第5頁(yè)
資源描述:

《單片機(jī)讀寫sd卡教程》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。

1、.點(diǎn)這鄭重聲明:本實(shí)驗(yàn)并不是對(duì)所有SD卡都能成功運(yùn)行第一步:打開(kāi)winhex軟件,用讀卡器讀SD卡,在winhex中查看SD卡...點(diǎn)擊查找(ctrl+F)輸入FAT(找到DBR處)...發(fā)現(xiàn)DBR起始于0x11200扇區(qū)地址,它必是512整數(shù)倍,因?yàn)橐粋€(gè)扇區(qū)含512BYTE,所以在程序中讀一個(gè)扇區(qū)時(shí)一定要是512整數(shù)倍,否則會(huì)出錯(cuò)。11200地址對(duì)應(yīng)的值是0xEB,本程序讀一下這個(gè)地址的值看看是否正確。注意有的winhex編址是十進(jìn)制看看程序吧#include#defineucharunsignedchar#define

2、uintunsignedint//=============================================================//定義SD卡需要的4根信號(hào)線sbitSD_CLK=P1^1;sbitSD_DI=P1^2;sbitSD_DO=P1^0;sbitSD_CS=P1^3;sbitBeep=P2^0;//用來(lái)調(diào)程序標(biāo)志//===========================================================//=================================

3、==========================//定義512字節(jié)緩沖區(qū),,89C52直接定義成unsignedcharDATA[80];,太大了RAM不夠unsignedcharxdataDATA[512];voiddelay(unsignedintz){unsignedintx,y;for(x=z;x>0;x--);for(y=110;y>0;y--);}...//===========================================================//寫一字節(jié)到SD卡,模擬SPI總線方式voidSd

4、Write(unsignedcharn){unsignedchari;for(i=8;i;i--){SD_CLK=0;SD_DI=(n&0x80);n<<=1;SD_CLK=1;}SD_DI=1;}//===========================================================//從SD卡讀一字節(jié),模擬SPI總線方式unsignedcharSdRead(){unsignedcharn,i;for(i=8;i;i--){SD_CLK=1;SD_CLK=0;n<<=1;if(SD_DO)n

5、=1;}re

6、turnn;}//============================================================//檢測(cè)SD卡的響應(yīng)unsignedcharSdResponse(){uchari=0,response=0;while(i<=8){response=SdRead();if(response==0x00)break;if(response==0x01)break;i++;}...returnresponse;}//=============================================

7、===================//發(fā)命令到SD卡voidSdCommand(unsignedcharcommand,unsignedlongargument,unsignedcharCRC){SdWrite(command

8、0x40);/*SdWrite(((unsignedchar*)&argument)[0]);SdWrite(((unsignedchar*)&argument)[1]);SdWrite(((unsignedchar*)&argument)[2]);SdWrite(((unsignedchar*)&argumen

9、t)[3]);*/SdWrite(argument>>24);SdWrite(argument>>16);SdWrite(argument>>8);SdWrite(argument);SdWrite(CRC);}//================================================================//初始化SD卡unsignedcharSdInit(void){unsignedchari;unsignedcharresponse=0xFF;P3=0xff;SD_CS=1;for(i=0;i<=0

10、xfe;i++)SdWrite(0xff);SD_CS=0;SdCommand(0x00,0,0x95);SD_DI=1;response=SdResponse();if(res

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。