|
公司产品更新,小弟刚刚进来工作,现在负责一些程序的更新,这次要调一个液晶12232的驱动程序。现在的问题是,之前的程序勉强能用,但是总会有出乱码的地方,由于之前没有接触过这种型号的液晶,不知道从哪里入手。现在把程序贴出来希望高手们指点下!
//write command
void LcdWriteCmd(unsigned char Cmd)
{ LcdDatDIR=0xff;
LcdConDIR|=COMA0+COMBA+COMBB;
LcdConOUT&=~COMA0;
LcdConOUT|=COMBA;//LcdConOUT&=~COMBB;
LcdDatOUT=Cmd;
LcdConOUT&=~COMBA; //e1
delay_test(200);
LcdConOUT|=COMBB;
LcdDatOUT=Cmd;
LcdConOUT&=~COMBB; //e2
}
//write data
void LcdWriteData(unsigned char Eflag,unsigned char Data)
{
LcdDatDIR=0xff;
LcdConDIR|=COMA0+COMBA+COMBB;
LcdConOUT|=COMA0;
// delay_test(200);
if(Eflag==1)
{ LcdConOUT|=COMBA;//LcdConOUT&=~COMBB;
LcdDatOUT=Data;
LcdConOUT&=~COMBA; //e1
}
else
{ LcdConOUT|=COMBB;
LcdDatOUT=Data;
LcdConOUT&=~COMBB; //e2
}
}
//write a char data to Lcd
void DispChar(unsigned char Page,unsigned char Column,unsigned char DataAddr,unsigned char fanbaiFlag)
{ unsigned char i,DataTemp;
ColumnTemp=Column;
switch (Page)
{ case 1: LcdWriteCmd(0xb8);break;
case 2: LcdWriteCmd(0xb9);break;
case 3: LcdWriteCmd(0xba);break;
case 4: LcdWriteCmd(0xbb);break;
default:break;
}
for (i=0;i<=6;i++)
{ if (fanbaiFlag==1){DataTemp=DispCode[DataAddr];}
else{DataTemp=~DispCode[DataAddr];}
if(ColumnTemp<=60)
{ LcdWriteCmd(ColumnTemp);
LcdWriteData(1,DataTemp);
ColumnTemp++;
}
else
{ LcdWriteCmd(ColumnTemp-61);
LcdWriteData(2,DataTemp);
ColumnTemp++;
}
}
}
//Clear Lcd Screen
void ClearCld(void)
{ unsigned int i,j;
for(i=0xb8;i<=0xbb;i++)
{ LcdWriteCmd(i);
LcdWriteCmd(0);
for(j=0;j<=61;j++)
{ LcdDatDIR=0xff;
LcdConDIR|=COMA0+COMBA+COMBB;
LcdConOUT|=COMA0;
LcdConOUT|=COMBA;
LcdDatOUT=0;
LcdConOUT&=~COMBA; //e1
LcdConOUT|=COMBB;
LcdDatOUT=0;
LcdConOUT&=~COMBB; //e2
}
}
}
//Lcd Init
void LcdInit(void)
{ LcdWriteCmd(0xe2); //software reset
LcdWriteCmd(0xae); //close display
LcdWriteCmd(0xa4); //stats drive off
LcdWriteCmd(0xa9); //select duty 1:32
LcdWriteCmd(0xa0); //select ADC:CW output
LcdWriteCmd(0xee); //read-modify-write off
LcdWriteCmd(0x00); //开始的 列地址
LcdWriteCmd(0xc0); //开始的 行地址
LcdWriteCmd(0xaf); //open display
}
主要内容就这样了,现在的问题就是有时候字符显示正确,有时候就乱码,有时还出现上下两部分内容镜像的情况。求助! |
阿莫论坛20周年了!感谢大家的支持与爱护!!
曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……
|