- /******************************************************************************
- 模块名称:st7920 并行方式驱动12864液晶驱动
- 功能概要:st7920显示驱动
- CPU: stc89c58 主频:11.0592M
- 液晶型号: 生产厂家: 驱动芯片:st7920
- ******************************************************************************/
- #include
- #define uint unsigned int
- #define uchar unsigned char
- #define x1 0x80
- #define x2 0x88
- #define y 0x80
- #define comm 0
- #define dat 1
- ***it RS = P2^1; //H=data; L=command;
- ***it RW = P2^2; //H=read; L=write;
- ***it E = P2^4; //input enable;
- ***it PSB= P2^5; //H=并口; L=串口;
- ***it RST= P2^3; //Reset Signal 低电平有效
- ***it busy=P0^7; //lcd busy bit
- void wr_lcd (uchar dat_comm,uchar content);
- void chk_busy (void);
- void delay (uint us);
- uchar code tab1[]={
- "本系列中文模块内"
- "任意位置反白显示"
- "置二级字库,可在"
- "使用更方便更灵活"
- };
- uchar code tab31[]={
- "金鹏科技有限公司"
- "Golden Palm TECH"
- };
- uchar code tab32[]={
- /*-- 调入了一幅图像:F:梁画图HOCO12832.bmp --*/
- /*-- 宽度x高度=128x32 --*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x07,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x7F,0x80,0x00,0x00,0x00,0x00,0x18,0x0C,0x00,0x00,0x01,0x00,0x00,0x00,0x00,
- 0x01,0xFF,0x80,0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x13,0x10,0x03,0xFE,0x00,
- 0x03,0xFF,0xC0,0x00,0x00,0x00,0x00,0x58,0x00,0x00,0x00,0x3F,0x30,0x1F,0xFF,0xC0,
- 0x03,0xFF,0xE0,0x00,0x00,0x00,0x00,0x8C,0x03,0xF0,0x00,0x7F,0xE0,0x7C,0x01,0xE0,
- 0x03,0xFF,0xF0,0x00,0x00,0x00,0x01,0x36,0x06,0xC0,0x00,0x5F,0xC0,0xFF,0xFC,0x60,
- 0x01,0xFF,0xF0,0x00,0x00,0x00,0x02,0x1B,0x0F,0x80,0x00,0xFF,0x01,0xFE,0x0F,0x30,
- 0x00,0xEF,0xF0,0x00,0x00,0x00,0x02,0x6D,0x9F,0x00,0x00,0x3E,0x03,0xFF,0xF1,0x90,
- 0x00,0xFF,0xF8,0x00,0x00,0x00,0x04,0x36,0xFE,0x00,0x01,0xFF,0x07,0xFF,0xFC,0x90,
- 0x00,0xEF,0xFF,0xFF,0x80,0x00,0x04,0xDB,0x7E,0x00,0x03,0xFF,0x87,0xFF,0xFC,0xD0,
- 0x00,0x0F,0xFF,0xFF,0xC0,0x00,0x04,0x6D,0xFC,0x00,0x07,0xFF,0x8F,0xFF,0xFE,0x50,
- 0x00,0x0F,0xFF,0xFF,0xE0,0x00,0x04,0x36,0xFC,0x10,0x07,0xFF,0x8F,0xFF,0xFE,0x90,
- 0x00,0x0F,0xFF,0xFF,0xE0,0x00,0x04,0x1B,0xF8,0x10,0x07,0xFF,0xCF,0xFF,0xFE,0x80,
- 0x00,0x0F,0xFF,0xFF,0xF0,0x00,0x04,0x0F,0xF8,0x10,0x07,0xFF,0xFF,0xFF,0xFA,0x00,
- 0x00,0x07,0xFF,0xFF,0xF0,0x00,0x04,0x07,0xF0,0x10,0x07,0xFF,0xFF,0xFF,0xFA,0x00,
- 0x00,0xFF,0xFF,0xFF,0xF8,0x00,0x02,0x03,0xF0,0x20,0x07,0xFF,0xFF,0xFF,0xBA,0x00,
- 0x00,0xFD,0xFF,0xFF,0xFC,0x00,0x02,0x03,0xF0,0x20,0x03,0xFF,0xFF,0xDF,0xB8,0x00,
- 0x00,0xC1,0xC0,0x3F,0xFC,0x00,0x01,0x01,0xE0,0x40,0x00,0xFF,0xFF,0xDF,0xB0,0x00,
- 0x00,0x81,0xC0,0x3F,0xCE,0x00,0x00,0x81,0xE0,0x80,0x00,0x7F,0xFF,0xDF,0xA0,0x00,
- 0x00,0x81,0x80,0x1D,0xCF,0x00,0x00,0x41,0xE1,0x00,0x00,0x3F,0xFF,0x9B,0x00,0x00,
- 0x01,0x83,0x80,0x1F,0xC7,0x80,0x00,0x21,0xE2,0x00,0x00,0x1F,0xFD,0xB6,0x00,0x00,
- 0x01,0xC3,0x00,0x0E,0xE6,0x80,0x00,0x19,0xEC,0x00,0x00,0x07,0xFE,0x20,0x00,0x00,
- 0x00,0xC3,0x00,0x07,0x67,0x40,0x00,0x07,0xF0,0x00,0x00,0x03,0x3E,0x00,0x00,0x00,
- 0x00,0x02,0x00,0x03,0xE7,0xA0,0x00,0x00,0x00,0x00,0x00,0x02,0x8E,0x00,0x00,0x00,
- 0x00,0x06,0x00,0x03,0x83,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x03,0x00,0x00,0x00,
- 0x00,0x06,0x00,0x07,0x03,0x00,0x77,0x46,0x74,0x24,0x80,0x06,0x04,0x00,0x00,0x00,
- 0x00,0x1C,0x00,0x06,0x00,0x00,0x55,0x45,0x54,0x57,0x80,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x1C,0x00,0x0E,0x00,0x00,0x45,0x45,0x74,0x57,0x80,0x08,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x1C,0x00,0x00,0x55,0x45,0x44,0x74,0x80,0xF0,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x38,0x00,0x00,0x77,0x76,0x47,0x54,0x80,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- };
- uchar code tab5[]={
- /*-- 调入了一幅图像:F:梁画图COCK.bmp --*/
- /*-- 宽度x高度=128x64 --*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x80,0x00,0x0F,0xFF,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x0C,0x43,0x01,0x80,0x00,0x7F,0xFF,0xF0,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x19,0xFF,0x07,0x00,0x07,0xFF,0xFF,0xFE,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x01,0x3F,0xFC,0x1E,0x00,0x1F,0xFF,0xFF,0xFF,0x80,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x01,0xBF,0xFF,0xFC,0x00,0x7F,0xFC,0x00,0x7F,0xC0,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x01,0xFF,0xFF,0xF0,0x00,0xFF,0xC0,0x00,0x0F,0xE0,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x01,0xFF,0xFF,0xE0,0x03,0xFF,0xFF,0xFC,0x01,0xF0,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x01,0xDF,0xFF,0xC0,0x07,0xFF,0xFF,0xFF,0x80,0xF0,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x03,0xFF,0xFF,0x00,0x0F,0xFF,0xFF,0xFF,0xE0,0x38,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x07,0xFF,0xF8,0x00,0x1F,0xFF,0xF0,0x03,0xF8,0x38,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x07,0xFF,0xE0,0x00,0x3F,0xFF,0xFF,0xC0,0x7C,0x18,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x04,0x7F,0xF0,0x00,0x3F,0xFF,0xFF,0xF8,0x1E,0x08,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x01,0xFF,0xF8,0x00,0x7F,0xFF,0xFF,0xFE,0x0F,0x08,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x0F,0xFF,0xFC,0x00,0xFF,0xFF,0xFF,0xFF,0x87,0x08,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x1F,0xFF,0xFE,0x00,0xFF,0xFF,0xFF,0xFF,0x83,0x88,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x3F,0xFF,0xFE,0x01,0xFF,0xFF,0xFF,0xFF,0xC3,0x88,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x7F,0xFF,0xFE,0x01,0xFF,0xFF,0xFF,0xFF,0xE1,0x88,0x00,0x00,0x00,
- 0x00,0x00,0x00,0xFF,0xFF,0xFE,0x03,0xFF,0xFF,0xFF,0xFF,0xE1,0x88,0x00,0x00,0x00,
- 0x00,0x00,0x01,0xFF,0xFF,0xFE,0x03,0xFF,0xFF,0xFF,0xFF,0xF1,0x88,0x00,0x00,0x00,
- 0x00,0x00,0x01,0xFF,0xFF,0xFE,0x03,0xFF,0xFF,0xFF,0xFF,0xF3,0x08,0x00,0x00,0x00,
- 0x00,0x00,0x01,0xFF,0xFF,0xFF,0x07,0xFF,0xFF,0xFF,0xFF,0xF2,0x10,0x00,0x00,0x00,
- 0x00,0x00,0x01,0xFF,0xFF,0xFF,0x8F,0xFF,0xFF,0xFF,0xFF,0xF0,0x20,0x00,0x00,0x00,
- 0x00,0x00,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x70,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xFF,0x70,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xFF,0x70,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F,0xFF,0x7F,0x20,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xBF,0xFF,0x7F,0x20,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x7F,0xFF,0xFF,0xFF,0xFF,0xDF,0xFF,0x7E,0x20,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x3F,0xFF,0xFF,0xFF,0xFF,0xDF,0xFF,0x3E,0x40,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x1F,0xFF,0xFF,0xFF,0xFF,0xCF,0xFF,0x3C,0x40,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x0F,0xFF,0xFF,0xFF,0xFF,0xCF,0xFE,0x38,0x40,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x07,0xFF,0xFF,0xFF,0xFF,0x8F,0xFE,0x38,0x40,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x01,0xFF,0xFF,0xFF,0xFF,0x8F,0xFE,0x30,0x40,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0x1F,0x7C,0x20,0x40,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x7F,0xFF,0xFF,0xFE,0x1E,0x78,0x00,0x40,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x3F,0xFF,0xFF,0xFE,0x1E,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x1F,0xFF,0xFF,0xDA,0x3C,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x07,0xFF,0xFF,0xF2,0x30,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x01,0xFF,0xFF,0xF1,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0xFE,0x7F,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x7C,0x3F,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x78,0x1F,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x72,0x07,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x70,0x00,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0xC0,0x03,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x01,0x40,0x04,0xD8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x01,0x00,0x01,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x02,0x0C,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x02,0x40,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x0C,0x48,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x38,0x41,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x0F,0xE2,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
- };
- /******************************************************************************************
- * 函数名称 :
- * 功能描述 :
- * 参数 : 参数名称: 输入/输出? 类型 描述
- *
- * 返回值 :
- * 作者 :
- * 创建日期 :2006-12-19
- * 全局变量 :
- * 全局静态变量:
- * 局部静态变量:
- *----------------------------------------修改历史------------------------------------------
- * 当前版本 : 修改人: 修改日期:
- * 修改说明 :
- ******************************************************************************************/
- void init_lcd (void)
- {
- RST = 1;
- PSB = 1;
- wr_lcd(comm,0x30); /*30---基本指令动作*/
- wr_lcd(comm,0x01); /*清屏,地址指针指向00H*/
- wr_lcd(comm,0x06); /*光标的移动方向*/
- wr_lcd(comm,0x0c); /*开显示,关游标*/
- }
- /******************************************************************************************
- * 函数名称 :chn_disp
- * 功能描述 : 显示汉字或字符
- * 参数 : 参数名称: 输入/输出? 类型 描述
- *
- * 返回值 :
- * 作者 :
- * 创建日期 :2006-12-19
- * 全局变量 :
- * 全局静态变量:
- * 局部静态变量:
- *----------------------------------------修改历史------------------------------------------
- * 当前版本 : 修改人: 修改日期:
- * 修改说明 :
- ******************************************************************************************/
- void chn_disp(uchar code *chn)
- {
- uchar i,j;
- wr_lcd(comm,0x30);
- wr_lcd(comm,0x80);
- for(j=0;j<4;j++)
- {
- for(i=0;i<16;i++)
- wr_lcd(dat,chn[j*16+i]);
- }
- }
- /******************************************************************************************
- * 函数名称 :chn_disp1
- * 功能描述 : 上半屏显示汉字或字符
- * 参数 : 参数名称: 输入/输出? 类型 描述
- *
- * 返回值 :
- * 作者 :
- * 创建日期 :2006-12-19
- * 全局变量 :
- * 全局静态变量:
- * 局部静态变量:
- *----------------------------------------修改历史------------------------------------------
- * 当前版本 : 修改人: 修改日期:
- * 修改说明 :
- ******************************************************************************************/
- void chn_disp1(uchar code *chn)
- {
- uchar i,j;
- wr_lcd(comm,0x30);
- wr_lcd(comm,0x80);
- j=0;
- for(i=0;i<16;i++)
- wr_lcd(dat,chn[j*16+i]);
- wr_lcd(comm,0x90);
- j=1;
- for(i=0;i<16;i++)
- wr_lcd(dat,chn[j*16+i]);
- }
- /******************************************************************************************
- * 函数名称 :img_disp
- * 功能描述 : 显示图形
- * 参数 : 参数名称: 输入/输出? 类型 描述
- *
- * 返回值 :
- * 作者 :
- * 创建日期 :2006-12-19
- * 全局变量 :
- * 全局静态变量:
- * 局部静态变量:
- *----------------------------------------修改历史------------------------------------------
- * 当前版本 : 修改人: 修改日期:
- * 修改说明 :
- ******************************************************************************************/
- void img_disp(uchar code *img)
- {
- uchar i,j;
- for(j=0;j<32;j++)
- {
- for(i=0;i<8;i++)
- {
- wr_lcd(comm,0x34);
- wr_lcd(comm,y+j);
- wr_lcd(comm,x1+i);
- wr_lcd(comm,0x30);
- wr_lcd(dat,img[j*16+i*2]);
- wr_lcd(dat,img[j*16+i*2+1]);
- }
- }
- for(j=32;j<64;j++)
- {
- for(i=0;i<8;i++)
- {
- wr_lcd(comm,0x34);
- wr_lcd(comm,y+j-32);
- wr_lcd(comm,x2+i);
- wr_lcd(comm,0x30);
- wr_lcd(dat,img[j*16+i*2]);
- wr_lcd(dat,img[j*16+i*2+1]);
- }
- }
- wr_lcd (comm,0x36);
- }
- /******************************************************************************************
- * 函数名称 :img_disp1
- * 功能描述 : 下半屏显示图形
- * 参数 : 参数名称: 输入/输出? 类型 描述
- *
- * 返回值 :
- * 作者 :
- * 创建日期 :2006-12-19
- * 全局变量 :
- * 全局静态变量:
- * 局部静态变量:
- *----------------------------------------修改历史------------------------------------------
- * 当前版本 : 修改人: 修改日期:
- * 修改说明 :
- ******************************************************************************************/
- void img_disp1(uchar code *img)
- {
- uchar i,j;
- for(j=0;j<32;j++)
- {
- for(i=0;i<8;i++)
- {
- wr_lcd(comm,0x34);
- wr_lcd(comm,y+j);
- wr_lcd(comm,x2+i);
- wr_lcd(comm,0x30);
- wr_lcd(dat,img[j*16+i*2]);
- wr_lcd(dat,img[j*16+i*2+1]);
- }
- }
- wr_lcd(comm,0x36);
- }
- /******************************************************************************************
- * 函数名称 :lat_disp
- * 功能描述 : 显示点阵
- * 参数 : 参数名称: 输入/输出? 类型 描述
- *
- * 返回值 :
- * 作者 :
- * 创建日期 :2006-12-19
- * 全局变量 :
- * 全局静态变量:
- * 局部静态变量:
- *----------------------------------------修改历史------------------------------------------
- * 当前版本 : 修改人: 修改日期:
- * 修改说明 :
- ******************************************************************************************/
- void lat_disp(uchar data1,uchar data2)
- {
- uchar i,j,k,x;
- x=x1;
- for(k=0;k<2;k++)
- {
- for(j=0;j<16;j++)
- {
- for(i=0;i<8;i++)
- {
- wr_lcd(comm,0x34);
- wr_lcd(comm,y+j*2);
- wr_lcd(comm,x+i);
- wr_lcd(comm,0x30);
- wr_lcd(dat,data1);
- wr_lcd(dat,data1);
- }
- for(i=0;i<8;i++)
- {
- wr_lcd(comm,0x34);
- wr_lcd(comm,y+j*2+1);
- wr_lcd(comm,x+i);
- wr_lcd(comm,0x30);
- wr_lcd(dat,data2);
- wr_lcd(dat,data2);
- }
- }
- x=x2;
- }
- wr_lcd(comm,0x36);
- }
- /******************************************************************************************
- * 函数名称 :con_disp
- * 功能描述 : 当data1=0xff,data2=0xff时,在x0,y0处反白显示16xl*yl
- * 参数 : 参数名称: 输入/输出? 类型 描述
- *
- * 返回值 :
- * 作者 :
- * 创建日期 :2006-12-19
- * 全局变量 :
- * 全局静态变量:
- * 局部静态变量:
- *----------------------------------------修改历史------------------------------------------
- * 当前版本 : 修改人: 修改日期:
- * 修改说明 :
- ******************************************************************************************/
- void con_disp(uchar data1,uchar data2,uchar x0,uchar y0,uchar xl,uchar yl)
- {
- uchar i,j;
- for(j=0;j {
- for(i=0;i {
- wr_lcd(comm,0x34);
- wr_lcd(comm,y0+j);
- wr_lcd(comm,x0+i);
- wr_lcd(comm,0x30);
- wr_lcd(dat,data1);
- wr_lcd(dat,data2);
- }
- }
- wr_lcd(comm,0x36);
- }
- /******************************************************************************************
- * 函数名称 :clrram
- * 功能描述 : 清DDRAM
- * 参数 : 参数名称: 输入/输出? 类型 描述
- *
- * 返回值 :
- * 作者 :
- * 创建日期 :2006-12-19
- * 全局变量 :
- * 全局静态变量:
- * 局部静态变量:
- *----------------------------------------修改历史------------------------------------------
- * 当前版本 : 修改人: 修改日期:
- * 修改说明 :
- ******************************************************************************************/
- void clrram(void)
- {
- wr_lcd(comm,0x30);
- wr_lcd(comm,0x01);
- }
- /******************************************************************************************
- * 函数名称 :wr_lcd
- * 功能描述 :
- * 参数 : 参数名称: 输入/输出? 类型 描述
- *
- * 返回值 :
- * 作者 :
- * 创建日期 :2006-12-19
- * 全局变量 :
- * 全局静态变量:
- * 局部静态变量:
- *----------------------------------------修改历史------------------------------------------
- * 当前版本 : 修改人: 修改日期:
- * 修改说明 :
- ******************************************************************************************/
- void wr_lcd(uchar dat_comm,uchar content)
- {
- chk_busy ();
- if(dat_comm)
- {
- RS = 1; //data
- RW = 0; //write
- }
- else
- {
- RS = 0; //command
- RW = 0; //write
- }
- P0=content; //output data or comm
- E = 1;
- ;
- E = 0;
- }
- /******************************************************************************************
- * 函数名称 :chk_busy
- * 功能描述 :
- * 参数 : 参数名称: 输入/输出? 类型 描述
- *
- * 返回值 :
- * 作者 :
- * 创建日期 :2006-12-19
- * 全局变量 :
- * 全局静态变量:
- * 局部静态变量:
- *----------------------------------------修改历史------------------------------------------
- * 当前版本 : 修改人: 修改日期:
- * 修改说明 :
- ******************************************************************************************/
- void chk_busy(void)
- {
- P0 = 0xff;
- RS = 0;
- RW = 1;
- E = 1;
- while(busy==1);
- E = 0;
- }
- /******************************************************************************************
- * 函数名称 :
- * 功能描述 :
- * 参数 : 参数名称: 输入/输出? 类型 描述
- *
- * 返回值 :
- * 作者 :
- * 创建日期 :2006-12-19
- * 全局变量 :
- * 全局静态变量:
- * 局部静态变量:
- *----------------------------------------修改历史------------------------------------------
- * 当前版本 : 修改人: 修改日期:
- * 修改说明 :
- ******************************************************************************************/
- void delay(uint us) //delay time
- {
- while(us--);
- }
- /******************************************************************************************
- * 函数名称 :
- * 功能描述 :
- * 参数 : 参数名称: 输入/输出? 类型 描述
- *
- * 返回值 :
- * 作者 :
- * 创建日期 :2006-12-19
- * 全局变量 :
- * 全局静态变量:
- * 局部静态变量:
- *----------------------------------------修改历史------------------------------------------
- * 当前版本 : 修改人: 修改日期:
- * 修改说明 :
- ******************************************************************************************/
- void delay1(uint ms)
- {
- uint i,j;
- for(i=0;i for(j=0;j<15;j++)
- delay(1);
- }
- /******************************************************************************************
- * 函数名称 :
- * 功能描述 :
- * 参数 : 参数名称: 输入/输出? 类型 描述
- *
- * 返回值 :
- * 作者 :
- * 创建日期 :2006-12-19
- * 全局变量 :
- * 全局静态变量:
- * 局部静态变量:
- *----------------------------------------修改历史------------------------------------------
- * 当前版本 : 修改人: 修改日期:
- * 修改说明 :
- ******************************************************************************************/
- void main()
- {
- SP=0x5f;
- init_lcd();
- while(1)
- {
- lat_disp(0x00,0x00);
- chn_disp(tab1);
- con_disp(0xff,0xff,0x8c,0x80,2,16);
- delay1(8000);
- clrram();
- lat_disp(0xcc,0xcc);
- delay1(8000);
- lat_disp(0x00,0x00);
- chn_disp1(tab31);
- img_disp1(tab32);
- delay1 (8000);
- clrram();
- lat_disp (0xff,0x00);
- delay1(8000);
- img_disp(tab5);
- delay1(8000);
- }
- }
|