rjx 发表于 2014-6-8 15:40:05

请教这个KS0108的清屏函数为什么只能清1、3、5、7行?

这个KS0108的清屏函数为什么只能清1、3、5、7行?2468行清不掉。要怎么改才行?

#define LCD_PAGE      0xB8 //页指令
#define LCD_COL       0x40 //列指令

void Clr_Scr(void)
{
uchar j,k;
CS1=1;CS2=1;
LCD_Write_Command(LCD_PAGE+0);
LCD_Write_Command(LCD_COL+0);
for(k=0;k<8;k++)
{
   LCD_Write_Command(LCD_PAGE|k);
   for(j=0;j<64;j++)LCD_Write_Data(0x00);
   Delay_ms(2);
}
}

nsj21n 发表于 2014-6-9 08:43:57

判忙加进去再试一下

menglogic 发表于 2014-6-9 09:04:54

我的是这样子写的:
/*****************************************/
//清除KS0108显示存储器
/****************************************/
void clr_screen(void)
{
        u8 i,j;
        LCD_CS1=1;
        LCD_CS2=1;
        for(i=0;i<8;i++)
        {
                  lcd_write_reg(set_page+i);
                lcd_write_reg(set_column);
                for(j=0;j<64;j++)
                {
                        lcd_write_data(0x00);
                        delay_us(5);
                }
        }

}

rjx 发表于 2014-6-9 11:05:38

谢谢楼上,按你的改就行了。就是把列的那句放在循环里就行了。
页: [1]
查看完整版本: 请教这个KS0108的清屏函数为什么只能清1、3、5、7行?