|
发表于 2010-11-29 12:00:03
|
显示全部楼层
1、检查复位引脚
2、换个12M的晶振
3、检查初始化代码
希望能帮到你。
void LCD_Initial() //v0 -17V 用模拟总线时,去掉工程设置的外部RAM
{
// //LCD_RST=0;
CmdWrite(0x40); //系统参数 [C]
DataWrite(0x30); //基本配置 [DR T/L IV 1 W/S M2 M1 M0] 内部字模0
DataWrite(0x87); //单字符宽度+字间距
DataWrite(0x07); //单字符高度+行间距
DataWrite(0x27); //一行多少字节 -1
DataWrite(0x42); //屏扫描率 TC/R 大于上一参数+4以上
DataWrite(0xF0); //高度参数L/F 占240像素行
DataWrite(0x28); //字符行数AP 纵列来看,有多少字节 40个
DataWrite(0x00);
//0x30,0x87,0x07,0x27,0x42,0xf0,0x28,0x00
CmdWrite(0x44); //各屏位置参数
DataWrite(0x00); //指定第一屏的首地址
DataWrite(0x00);
DataWrite(0xF0); //占240行
DataWrite(0x80); //指定第二屏的首地址
DataWrite(0x25);
DataWrite(0xF0);
DataWrite(0x00); //指定第三屏的首地址
DataWrite(0x4B);
DataWrite(0x80); //指定第四屏的首地址 双屏才用
DataWrite(0x70);
//0x00,0x00,0xF0,0x00,0x40,0xF0,0x00,0x80,0x00,0x00
CmdWrite(0x58); //关显示,321c
//DataWrite(0x14); //两屏光标全开,不闪烁 E7
DataWrite(0x54); //三屏光标全开,不闪烁 E7
//DataWrite(0x04); //一屏光标全开,不闪烁 E7
CmdWrite(0x5b); //合成方式
DataWrite(0x1C); //0x00 内部字符 0x0C 外部图像字模式
CmdWrite(0x5A); //点位移
DataWrite(0x00);
CmdWrite(0x5c); //字模初地址
DataWrite(0x80);
DataWrite(0x70);
CmdWrite(0x5d); //光标形状
DataWrite(0x07);
DataWrite(0x07);
CmdWrite(0x4c); //光标自动移动方向
Drew_Screen(3,0x00); //第三屏填0
Drew_Screen(2,0x00); //第二屏填0
Drew_Screen(1,0x00); //第一屏填0
CmdWrite(0x46); //到开始位置
DataWrite( 0x00 );
DataWrite( 0x00 );
CmdWrite(0x59); //开显示
//DDRG|=0x10;
//PORTG&=0x0F; //LOW开背光
P_BASE=LCD_P1_BASE;//默认
XY_POS.I_data=P_BASE;
XPOS=0;YPOS=0;
Off_LCD_CS;
} |
|