文档详情

OCM19264液晶屏显示程序.doc

发布:2017-12-23约9.7千字共9页下载文档
文本预览下载声明
Lcd.c文件 #includereg52.h #includemath.h #includeINTRINS.H #includelcd.h /********************引脚定义********************/ sbit RS =P1^2; //数据指令 sbit RW =P1^0; //读写 sbit E =P1^1; //使能 sbit CSL =P1^3; //左片选 sbit CSM =P1^4; //中片选 sbit CSR =P1^5; //右片选 sfr datalcm=0x80; //数据口 #define uchar unsigned char #define uint unsigned int #define Col_Add 0x40 //Y地址 #define Page_Add 0xb8 //x地址 uchar code yu[]; uchar code yin[]; uchar code bao[]; uchar code jing[]; uchar code xi[]; uchar code tong[]; uchar code hong[]; uchar code shi[]; uchar code jian[]; uchar code lv[]; uchar code huang[]; uchar code ci[]; uchar code shu[]; uchar code maohao[]; void wtcom(void); /***************************/ /*检查Busy */ /***************************/ void BusyL(void) { CSL= 0; CSM= 1; CSR= 1; wtcom(); } void BusyM(void) { CSL= 1; CSM= 0; CSR= 1; wtcom(); } void BusyR(void) { CSL= 1; CSM= 1; CSR= 0; wtcom(); } void wtcom(void) { RS = 0; //指令 RW = 1; datalcm = 0xFF; //输出0xff以便读取正确 E = 1; _nop_(); while(datalcm 0x80); //Status Read Bit7 = BUSY E = 0; } void WriteCommandL( unsigned char CommandByte ) { BusyL(); RS = 0; //指令 RW = 0; datalcm = CommandByte; E = 1; _nop_(); E = 0; } void WriteCommandM( unsigned char CommandByte ) { BusyM(); RS = 0; //指令 RW = 0; datalcm = CommandByte; E = 1; _nop_(); E = 0; } void WriteCommandR( unsigned char CommandByte ) { BusyR(); RS = 0; //指令 RW = 0; datalcm = CommandByte; E = 1; _nop_(); E = 0; } /***************************/ /*写数据 */ /***************************/ void WriteData( unsigned char DataByte ) { void wtcom(); RS = 1; /*数据输出*/ RW = 0; /*写输出 */ datalcm= DataByte; /*数据输出到数据口 */ E = 1;
显示全部
相似文档