我用定时器作时钟,在12864上显示不了。
请大家帮我看看是什么原因。
我把写地址,数据的程序发上来。
请大家帮忙。
void xianshi() //显示
{
uint i;
for(i=0;i<16;i++)
lcd_wdat(0x50+i);
for(i=0;i<16;i++)
lcd_wdat(dis1[i]);
lcd_wcmd(0x89);
lcd_wdat(shi1);
//lcd_wcmd(0x8e);
lcd_wdat(ge);
for(i=0;i<16;i++)
lcd_wdat(0x20+i);
for(i=0;i<16;i++)
lcd_wdat(0x00+i);
}
void main(void)
{
uint i,j;
//uchar laba[]={0x00,0x00,0x00,0xc0,0x01,0x48,
//0x02,0x44,0x04,0x52,0xf8,0x49,0x88,0x88,0x49,0x88};
//board config(0xb8);
lcd_init();
dula=0;
wela=0;
lcd_wcmd(0x80); //写第一行的显示地址
for(i=0;i<16;i++);
lcd_wdat(0x00+i); //显示0x30-0x3f对应的字符
lcd_wcmd(0x90); //写第二行的显示地址
for(i=0;i<16;i++);
lcd_wdat(0x10+i); //显示0x40-0x4f对应的字符
lcd_wcmd(0x80); //写第三行的显示地址
for(i=0;i<16;i++);
lcd_wdat(0x00+i); //显示0x50-0x5f对应的字符
lcd_wcmd(0x90); //写第四行的显示地址
for(i=0;i<16;i++);
lcd_wdat(0x10+i); //显示0x60-0x6f对应的字符
lcd_wdat(0x30+i);
/*for(i=1000;i>0;i--)
{
for(j=1000;j>0;j--)
_nop();
}*/
lcd_wcmd(0x01);
lcd_wcmd(0x80);
for(i=0;i<16;i++)
lcd_wdat(0x00+i);
lcd_wcmd(0x90);
for(i=0;i<16;i++)
lcd_wdat(0x10+i);
lcd_wcmd(0x88);
for(i=0;i<16;i++)
lcd_wdat(0x20+i);
lcd_wcmd(0x98);
for(i=0;i<16;i++)
lcd_wdat(0x30+i);
lcd_wcmd(0x03);
xianshi();
while(1);
} |