LCD的通用驱动电路IP核设计
时间:09-01
来源:互联网
点击:
控制逻辑模块
该模块的主要作用是控制信号数据传输和选择列信号线的数目。可以通过列数控制输入端M来控制列数控制锁存器子模块、驱动锁存器子模块和时钟发生器来实现适用于不同规模LCD的功能。根据需要,通过向列数控制输入端M输入不同的数值,来控制有多少位列数控制锁存器处于工作状态,其他的锁存器单元则置为空闲态。在工作周期内把显示数据RAM中的数据通过8位数据总线锁存到对应的列数控制锁存器中,然后在一个时钟信号控制下一次锁存到驱动锁存器中,以作为电极驱动模块的输入信号。这样,IP核可以实现控制选择驱动列数的功能。当M为“000”时,列数控制锁存器的低8位(第一个锁存器)工作,其它的全置闲,对应的列电极是SEG0"SEG7;当M为“001”时,列数控制锁存器的低16位(第一和第二个锁存器)工作,其它的全置闲,对应的列电极是SEG0"SEG15;依次类推,直到列数控制锁存器64位寄存器全部工作,对应的列电极是SEG0"SEG63。
电极驱动模块
该模块主要含有四个子模块:行扫描电极驱动子模块、列信号电极驱动子模块、电平转换器和可预置数环形计数器。电平转换器的作用是根据实际应用的需要,通过外加的控制信号将逻辑信号的电压转换为实际的LCD驱动电压,并输出到驱动模块;行扫描电极驱动子模块的作用是给行电极提供一定周期的扫描信号脉冲;列信号电极驱动子模块的作用是把来自锁存器的数据施加到相应的列电极,与行电极的扫描信号来建立交流驱动电场,从而驱动LCD器件的显示。
可预置数环形计数器可以通过行数控制端N(S0"S5)来控制行扫描电极数,以适应不同规模的LCD屏,根据实际的需要通过向行数控制端N输入不同的数值,来控制具体工作的行数,其它的电极全部置闲。在行驱动时钟信号控制下,逐行扫描,循环往复,直到行数控制端N输入新的数值,再在新数目的行电极进行循环逐行扫描。例如,当外加信号N为“011011”时,扫描电极的数目为27,行扫描驱动子模块在行电极COM0"COM26上产生逐行扫描信号,其它行电极COM27"COM63全部都置为低电平,循环往复,若施加了新的外加信号N为“100011”,扫描电极驱动子模块就在行电极COM0"COM34上产生循环的逐行扫描信号。
IP核系统实现
首先,根据上面对整个系统功能定义和划分及对各个模块的设计,对各功能模块分别用VHDL语言进行建模;其次,在Xilinx公司的FPGA器件上,用其EDA工具ISE进行仿真和综合调试,并优化设计;然后,用VHDL定义顶层模块将各模块连接起来,并进行相应的系统调试和验证;最后,得到一个LCD的驱动电路,具有64个COM(行)和64个SEG(列) 输出,有高速的8位并行MCU接口及串行接口,芯片内含有存储显示数据的RAM,并且可以通过级联控制端CS来进行级联扩展以满足较大的LCD,通过列数控制端M和行数控制端N来适应不同规模的LCD。
仿真和验证
本文利用Xilinx公司的仿真软件ISE作为仿真工具,分两步对所设计的IP核进行了验证。首先,本文先对IP核的各个模块(包括内部的子模块)进行了初步的功能验证。然后,参照芯片的工作过程,对整个芯片进行了整体仿真。图3和图4是利用ISE对整个IP核的行和列控制功能进行仿真而得到的仿真结果。图中CLK和CLK1分别是MCU接口模块的数据传输控制时钟和行电极扫描脉冲;M和N分别为列电极与行电极数目选择控制端; CS的低两位和高两位分别为行级联与列级联控制端。
图3和图4的仿真结果说明:
1. 当RESET为高电平时,IP核处于初态或清零态;当WRITE为高电平时,IP核处于工作态,可以接收显示数据。
2. 在时钟CLK的上升沿,MCU通过接口向IP核的RAM并行写入8位显示数据;在时钟CLK1的上升沿,行扫描驱动电极依次输出扫描脉冲,列信号电极会把RAM里的数据从SEG上输出。
3. 行数控制端可以改变行扫描的电极数目。当行数选择控制端N为“3E”时,在COM0"COM61输出扫描信号。如图3所示,在第1个行时钟信号时,电极COM61上输出扫描信号,在行驱动时钟控制下,逐行递减对行电极进行扫描;第7个行时钟信号时,N变为“22”,扫描信号变成在行电极COM33上输出,逐行递减对COM0"COM33进行逐行扫描。
4. 列数控制端可以改变列信号的电极数目。当列数选择控制端M为“110”时,SEG电极为48位输出;当M为“010”时,SEG的输出变为16位;当M为“101”,SEG的输出变为40位;当M为“100”,SEG的输出变为32位。本文对该IP核的列数控制、行数控制、核间级联等功能分别进行了功能验证,并都通过了验证。此处限于篇幅只介绍了列数与行数控制功能。
该模块的主要作用是控制信号数据传输和选择列信号线的数目。可以通过列数控制输入端M来控制列数控制锁存器子模块、驱动锁存器子模块和时钟发生器来实现适用于不同规模LCD的功能。根据需要,通过向列数控制输入端M输入不同的数值,来控制有多少位列数控制锁存器处于工作状态,其他的锁存器单元则置为空闲态。在工作周期内把显示数据RAM中的数据通过8位数据总线锁存到对应的列数控制锁存器中,然后在一个时钟信号控制下一次锁存到驱动锁存器中,以作为电极驱动模块的输入信号。这样,IP核可以实现控制选择驱动列数的功能。当M为“000”时,列数控制锁存器的低8位(第一个锁存器)工作,其它的全置闲,对应的列电极是SEG0"SEG7;当M为“001”时,列数控制锁存器的低16位(第一和第二个锁存器)工作,其它的全置闲,对应的列电极是SEG0"SEG15;依次类推,直到列数控制锁存器64位寄存器全部工作,对应的列电极是SEG0"SEG63。
电极驱动模块
该模块主要含有四个子模块:行扫描电极驱动子模块、列信号电极驱动子模块、电平转换器和可预置数环形计数器。电平转换器的作用是根据实际应用的需要,通过外加的控制信号将逻辑信号的电压转换为实际的LCD驱动电压,并输出到驱动模块;行扫描电极驱动子模块的作用是给行电极提供一定周期的扫描信号脉冲;列信号电极驱动子模块的作用是把来自锁存器的数据施加到相应的列电极,与行电极的扫描信号来建立交流驱动电场,从而驱动LCD器件的显示。
可预置数环形计数器可以通过行数控制端N(S0"S5)来控制行扫描电极数,以适应不同规模的LCD屏,根据实际的需要通过向行数控制端N输入不同的数值,来控制具体工作的行数,其它的电极全部置闲。在行驱动时钟信号控制下,逐行扫描,循环往复,直到行数控制端N输入新的数值,再在新数目的行电极进行循环逐行扫描。例如,当外加信号N为“011011”时,扫描电极的数目为27,行扫描驱动子模块在行电极COM0"COM26上产生逐行扫描信号,其它行电极COM27"COM63全部都置为低电平,循环往复,若施加了新的外加信号N为“100011”,扫描电极驱动子模块就在行电极COM0"COM34上产生循环的逐行扫描信号。
IP核系统实现
首先,根据上面对整个系统功能定义和划分及对各个模块的设计,对各功能模块分别用VHDL语言进行建模;其次,在Xilinx公司的FPGA器件上,用其EDA工具ISE进行仿真和综合调试,并优化设计;然后,用VHDL定义顶层模块将各模块连接起来,并进行相应的系统调试和验证;最后,得到一个LCD的驱动电路,具有64个COM(行)和64个SEG(列) 输出,有高速的8位并行MCU接口及串行接口,芯片内含有存储显示数据的RAM,并且可以通过级联控制端CS来进行级联扩展以满足较大的LCD,通过列数控制端M和行数控制端N来适应不同规模的LCD。
仿真和验证
本文利用Xilinx公司的仿真软件ISE作为仿真工具,分两步对所设计的IP核进行了验证。首先,本文先对IP核的各个模块(包括内部的子模块)进行了初步的功能验证。然后,参照芯片的工作过程,对整个芯片进行了整体仿真。图3和图4是利用ISE对整个IP核的行和列控制功能进行仿真而得到的仿真结果。图中CLK和CLK1分别是MCU接口模块的数据传输控制时钟和行电极扫描脉冲;M和N分别为列电极与行电极数目选择控制端; CS的低两位和高两位分别为行级联与列级联控制端。
图3和图4的仿真结果说明:
1. 当RESET为高电平时,IP核处于初态或清零态;当WRITE为高电平时,IP核处于工作态,可以接收显示数据。
2. 在时钟CLK的上升沿,MCU通过接口向IP核的RAM并行写入8位显示数据;在时钟CLK1的上升沿,行扫描驱动电极依次输出扫描脉冲,列信号电极会把RAM里的数据从SEG上输出。
3. 行数控制端可以改变行扫描的电极数目。当行数选择控制端N为“3E”时,在COM0"COM61输出扫描信号。如图3所示,在第1个行时钟信号时,电极COM61上输出扫描信号,在行驱动时钟控制下,逐行递减对行电极进行扫描;第7个行时钟信号时,N变为“22”,扫描信号变成在行电极COM33上输出,逐行递减对COM0"COM33进行逐行扫描。
4. 列数控制端可以改变列信号的电极数目。当列数选择控制端M为“110”时,SEG电极为48位输出;当M为“010”时,SEG的输出变为16位;当M为“101”,SEG的输出变为40位;当M为“100”,SEG的输出变为32位。本文对该IP核的列数控制、行数控制、核间级联等功能分别进行了功能验证,并都通过了验证。此处限于篇幅只介绍了列数与行数控制功能。
LCD 电压 电子 电路 MCU 显示器 嵌入式 FPGA 总线 VHDL Xilinx EDA 仿真 相关文章:
- 全球液晶显示器Q2增3.1%超预期(08-11)
- OLED显示器及其馈电技术(08-13)
- TFT-LCD光阻回收再利用技术(08-20)
- 关于背投(08-20)
- 薄膜晶体管液晶显示器(TFT-LCD)(上)(08-20)
- 薄膜晶体管液晶显示器(TFT-LCD)(下)(08-20)