
ST7920驱动的12964液晶显示步骤.doc
17页写液晶程序的步骤:1、 先认真看 12864 液晶的技术资料(不要放过每一个字,每一个字都很关键)2、 特别是指令说明,时序图,时序参数这是至关重要的一点3、 开始写程序了,说白了液晶是另一种芯片,只是现在用单片机来驱动它吧了来驱动12864 液晶显示,首先要初始化(就是在驱动 12864 液晶前做好准备工作就相当于,启动单片机定时器一样做好初始化准备工作) 1,当模块在接受指令前,微处理必须先确认模块内部处于非忙碌状态,即读取 BF 的标志,当 BF 为 0 方可接受新的指令 初始化过程:延时几 MS,1, void init_lcd(void) //这是初始化子程序 4、 {5、 rst=1;//6、 psb=0; //串口驱动 ; PSB=1,并口驱动7、 Write_Cmd (,0x30); /*30---基本指令动作,写扩充功能指令*/ 8、 Write_Cmd (,0x01); /*清屏,地址指针指向 00H*/9、 delay(100);10、 Write_Cmd (0x06); 11、 /*光标的移动方向,进入点设定, I/D=1 光标右移,S=1 文字移动有效*/12、 Write_Cmd (0x0c); /*开显示,关游标*/0x0f 就是开显示,开游标13、 }14、 写指令过程:看到时序图可知,当 RS=0 时,R/W=0 时,且在 E=1 时再变为E=0 的下降沿把准备好的指令码送给 12864 液晶芯片15、 void Write_Cmd(unsigned char Cmd)写指令子程序16、 {17、 Check_Busy();//BF 是否等于 0,因为等于 1 时是写不进去的,直等到为 018、 RS=0;19、 RW=0;20、 E=1;21、 DataPort=Cmd;//这就把以准备的指令数送进去了22、 DelayUs2x(5);23、 E=0;24、 DelayUs2x(5);25、 }26、 写数据过程:看到上面的时序图可知,只有当 RS=1 时,R/W=0 时,E=1 到 0 时才能把数据写进去。
27、 void Write_Data(unsigned char Data)写数据子程序28、 {29、 Check_Busy(); //这个就是检查 BF 是否有空的子程序,一般延时一点时间就可以了不用一至检查的30、 RS=1;31、 RW=0;32、 E=1;33、 DataPort=Data;//这就把以要写的数据送进去了34、 DelayUs2x(5);35、 E=0;36、 DelayUs2x(5);37、 }数据写进去就是你要显示的东西, ,例如你要显示汉字 看一显示汉字子程序吧 void chn_disp(uchar code *chn)38、 {39、 uchar i,j;40、 Write_Cmd (0x30);//这是写指令让显示做好准备41、 Write_Cmd (0x80);//这是数据写进去要让字显示的开始的地方,这是起始地址42、 for(j=0;j#define uint unsigned int#define uchar unsigned char#define FIRSTROW 0x80 #define x1 0x80#define x2 0x88#define y 0x80#define comm 0#define dat 1void lcd_mov_up();sbit cs = P2^1;sbit std = P2^2;sbit sclk = P2^4;sbit psb = P2^5; //H=并口; L=串口;sbit rst = P2^3; //Reset Signal 低电平有效void wr_lcd (uchar dat_comm,uchar content);void delay (uint us);uchar code tab1[]={"成都电子高等专科""电气与电子工程系""电子高专技术论谈"""};uchar code tab31[]={"成都电子高专技术""WWW.CEC.EDU.CN"};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,。
