首页 > 其他 > 详细

STM32 12864驱动

时间:2015-03-27 01:08:30      阅读:384      评论:0      收藏:0      [点我收藏+]

有些12864没有以下全部功能:

DDRAM:(Data Display Ram),数据显示RAM,往里面写啥,屏幕就会显示啥。
CGROM:(Character Generation ROM),字符发生ROM。里面存储了中文汉字的字模,也称作中文字库,编码方式有GB2312(中文简体)和BIG5(中文繁体)。
CGRAM:(Character Generation RAM),字符发生RAM,,12864内部提供了64×2B的CGRAM,可用于用户自定义4个16×16字符,每个字符占用32个字节。
GDRAM:(Graphic Display RAM):图形显示RAM,用于绘图,往里面写啥,屏幕就会显示啥,往GDRAM中写的数据是图形的点阵信息,每个点用1bit来保存其显示与否。
 技术分享

绘图RAM就是给这些点阵置1或置0,可以看到其实它本来是32行×256列的,但是分成了上下两屏显示,每个点对应了屏幕上的一个点。要使用绘图功能需要开启扩展指令。然后写地址,再读写数据。

GDRAM的读写:GDRAM的操作基本单位是一个字,也就是2个字节。

写数据:先开启扩展指令集(0x36),然后送地址,这里的地址与DDRAM中的略有不同,DDRAM中的地址只有一个,那就是字地址。而GDRAM中的地址有2个,分别是字地址(列地址/水平地址X)和位地址(行地址/垂直地址Y),上图中的垂直地址就是00H~31H,水平地址就是00H~15H,写地址时先写垂直地址(行地址)再写水平地址(列地址),也就是连续写入两个地址,然后再连续写入2个字节的数据。如图中所示,左边为高字节右边为低字节。为1的点被描黑,为0的点则显示空白。这里列举个写地址的例子:写GDRAM地址指令是0x80+地址。被加上的地址就是上面列举的X和Y,假设我们要写第一行的2个字节,那么写入地址就是0x00H(写行地址)然后写0x80H(列地址),之后才连续写入2个字节的数据(先高字节后低字节)。再如写屏幕右下角的2个字节,先写行地址0x9F(0x80+32),再写列地址0x8F(0x80+15),然后连续写入2个字节的数据。编程中写地址函数中直接用参数(0x+32),而不必自己相加。

读数据:先开启扩展指令集,然后写行地址、写列地址,假读一次,再连续读2字节的数据(先高字节后低字节)。

 

 

 

 

STM32 12864驱动

原文:http://www.cnblogs.com/ht-beyond/p/4370429.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!