sz_disp16(5,0,1,shuzi[min>>4]); } // 十分位 // else
{ hz_disp16(5,0,1,kongbai2); }
/*-------------------------状态判断于提示------------------------*/ void State(void) {CS1=1;CS2=0; if(KT==1)
{ hz_disp16(1,32,1,tiao);
hz_disp16(1,48,1,shi2);}
else
{ hz_disp16(1,32,1,kongbai2);
hz_disp16(1,48,1,kongbai2); }
附录六 液晶程序
/*--------------------------位定义--------------------------*/ sbit RST = P2^0; // 复位端 // sbit E = P2^1; // 使能端 // ??
#define Disp_On 0x3f // 显示开指令 // #define Disp_Off 0x3e // 显示关指令 // #define Col_Add 0x40 // 定位到第0列指令 // #define Page_Add 0xb8 // 定位到第0页指令 //
#define Start_Line 0xc0 // 定位从DDROM中的第0行开始往屏幕上显示
unsigned char code measurearray[] /*调入了一幅图像:测量:宽度x高度=96x16*/
unsigned char code storearray[] /*调入了一幅图像:存储:宽度x高度=96x16*/
?? //还有时间设置,开始测量等图像??//
/*------------------------------汉字点阵码————————*/ char code huan[]={ // 欢 16*16 //
0x14,0x24,0x44,0x84,0x64,0x1C,0x20,0x18,0x0F,0xE8,0x08,0x08,0x28,
0x18,0x08,0x00,
0x20,0x10,0x4C,0x43,0x43,0x2C,0x20,0x10,0x0C,0x03,0x06,0x18,0x30,0x60,0x20,0x00
};??//迎,使,用,等汉字如其所示//
/*------------------------字母点阵码---------------------------*/ char code Kg_K[]={ // 字母K 8*16 //
0x08,0xF8,0x88,0xC0,0x28,0x18,0x08,0x00,0x20,0x3F,0x20,0x01,0x26,0x38,0x20,0x00,
};
nsigned char code FirstPage[]={ // 开机画面 DPY工作室 // void delay(unsigned int t) //延时// {
unsigned int i,j; for(i=0;i /*------------------------写命令到LCD------------------------------*/ void write_command(unsigned char cmdcode) { RS = 0; RW = 0; P0 = cmdcode; delay(0); E = 1; delay(0); E = 0; } /*-------------------------写数据到LCD----------------------------*/ void write_data(unsigned char Dispdata) ?? /*------------------------清显示屏--------------------------------*/ void Clr_Scr() { unsigned char j ,k; CS2=1;CS1=0; // 清左半屏 // { write_command(Page_Add+0); write_command(Col_Add+0); for(k=0;k<4;k++) // { // write_command(Page_Add+k); for(j=0;j<64;j++) write_data(0x00); } for(k=0;k<4;k++) // { write_command(Page_Add+4); for(j=0;j<64;j++) write_data(0x00); } } CS2=0;CS1=1; // { write_command(Page_Add+0); write_command(Col_Add+0); for(k=0;k<4;k++) // { for(j=0;j<64;j++) write_data(0x00); } for(k=0;k<4;k++) // { 清左上半屏 // 清左下半屏 // 清右半屏 // 清右上半屏 // 清右下半屏 // write_command(Page_Add+4); for(j=0;j<64;j++) write_data(0x00); } } } /***********************************************************/ /*------------------显示12864图片------------------------------*/ void Disp_Img(unsigned char code *img) /*---------------------指定位置显示数字8*16----------------*/ void sz_disp16(unsigned char pag,unsigned char col,unsigned char mod, unsigned char code *szk) { unsigned char j=0,i=0; for(j=0;j<2;j++) { write_command(Page_Add+pag+j); write_command(Col_Add+col); for(i=0;i<8;i++) if(mod) write_data(szk[8*j+i]); else write_data(~szk[8*j+i]); } } /*-----指定位置显示汉字16*16-----------------------*/ void hz_disp16(unsigned char pag,unsigned char col, unsigned char mod,unsigned char code *hzk) /*------------------初始化LCD屏--------------------------*/ void init_lcd() {