标题: LCD12864反白程序怎么搞?网上的反应都太慢了 [打印本页]

作者: 无限飞翔    时间: 2021-1-29 18:07
标题: LCD12864反白程序怎么搞?网上的反应都太慢了
  网上找了很多12864液晶 任意位置反白的程序,但是反应都太慢了,快的也要四五秒,不能接受啊!!!!!各位 朋友们,高手们,大师们,谁有写好的  参考下.
谢谢啦!!!!


作者: 人人学会单片机    时间: 2021-1-30 10:20
使用扩展指令 里面有 反白显示的指令 先指令 后地址 就可以了
作者: 无限飞翔    时间: 2021-1-30 10:39
人人学会单片机 发表于 2021-1-30 10:20
使用扩展指令 里面有 反白显示的指令 先指令 后地址 就可以了

有编好的吗》?试了几次,刚解决花屏问题。
作者: 18701931930    时间: 2021-1-30 13:39
用12864的绘图模式,取模的时候设置好取模方式
作者: 人人学会单片机    时间: 2021-1-30 14:08
无限飞翔 发表于 2021-1-30 10:39
有编好的吗》?试了几次,刚解决花屏问题。

http://www.51hei.com/bbs/dpj-200462-1.html  这是我写的LCD12864的资料包 你可以看看
作者: 无限飞翔    时间: 2021-1-31 16:46
人人学会单片机 发表于 2021-1-30 14:08
http://www.51hei.com/bbs/dpj-200462-1.html  这是我写的LCD12864的资料包 你可以看看

谢谢!
你这里没有我需要的。
作者: KongQuan    时间: 2021-1-31 21:30
如果是点阵屏,那不过是把数据取反后送显示。
作者: 无限飞翔    时间: 2021-2-4 21:02
KongQuan 发表于 2021-1-31 21:30
如果是点阵屏,那不过是把数据取反后送显示。

是的,就是在绘图模式下,就是延时太厉害,4-5秒,才能显示出来,试了好多 。
作者: cn_zhx    时间: 2021-2-5 16:04
扩展指令集里有反白指令
作者: jjyyuu89    时间: 2021-2-6 11:56
修改寄存器值就可以了
作者: oplink    时间: 2021-2-6 15:21
/****************************************************************************/
//字符反白显示
//输入参数:CX=要反白字符的行(0-3)
//CY=要反白字符的列(0-7)
//width=要反白字符的长度(1-16)
/****************************************************************************/
void convertChar (uchar CX, CY, width)
{
        displayPhoto(OFF,ON);
        lcdPosY = 0x80;

        if (CX == 0)
        {
                CX = 0x80;
                halfLineCnt = 16;
        }
        else if (CX == 1)
        {
                CX = 0x80;
                halfLineCnt = 32;
        }
        else if (CX == 2)
        {
                CX = 0x88;
                halfLineCnt = 16;
        }
        else if (CX == 3)
        {
                CX = 0x88;
                halfLineCnt = 32;
        }
        lcdPosX = CX + CY;
       
    for (; halfLineCnt != 0; halfLineCnt--)
        {
                basicBlock = width;
                wrPosition();
       
                for (;basicBlock != 0; basicBlock--)
                {
                        if (halfLineCnt > 16)
                        {
                                lcdWriteData(0x00);
                        }
                        else
                        {
                                lcdWriteData (0xff);
                        }
                }
                lcdPosY++;
        }

        lcdWriteCommand(cFuncDrawOn);
        lcdWriteCommand(cFunctionSetB);
}

从本论坛上考的




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1