12864操作

学12864液晶有一段时间了(大概一个星期左右吧),感觉收获还是蛮大的,虽然有时候一个小小的问题要搞个老半天才会明白,但是我还是喜欢这样的生活,不能简单的用充实就能表达的。因为我也表达不出到底是什么感觉,就是觉得很爽吧。我发现我已经爱上了这个东西。它那永远充满神奇的知识要我去探索,让我去追求新的高度。去实现一个又一个的实验,去接受一个又一个的挑战,还有挑战之后获得成功的喜悦,好了。废话少说了。我下面来说说我这个星期来学习12864的成果和一些收获吧。
对于12864其实也和8x8点阵还有那个1602的控制还是差不多的。只是对于我的这块液晶它是st7920驱动的,就是想7920发送一些指令然后就控制了12864了。呵呵。

难点:CGRAM的理解,DDRAM,GDRAM关键还是GDRAM难一点啦。
1,指令包括一些基本的指令和一些扩展的指令。其中要设置基本指令时要注意的是对于设置为8位并行是写(0x30)指令要写两次,因为两条命令要两条指令。不可能用一条指令去执行两个命令。
2,在每次接受指令前都要检测内部忙标志BF。也可以短暂延时,由于单片机的操作速度慢于液晶控制器的反应速度,因此可不进行读写检测,或者只进行简短的延时即可。
3,12864是128列64行,而相对于DDRAM 来说
是4行8列。
4,每次写只能写进去8位数,而一个字是16x16的即是2字节x16行=32字节。即一个汉字要占用32字节的空间。
而12864总共可以显示8列x4行=32个汉字。
所以写一个汉字要写两次,先写高8位,在写低8位。

5,GDRAM,其实12864的GDRAM只占用st7920的一半,st7920实际上是256x64的,而12864只有128x64所以只用了一半。而12864就是将256x64的上半部分截下来的。即256列x32行,
而又12864的256列x32行从中间截开了。并且把后面一节放到了下面。也即上半屏是128列x32行,下半屏也是128列x32行,也就是1,3行的DDRAM地址是连起来的。2,4行的DDRAM地址是连起来的。DDRAM的地址是从左向右递减的。即左边是高位地址。右边是低位地址。
水平方向X--以字节单位
垂直方向Y--以位为单位
还有注意的是因为在直线开显示指令时是把DDram和Gdram全部都打开的,所以每次开显示时会同时显示DDRAM的内容和GDRAM的内容。因此在绘图之前应该清除GDRAM。

6,画线函数
理解了打点函数,那么画水平线和垂直线就很容易了。但是画任意的直线就有点难度了。因为12864是点阵组成的。所以并不能像在纸上画直线那样,12864画任意的直线一般是用bresenham算法画的。
7,还有很多的内容还没有进行深入的理解。

 

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值