资料介绍
MCU与LCD时序控制的基本方法
MCU与LCD时序控制的基本方法
一般来说,LCD 模块的控制都是通过 MCU 对 LCD
模块的内部寄存器、显存进行操作来最终完成的;在此我们设计了三个基本的时序控制
程序,分别是:
写寄存器函数(LCD_RegWrite)δ
δ
数据写函数(LCD_DataWrite)
数据读函数(LCD_DataRead)δ
这三个函数需要严格的按照 LCD 所要求的时序来编写,下面可以看看 MzL02
模块时序图:
(请看附件)[pic][pic]
注意:上图是该模块的控制 IC
资料中的原版时序图,其实有些示意不是太稳妥(少标出了RW
线信号的要求),或者说是不太严谨,不过这些不作讨论,请看分析即可;而 EP
的有效触发沿在图中很有可能示意有误,实测为上升沿。图中
CS1B(CS2)的信号即为片选 CS,RS 即为数据/寄存器的选择端口 A0 信号,E 为
EP;当作写入寄存器数据操作时,首先要将 A0 置低,以通知 LCD
模块即将进行的是对寄存器的操作;而 RW
线需要置低,以示即将要进行的是写入的操作;然后片选 CS
信号置低,装载数据至总线,然后在 EP 线上产生一个上升沿以触发 LCD
模块将总线上的数据最终载入;在前面的操作完成后一般都会将各个信号线的状态恢复
。而数据(显存)写入、数据读出的操作时序也比较类似,这里就不多作介绍,直接参
考例程即可。
//=======================================================
// 函数: void LCD_RegWrite(unsigned char Command)
// 描述: 写一个字节的数据至 LCD 中的控制寄存器当中
// 参数: Command 写入的数据,低八位有效(byte)
// 返回: 无
//=========