?? yjsy.c
字號:
}
/*------------------寫命令到LCD------------------------------*/
void write_com(unsigned char cmdcode)
{
Di=0;
RW=0;
Lcd_Bus=cmdcode;
delay(0);
Enable=1;
delay(0);
Enable=0;
}
/*-------------------寫數據到LCD----------------------------*/
void write_data(unsigned char Dispdata)
{
Di=1;
RW=0;
Lcd_Bus=Dispdata;
delay(0);
Enable=1;
delay(0);
Enable=0;
}
/*------------------------讀LCD數據----------------------------*/
unsigned char read_data()
{
unsigned char tmpin;
Di=1;
RW=1;
delay(0);
Enable=1;
delay(0);
Enable=0;
tmpin=Lcd_Bus;
return tmpin;
}
/*------------------------顯示邊框-------------------------------*/
void frame()
{
unsigned char i;
Mcs=1;
Scs=1;
write_com(Page_Add+0);
write_com(Col_Add+0);
for(i=0;i<64;i++) write_data(0x01);
write_com(Page_Add+7);
write_com(Col_Add+0);
for(i=0;i<64;i++) write_data(0x80);
for(i=0;i<8;i++)
{
Mcs=0;
Scs=1;
write_com(Page_Add+i);
write_com(Col_Add+63);
write_data(0xff);
Mcs=1;
Scs=0;
write_com(Page_Add+i);
write_com(Col_Add+0);
write_data(0xff);
}
}
/*--------------------------清除內存------------------------------*/
void Clr_Scr()
{
unsigned char j,k;
Mcs=1;Scs=1;
write_com(Page_Add+0);
write_com(Col_Add+0);
for(k=0;k<8;k++){
write_com(Page_Add+k);
for(j=0;j<64;j++)write_data(0x00);
}
}
/*--------------------------指定位置顯示漢字16*16-----------------------*/
void hz_disp16(unsigned char pag,unsigned char col, unsigned char code *hzk)
{
unsigned char j=0,i=0;
for(j=0;j<2;j++){
write_com(Page_Add+pag+j);
write_com(Col_Add+col);
for(i=0;i<16;i++) write_data(hzk[16*j+i]);
}
}
/*----------------------指定位置顯示字母或數字8*16-----------------------*/
void e_disp16(unsigned char pag,unsigned char col, unsigned char code *hzk)
{
unsigned char j=0,i=0;
for(j=0;j<2;j++){
write_com(Page_Add+pag+j);
write_com(Col_Add+col);
for(i=0;i<8;i++) write_data(hzk[8*j+i]);
}
}
/*------------------顯示128*64圖片---------------------------*/
void Disp_Img(unsigned char code *img)
{
unsigned char j,k;
for(k=0;k<8;k++)
{
Mcs=1;Scs=0;delay(10);
write_com(Page_Add+k);
write_com(Col_Add+0);
for(j=0;j<64;j++) write_data(img[k*128+j]);
Mcs=0;Scs=1; delay(10);
write_com(Page_Add+k);
write_com(Col_Add+0);
for(j=64;j<128;j++) write_data(img[k*128+j]);
}
}
/*------------------顯示64*64圖片---------------------------*/
void Disp_Img2(unsigned char code *img)
{
unsigned char j,k;
for(k=0;k<8;k++)
{
Mcs=1;Scs=0;delay(10);
write_com(Page_Add+k);
write_com(Col_Add+0);
for(j=0;j<64;j++) write_data(img[k*64+j]);
}
}
/*-------------------------------初始化LCD屏--------------------------*/
void init_lcd()
{
Lcd_Rst=0;
delay(100);
Lcd_Rst=1;
delay(100);
Mcs=1;
Scs=1;
delay(100);
write_com(Disp_Off);
write_com(Page_Add+0);
write_com(Start_Line+0);
write_com(Col_Add+0);
write_com(Disp_On);
}
/*------------------------------信息顯示-----------------------------*/
void Msg(void)
{
Clr_Scr(); //清除內存
frame(); //邊框
Mcs=1;Scs=0;
hz_disp16(1,16,hu);
delay(2000);
hz_disp16(1,32,nan);
delay(2000);
hz_disp16(1,46,ke);
delay(2000);
Mcs=0;Scs=1;
hz_disp16(1,0,ji);
delay(2000);
hz_disp16(1,16,da);
delay(2000);
hz_disp16(1,32,xue);
delay(2000);
Mcs=1;Scs=0;
hz_disp16(3,0,xin);
delay(2000);
hz_disp16(3,16,xi);
delay(2000);
hz_disp16(3,32,dian);
delay(2000);
hz_disp16(3,48,qi);
delay(2000);
Mcs=0;Scs=1;
hz_disp16(3,0,gong);
delay(2000);
hz_disp16(3,16,ceng);
delay(2000);
hz_disp16(3,32,xue);
delay(2000);
hz_disp16(3,48,yuan);
delay(2000);
Mcs=1;Scs=0;
hz_disp16(5,0,zi);
delay(2000);
hz_disp16(5,16,dong);
delay(2000);
hz_disp16(5,32,hua);
delay(2000);
hz_disp16(5,48,xi2);
delay(2000);
Mcs=0;Scs=1;
e_disp16(5,16,w);
delay(2000);
e_disp16(5,24,h);
delay(2000);
e_disp16(5,32,o);
delay(2000);
e_disp16(5,40,a);
delay(2000);
e_disp16(5,48,m);
delay(2000);
e_disp16(5,56,i);
delay(2000);
}
/*---------------------------主程序---------------------------------*/
void main(void)
{
unsigned char i=0;
while(1){
init_lcd();
Disp_Img(pic1);
delay(40000);
Disp_Img(pic2);
delay(40000);
Disp_Img(pic3);
delay(40000);
Disp_Img(pic4);
delay(40000);
Disp_Img2(pic5);
delay(40000);
Msg();
delay(40000);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -