資源簡(jiǎn)介
基于51單片機(jī)160種例程,歡迎大家下載參考,謝謝!

代碼片段和文件信息
/*-----------------------------------------------
??名稱:讀SD卡寫(xiě)彩屏
??公司:上海浩豚電子科技有限公司
??網(wǎng)站:www.doflye.net
??編寫(xiě):師訪
??日期:2009.12
??修改:無(wú)
??內(nèi)容:通過(guò)讀出SD卡中320x240像素、16位BMP圖片的HEX數(shù)據(jù),依次寫(xiě)到屏上,還原圖片
??注意事項(xiàng):由于SD卡使用SPI模式,并且是塊讀?。?12Byte)所以需要單片機(jī)提供大于512的可用RAM,以供緩沖使用
????????????這里可以選擇STC89c52RD+、STC89C58RD+、STC89C516RD+,后綴RD+表明擴(kuò)展RAM是1024字節(jié),RC表明擴(kuò)展RAM256字節(jié)
------------------------------------------------*/
#include?
#include?
#include<9325TP.h>
//=============================================================
//定義SD卡需要的4根信號(hào)線
sbit?SD_CLK?=?P1^1;
sbit?SD_DI??=?P1^2;
sbit?SD_DO??=?P1^0;
sbit?SD_CS??=?P1^3;
//===========================================================
//定義按鍵端口
sbit?KEY?=?P3^2;
//===========================================================
//定義512字節(jié)緩沖區(qū),注意需要使用?xdata關(guān)鍵字
unsigned?char?xdata?DATA[512];
//===========================================================
//寫(xiě)一字節(jié)到SD卡模擬SPI總線方式
void?SdWrite(unsigned?char?n)
{
unsigned?char?i;
for(i=8;i;i--)
{
SD_CLK=0;
SD_DI=(n&0x80);
n<<=1;
SD_CLK=1;
}
SD_DI=1;?
}?
//===========================================================
//從SD卡讀一字節(jié)模擬SPI總線方式
unsigned?char?SdRead()
{
unsigned?char?ni;
for(i=8;i;i--)
{
SD_CLK=0;
SD_CLK=1;
n<<=1;
if(SD_DO)?n|=1;
}
return?n;
}
//============================================================
//檢測(cè)SD卡的響應(yīng)
unsigned?char?SdResponse()
{
unsigned?char?i=0response;
while(i<=8)
{
response?=?SdRead();
if(response==0x00)
break;
if(response==0x01)
break;
i++;
}
return?response;
}?
//================================================================
//發(fā)命令到SD卡
void?SdCommand(unsigned?char?command?unsigned?long?argument?unsigned?char?CRC)
{
SdWrite(command|0x40);
SdWrite(((unsigned?char?*)&argument)[0]);
SdWrite(((unsigned?char?*)&argument)[1]);
SdWrite(((unsigned?char?*)&argument)[2]);
SdWrite(((unsigned?char?*)&argument)[3]);
SdWrite(CRC);
}
//================================================================
//初始化SD卡
unsigned?char?SdInit(void)
{
int?delay=0?trials=0;
unsigned?char?i;
unsigned?char?response=0x01;
SD_CS=1;
for(i=0;i<=9;i++)
SdWrite(0xff);
SD_CS=0;
//Send?Command?0?to?put?MMC?in?SPI?mode
SdCommand(0x0000x95);
response=SdResponse();
if(response!=0x01)
{
return?0;
}?
while(response==0x01)
{
SD_CS=1;
SdWrite(0xff);
SD_CS=0;
SdCommand(0x010x00ffc0000xff);
response=SdResponse();
}?
SD_CS=1;
SdWrite(0xff);
return?1;?
}
//================================================================
//往SD卡指定地址寫(xiě)數(shù)據(jù)一次最多512字節(jié)
unsigned?char?SdWriteBlock(unsigned?char?*Block?unsigned?long?addressint?len)
{
unsigned?int?count;
unsigned?char?dataResp;
//Block?size?is?512?bytes?exactly
//First?Lower?SS
SD_CS=0;
//Then?send?write?command
SdCommand(0x18address0xff);
if(SdResponse()==00)
{
SdWrite(0xff);
SdWrite(0xff);
SdWrite(0xff);
//command?was?a?success?-?now?send?data
//start?with?DATA?TOKEN?=?0xFE
SdWrite(0xfe);
//now?send?data
for(co
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件???????5685??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\1G?51單片機(jī)SD?卡讀圖片?到彩屏\9325TP.h
?????文件???????5750??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\1G?51單片機(jī)SD?卡讀圖片?到彩屏\sd
?????文件???????5984??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\1G?51單片機(jī)SD?卡讀圖片?到彩屏\sd.c
?????文件???????4853??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\1G?51單片機(jī)SD?卡讀圖片?到彩屏\sd.hex
?????文件??????21065??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\1G?51單片機(jī)SD?卡讀圖片?到彩屏\sd.M51
?????文件???????1409??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\1G?51單片機(jī)SD?卡讀圖片?到彩屏\sd.Opt
?????文件???????1992??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\1G?51單片機(jī)SD?卡讀圖片?到彩屏\sd.Uv2
?????文件??????45143??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\8x16.h
?????文件??????45137??2015-08-02?22:33??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\8x8h.h
?????文件??????13749??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\9325TP.C
?????文件???????1870??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\9325TP.h
?????文件???????7430??2015-08-02?22:34??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\GB1616.h
?????文件??????59971??2015-08-02?22:34??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\ILI9163.uvopt
?????文件??????13764??2015-08-02?22:33??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\ILI9163.uvproj
?????文件???????1296??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\KEY.c
?????文件????????593??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\KEY_SWEEP.H
?????文件???????1820??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\LCD.H
?????文件????????580??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\main.c
?????文件??????19142??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\obj\ILI9163.hex
?????文件??????39156??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\obj\ILI9163.m51
?????文件??????39390??2015-08-02?22:34??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\obj\貪吃蛇.m51
?????文件?????210009??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\pic.h
?????文件???????9268??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\SNAKE.c
?????文件????????296??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\SNAKE.h
?????文件?????127106??2015-08-02?22:34??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\貪吃蛇
?????文件??????19142??2015-08-02?22:34??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\貪吃蛇.hex
?????文件??????58806??2015-08-02?22:35??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\貪吃蛇.uvopt
?????文件??????13741??2015-08-02?22:34??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4?貪吃蛇實(shí)驗(yàn)\貪吃蛇.uvproj
?????文件???????6498??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4寸彩屏顯示?12864信息\24x33.h
?????文件??????45143??2012-09-11?15:42??160種程序例程\2.4寸TFT彩屏配套測(cè)試程序\2.4寸彩屏顯示?12864信息\8x16.h
............此處省略1687個(gè)文件信息
評(píng)論
共有 條評(píng)論