|
} Delay(10); } } //清顯示存儲(chǔ)器函數(shù) void LcmClear( uchar FillByte ) { uint i = 8192; //此處僅清8K RAM,如果您32K RAM都使用,請(qǐng)修改i=32768(后面也要改) if(FillByte) //注意如果填充ff時(shí),如果RAM僅使用了8K,那么8192次會(huì)寫入到文本區(qū) { //會(huì)形成亂碼.(24064出廠時(shí)候默認(rèn)將R7斷開,即默認(rèn)使用8KRAM) i -= 2*1024;//所以如果填入ff時(shí)候要扣除2K的文本區(qū) LcmWriteCommandWith2Par(0x00,0x08,0x24); //填充0xff時(shí)候要在圖形區(qū) } else LcmWriteCommandWith2Par(0x00,0x00,0x24); LcmWriteCommand(0xB0); //進(jìn)入自動(dòng)寫 while(i--) { CheckAutoWrite(); LcmWriteData( FillByte ); } LcmWriteCommand(0xB2); //退出自動(dòng)寫 } //設(shè)定顯示地址函數(shù) void LocateXY(uchar x,uchar y,uchar mode) { uint temp; temp= LcmLengthDots/8*y + x; if(mode) //mode=1為Graphic { //如果圖形模式要加上圖形區(qū)首地址0x0800 temp+=0x0800; } LcmWriteCommandWith2Par(temp&0xff,temp/256,0x24); } //顯示一個(gè)ASCII碼函數(shù) void PutChar(uchar x,uchar y,uchar CharByte) { LocateXY(x,y,TXT); LcmWriteCommandWith1Par(CharByte,0xC4); } //顯示一個(gè)字符串函數(shù) void PutString(uchar x,uchar y,uchar *str) { while(*str != 0) { if(x> 29) //自動(dòng)換行 { x=0; y++; } PutChar(x,y,*str); ++x; ++str; } } //顯示一副圖片函數(shù) void DisplayOneBmp(uchar *puts) { uchar i,j; uint X=0; LocateXY(0,0,Graphic); LcmWriteCommand(0xB0); //進(jìn)入自動(dòng)寫
|