一SLCD简介
FRDM_KL46开发板上使用的SLCD的型号是Luminex LCD-S401M16KR,该SLCD共具有12个引脚,引脚图如图1所示,其中具有4个共用引脚(com),所以芯片的驱动模式是1/4duty模式,该LCD共有4个七段码.每个com引脚可以控制8个LCD的段,以com0为例,控制的八个段如图2所示,每个引脚控制的段的对应情况可以直接从SLCD的参数表中查看,如图3所示。
SLCD中段的点亮就通过给COM和相应的引脚之间加上交流电,并且两个引脚之间的电压差达到V3就可以点亮相应的段码。
1
|
|
|
|
FRDM_KL46板子上SLCD引脚和KL46的SLCD控制引脚的对应情况如下:
Pin 1 (COM 0) = LCD 40 / PTD0
Pin 2 (COM 1) = LCD 52 / PTE4
Pin 3 (COM 2) = LCD 19 / PTB23
Pin 4 (COM 3) = LCD 18 / PTB22
Pin 5 (1D/1E/1G/1F) = LCD 37 / PTC17
Pin 6 (DP1/1C/1B/1A) = LCD 17 / PTB21
Pin 7 (2D/2E/2G/2F) = LCD 7 / PTB7
Pin 8 (DP2/2C/2B/2A) = LCD 8 / PTB8
Pin 9 (3D/3E/3G/3F) = LCD 53 / PTE5
Pin 10 (DP3/3C/3B/3A) = LCD 38 / PTC18
Pin 11 (4D/4E/4G/4F) = LCD 10 / PTB10
Pin 12 (COL/4C/4B/4A) = LCD 11 / PTB11
各引脚和SLCD中的段码对应情况如下:
大家看图4可能会不是很理解,这里稍作讲解,以1A段为例,该段对应的是COM3和pin6,而pin6对应的是LCD17,如果将com口分配后编号,则COM3对应的是四位中的最高位,则为8,COM2为4,com1为2,com0为1.则A1段就是17_8.依次类推,可以得到其他段的标示。
|
|
|
|
|
二,代码功能讲解
为了便于测试与讲解,将KL46的PE代码进行改编,只显示DP1为“1”,其余段码不显示。则需要点亮1B,1C段。即图4中的17_4,17_2两端,需要在COM1,PIN6以及COM2,PIN6之间加载压差为V3的交流电压。当然交流电压是芯片内部驱动给出,实际的控制只需写相关的寄存器控制这几个引脚输出就行。
通过在第一节中的讲解可以知道KL46芯片与SLCD的引脚对应情况,下面就配置COM引脚(blackplane)以及正面段电极引脚(frontplane pin)
不管是backplane引脚还是frontplane引脚都需要首先使能引脚,通过寄存器LCD_PENn实现,而backplane引脚还需要置位对应的寄存器LCD_BPENn。
点亮段的时候,只需要控制相应的LCD_WFyTOx,比如这里显示的是1B,1C,则需要控制对应的LCD17,即LCD_WF19TO16中的WF17为0b00000110=0x06,即pin6对应的COM1,COM2。
其余配置详情请参考附件代码。
|
|
|
|
|
三,测试结果
很简单的在Dig1显示了1,如图6所示。
[size=0.83em]6.jpg (73.16 KB, 下载次数: 0)
下载附件
[color=rgb(153, 153, 153) !important]2014-5-14 16:37 上传
|
|
|
|
|
通过示波器测试显示的波形。
(1)测试点亮字段部分波形
通道1: SLCD pin1, 即(COM0) LCD40
通道2:SLCD pin2,即(COM1 LCD52
通道3:SLCD pin3,即(COM2) LCD19
通道4:SLCD pin6,即(DP1/1C/1B/1A)LCD17
|
|
|
|
|
两个框中,pin6和com1以及com2之间的压差都达到了V3等级,所以可以点亮1C,1B。而pin6和com0之间的压差在整个的周期中,都没有达到V3等级,所以DP1不会被点亮。
(2)测试非点亮字段部分波形
通道1: SLCD pin1, 即(COM0) LCD40
通道2:SLCD pin2,即(COM1 LCD52
通道3:SLCD pin3,即(COM2) LCD19
通道4:SLCD pin5,即(1D/1E/1G/1F) LCD37
可以看到pin5的电平始终都没有达到最高,所以它和任何com脚之间的压差都不会达到V3等级,所以1D/1E/1G/1F字段都不会被点亮。
|
|
|
|
|
附件
附件给出测试代码以及SLCD的相关手册,希望对大家有所帮助。
|
|
|
|
|