瑞萨MCU内置LCD控制器/驱动器漫谈(上)

cathy的头像
cathy 发布于:周三, 03/13/2024 - 18:16 ,关键词:

前 言

在很多应用场景下可能需要使用段码式液晶显示屏LCD,如:家用电器、工业设备、仪器仪表、楼宇自动化设备、医用仪器、穿戴设备等等。这不仅是因为段码式液晶显示屏LCD具有显示美观、成本优势、功耗低等优点,而且现在很多MCU都集成了LCD驱动模块,使得开发变得更容易。根据不同电压、段位数、A/B驱动波形等广泛应用的需求,瑞萨集成了LCD驱动模块,不同系列的MCU可使用该模块从而匹配其应用。

一、段码式液晶显示屏LCD结构和显示原理

段码式液晶显示屏LCD内部晶体在静电场的功效下,晶体的排列方向会发生偏转,因而改变其透光性,从而可以看到显示的内容。LCD有一个偏转阀值,当LCD两端的电压高于该阀值时,则显示内容;而低于该阀值时,则不显示。

一般段码式液晶显示屏LCD有三个主要参数:工作中电压、Duty(相匹配COM数)和BIAS(偏压,相匹配阀值),例如,3.0V、1/4Duty、1/3BIAS表明LCD的工作中电压为3.0V,有4个COM,阀值大概是1.1V(3.0/3=1.0)。

1.png

当加在某段LCD两端的电压大于1.0V时显示,反之,不显示。但是,LCD对于驱动电压的反应不是很明显,例如加1.0V电压的时候,可能会微弱显示,这就是通常说的“鬼影”。因此,要保证驱动LCD显示的时候,加在LCD两端的电压要比阀值电压大得比较多,而不显示的时候,则要比阀值电压小得比较多。

需要注意的是,LCD的两端是不能加直流电压的,否则时间稍长会危害段码式液晶显示屏LCD晶体分子结构的电化学特点,造成显示实际效果模糊不清,使用期限降低的不良影响,其毁灭性不能修复,这就要求保证加在LCD两端的驱动电压的平均电压为0。所以,LCD使用分割扫描法,在任何时候只有一个COM扫描有效,其余的COM处于无效状态。

一个好的段码式液晶显示屏LCD控制器/驱动器,应该满足:

  • 能提供不同数量的COM、Duty(相匹配COM数)和BIAS(偏压,相匹配阀值),满足不同规格LCD屏的驱动

  • 能够提供多种分压方式,提供内部分压,减少外围电路分压的元器件

  • 能够提供内部Boost升压,满足一些电池供电,电池电压下降时,亮度还可以保持

  • 能够提供内部基准电压稳压,避免分压不准导致显示出现“鬼影”

  • 能够提供多个不同的基准电压选择,可以调整对比度

  • 能够提供多种不同分割扫描法、驱动波形,满足灵活选择

  • 能够不同的时钟源和不同分割扫描帧率的选择,满足不同应用低功耗的要求

瑞萨MCU内置的LCD控制器/驱动器不但满足上面的规格,而且还提供其他优点功能:

  • 提供不同的时钟源选择,可选择外部副时钟32.768KHz,也可选择MCU内部低速或高速时钟

  • 提供显示数据寄存器,能通过自动读取显示数据寄存器进行段信号SEG和公共信号COM的自动输出

  • 提供时间间隔闪烁功能,方便易用

二、瑞萨MCU内置的LCD控制器/驱动器

1、LCD控制器/驱动器框图

图1为集成到瑞萨自有16bits RL78系列核MCU中的LCD控制器/驱动器,图2集成瑞萨32bits RA4M1系列Arm核MCU中的LCD控制器/驱动器,两者主要区别是LCD控制器/驱动器的工作时钟选择不同,RA4M1系列还可支持选择内部高速时钟。

2.png

图1 R7F0C001/R7F0C002/L12/L13/L1A/L1C LCD控制器/驱动器

3.png

图2 RA4M1 LCD控制器/驱动器

①外围允许寄存器0(PER0):在将副系统时钟(fSUB)用于LCD控制器/驱动器时设定。

②LCD模式寄存器0(LCDM0):LCD驱动电压生成电路、显示波形(A/B)和显示的时间片DUTY的选择。

③LCD模式寄存器1(LCDM1):此寄存器允许或者禁止显示运行,允许或者停止升压电路和电容分割电路的运行以及设定显示数据区和低电压模式。

④运行速度模式控制寄存器(OSMC):通过停止不需要的时钟功能来降低功耗。

⑤LCD时钟控制寄存器0(LCDC0):设定LCD源时钟和LCD时钟的寄存器,通过LCD时钟和时间片决定帧频。

⑥记忆性液晶控制寄存器(MLCD):控制记忆性液晶波形。

⑦LCD升压电平控制寄存器(VLCD):能从升压电路运行时生成的16种基准电压(调整对比度)中选择。

⑧LCD输入切换控制寄存器(ISCLCD):设定CAPL/P126、CAPH/P127、VL3/P125引脚作为LCD功能运行的期间防止贯通电流的流入。

2、LCD控制器/驱动器的驱动波形

驱动波形包括COM端口波形、SEG端口波形、COM和SEG之间电压差波形,当各画素对应的COM和SEG的电位差高于一定电压(LCD驱动电压VLCD,也就是阀值电压)时,LCD显示屏的各画素就点灯。如果电位差低于VLCD,各画素就熄灯。

COM端口波形

根据设定的时间片,如表所示的顺序为公共信号的选择时序,并且以其为一个周期进行重复运行。在静态模式的情况下,COM0~COM3输出相同的信号。

4.png

SEG端口波形

SEG信号对应LCD显示数据寄存器,在8个时间片方式的情况下,各显示数据寄存器的bit0~bit7对应COM0~COM7。与公共信号输出的各时序同步,读数据存储器的数据。如果各位的内容为“1”,就在转换为选择电压后输出到段引脚(SEG4~SEG38)。如果各位的内容为“0”,就在转换为非选择电压后输出到段引脚(SEG4~SEG38)。

在不是8个时间片方式的情况下,在A图形区中各显示数据寄存器的bit0~bit3对应COM0~COM3,在B图形区中各显示数据寄存器的bit4~bit7对应COM0~COM3。与公共信号输出的各时序同步,读数据存储器的数据。如果各位的内容为“1”,就在转换为选择电压后输出到段引脚(SEG0~SEG38)。如果各位的内容为“0”,就在转换为非选择电压后输出到段引脚(SEG0~SEG38)。

因此,必须先确认LCD显示数据寄存器使用的LCD显示屏的前面电极(对应SEG信号)和背面电极(对应COM信号)是如何组合形成显示图形的,然后给显示数据寄存器写与显示图形一一对应的位数据。

COM信号和SEG信号的输出波形

公共信号COM和段信号SEG输出的电压如表(a)-(d)所示。只有在公共信号COM和段信号SEG都为选择电压时才为±VLCD的点灯电压(选择),在其他组合时为熄灯电压(非选择)。
静态显示模式时,公共信号COM的输出波形,在LCD时钟属于的1个周期T(选择或非选择),前T/2输出VL4分压电平,后T/2输出Vss电平;段信号SEG的输出波形,在LCD时钟属于选择时的1个周期T,前T/2输出Vss分压电平,后T/2输出VL4电平,属于非选择时的1个周期T,前T/2输出VL4分压电平,后T/2输出Vss电平。

5.png

1/2偏压时,公共信号COM的输出波形,在LCD时钟属于选择时的1个周期T,前T/2输出VL4分压电平,后T/2输出Vss电平,属于非选择时的1个周期T,输出VL2电平;段信号SEG的输出波形,在LCD时钟属于选择时的1个周期T,前T/2输出Vss分压电平,后T/2输出VL4电平,属于非选择时的1个周期T,前T/2输出VL4分压电平,后T/2输出Vss电平。

6.png

1/3偏压时,公共信号COM的输出A波形,在LCD时钟属于选择时的1个周期T,前T/2输出VL4分压电平,后T/2输出Vss电平,属于非选择时的1个周期T,前T/2输出VL1分压电平,后T/2输出VL2电平;段信号SEG的输出A波形,在LCD时钟属于选择时的1个周期T,前T/2输出Vss分压电平,后T/2输出VL4电平,属于非选择时的1个周期T,前T/2输出VL2分压电平,后T/2输出VL1电平。

1/3偏压时,公共信号COM的输出B波形,在LCD时钟属于选择时的1个周期T,前T/2(在前半帧Tf/2)输出VL4分压电平,后T/2(在后半帧Tf/2)输出Vss电平,属于非选择时的1个周期T,前T/2(在前半帧Tf/2)输出VL1分压电平,后T/2(在后半帧Tf/2)输出VL2电平;段信号SEG的输出B波形,在LCD时钟属于选择时的1个周期T,前T/2(在前半帧Tf/2)输出Vss分压电平,后T/2(在后半帧Tf/2)输出VL4电平,属于非选择时的1个周期T,前T/2(在前半帧Tf/2)出VL2分压电平,后T/2(在后半帧Tf/2)输出VL1电平。

7.png

1/4偏压时,公共信号COM的输出A波形,在LCD时钟属于选择时的1个周期T,前T/2输出VL4分压电平,后T/2输出Vss电平,属于非选择时的1个周期T,前T/2输出VL1分压电平,后T/2输出VL2电平;段信号SEG的输出A波形,在LCD时钟属于选择时的1个周期T,前T/2输出Vss分压电平,后T/2输出VL4电平,属于非选择时的1个周期T,前T/2输出VL2分压电平,后T/2输出VL2电平。

1/4偏压时,公共信号COM的输出B波形,在LCD时钟属于选择时的1个周期T,前T/2(在前半帧Tf/2)输出VL4分压电平,后T/2(在后半帧Tf/2)输出Vss电平,属于非选择时的1个周期T,前T/2(在前半帧Tf/2)输出VL1分压电平,后T/2(在后半帧Tf/2)输出VL3电平;段信号SEG的输出B波形,在LCD时钟属于选择时的1个周期T,前T/2(在前半帧Tf/2)输出Vss分压电平,后T/2(在后半帧Tf/2)输出VL4电平,属于非选择时的1个周期T,前T/2(在前半帧Tf/2)输出VL2分压电平,后T/2(在后半帧Tf/2)输出VL2电平。

8.png

COM信号和SEG信号的输出波形实例

在此例子,以第7位的9.png进行说明。需要根据显示图形并且通过COM0~COM3的各公共信号的时序,将表所示的选择电压和非选择电压输出到SEG12引脚和SEG13引脚。
10.png

因此,给SEG12对应的显示数据寄存器(地址F040CH)准备“1101”即可。SEG12和各公共信号之间的LCD驱动波形例子如下图所示。在选择COM0时SEG12为选择电压,就知道LCD点灯电平+VLCD/–VLCD的交流矩形波的产生。

11.jpg

SEG12和各公共信号之间的4个时间片的LCD驱动A波形例子(1/3偏压法)

12.pngSEG12和各公共信号之间的4个时间片的LCD驱动B波形例子(1/3偏压法)

作者:Leo Liao

来源:瑞萨嵌入式小百科

围观 13