基于AVR单片机的VRAM型彩色液晶显示模块设计
除了上面两个基本的函数外,对YD2502最基本的操作是往VRAM 里写数据,根据上面给出的指令码,具体函数如下:
4.2 画点函数的实现
要在液晶上实现显示字符和画图等功能,在屏幕上显示一个点是实现这些功能的基础。画点函数实现的步骤是:首先确定该点对应的VRAM中的内存位置,找到该点具体对应的数据位,填充显示颜色的数据,该点就按对应的颜色显示出来了。
4.2.1 显示内存与屏幕点阵的对应关系
YD2502屏幕点阵为320×240,每一个点对应3个像素(RGB),屏幕上8个点对应内存3个字节,一行对应320/8×3=120个字节,其对应关系如下:
其中R,G,B表示红、绿、蓝三原色,D7~D0表示对应的数据位。
对于屏幕上坐标为(X,Y)的点,其对应内存地址的计算方法为:
当Y=0时 SRAM=0EFH×100H+[INT(X/8)]×3
当Y>0时 SRAM=(Y-1)×100H+[INT(X/8)]×3
通过(X/8)的余数得出具体的内存位置:
当余数为0 则 RAM=SRAM [1110,0000]
当余数为1 则 RAM=SRAM [0001,1100]
当余数为2 则 RAM1=SRAM [0000,0011]
RAM2 = SRAM + 1[1000 ,0000 ]
当余数为3 则 RAM = SRAM + 1[0111 ,0000 ]
当余数为4 则 RAM = SRAM + 1[0000 ,1110 ]
当余数为5 则 RAM1 = SRAM + 1[0000 ,0001 ]
RAM2 = SRAM + 2[1100 ,0000 ]
当余数为6 则 RAM = SRAM + 2[0011 ,1000 ]
当余数为7 则 RAM = SRAM + 2[0000 ,0111 ]
其中[ ]内为“1”的位表示应该填充颜色的位置,SRAM表示该点对应的基础地址,RAM、RAM1和RAM2表示该点对应的实际内存地址。
评论