打印
[PIC®/AVR®/dsPIC®产品]

12864绘图问题

[复制链接]
998|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sunflower860|  楼主 | 2013-11-19 09:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本人菜鸟,编了一段12864的绘图程序,其实就是显示8位宽的游标。
但运行结果是屏幕花了,程序如下:
void Write_LCD_GDRAM(uchar Row_No, uchar Line_No)
{
    uchar j, dir;
   
    Write_LCD_Cmd(0x36);                               //扩充指令集
    Write_LCD_Cmd(0x80+(Line_No%2)*0x10+15);
    Write_LCD_Cmd(0x80+(Line_No>2)*0x08+Row_No/2);
    dir = Row_No % 2;
    if(dir == 1)                                       //16*16区域的右半部反白
    {
        Write_LCD_Data(0x00);
        Write_LCD_Data(0xFF);
    }
    else                                               // 16*16区域的左半部反白
    {                        
        Write_LCD_Data(0xFF);
        Write_LCD_Data(0x00);
    }
    Write_LCD_Cmd(0x30);
}
我想问一下,绘图时,是不是先写入0x36的命令,再写Y坐标,再写X坐标,在写点显示字,最后写0x30的命令。这个顺序对么?写命令与数据之间需要多少微妙延时?
沙发
Rain_King| | 2013-11-19 09:55 | 只看该作者
没有使用过这种液晶的屏幕...但是我觉得应该先是一个点点的点亮吧,看是否自己写入数据函数能否正确工作,在考虑上一层的具体的东西吧,还有写入顺序和时序,资料上应该会有的啊............

使用特权

评论回复
板凳
sunflower860|  楼主 | 2013-11-19 11:11 | 只看该作者
Rain_King 发表于 2013-11-19 09:55
没有使用过这种液晶的屏幕...但是我觉得应该先是一个点点的点亮吧,看是否自己写入数据函数能否正确工作, ...

资料是错的,而网上有各种写法,不知道怎么弄才是对的!

使用特权

评论回复
地板
Rain_King| | 2013-11-19 11:22 | 只看该作者
sunflower860 发表于 2013-11-19 11:11
资料是错的,而网上有各种写法,不知道怎么弄才是对的!

你先一个个点点亮啊........不要一开始就做上层具体事..

使用特权

评论回复
5
Rain_King| | 2013-11-19 11:23 | 只看该作者
sunflower860 发表于 2013-11-19 11:11
资料是错的,而网上有各种写法,不知道怎么弄才是对的!

先要确保你的写数据的函数功能是正常的

使用特权

评论回复
6
兰天白云| | 2013-11-19 12:47 | 只看该作者
函数从小写起
1、描点
2、描直线
3、描矩形框
4、描矩形块(填满)

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

18

帖子

0

粉丝