FSL_TICS_ZJJ 发表于 2014-6-4 11:17:51

【经验分享】Kinetis K系列2.x版本可驱动5V SLCD

本帖最后由 FSL_TICS_Robin 于 2014-7-18 14:25 编辑

【经验分享】Kinetis K系列2.x版本可驱动5V SLCD
一,        经验描述
      大家都知道kinetis带有SLCD的模块是可以直接驱动3V的SLCD屏,实际上,我们的kinetis K系列的2.x版本还可以驱动5V的SLCD屏,本次经验分享就讲解如何通过配置去驱动5V的SLCD。
       通过reference manual的SLCD章节,可以看到实际上有多种办法可以实现5V SLCD驱动的配置,比如,通过VLL2接3.3V的VDD,或者VLL3接5V的VDD, 或者VLL1接内部的VIREG等办法。实际使用中,VDD在数据手册中有一定电压范围要求,所以本经验采用第3中办法,即使用VLL1接内部的1.67V的VIREG然后通过pump,使得VLL2,VLL3分别得到相应的倍压。

图1
使用VLL1接内部的1.67V的VIREG,就需要关闭图1中的powersw1,以及powersw2, 然后打开RVEN, CPSEL使用的是LCD charge pump的模式。通过设置使得VIREG=1.67V,则VLL1=VIREG=1.67V, VLL2=2*VIREG=3.33V, VLL3=3*VIREG=5V.
综上,则需要VSUPPLY=11,HREFSEL=1,CPSEL=1,RVEN=1.



二,        硬件配置
    硬件外围需要在VLL1,VLL2,VLL3三个引脚分别接一个0.1uf的电容到地,在VCAP1以及VCAP2之间也需要接一个0.1uf的电容。电容接法如下图:

图2
三,        软件配置
根据经验描述可以知道,需要配置VSUPPLY=11,HREFSEL=1,CPSEL=1,RVEN=1.
则,代码如下:
LCD_GCR|=LCD_GCR_VSUPPLY(3);
LCD_GCR|=LCD_GCR_HREFSEL_MASK;
LCD_GCR|=LCD_GCR_CPSEL_MASK;
LCD_GCR|=LCD_GCR_RVEN_MASK;
上面是针对5V SLCD的配置。除了5V SLCD的配置,还需要配置SLCD的基本情况,比如时钟,引脚,DUTY,使能SLCD等,本文的基础配置沿用对GD-6363P,但是注意GD-6363P,这里我们只是做简单测试,看芯片的引脚输出波形,由于没有5V的屏,这里并不实际点亮屏,只是给出测试波形,查看是否能够输出点亮5V的波形,即压差为5V。
基本配置和以前的SLCD中文文档讲解兼容。
MCG_C1|= 0x02;

//enable LCD clocks
SIM_SCGC3 = 0x40000000;

//enable LCD pins 0, 1, 2, 3, 12, 13 14 15 20 21 22
LCD_PENL= 0x0070F00F;

//enable LCD backplanes 0, 1, 2, 3
LCD_BPENL = 0x0000000F;

//assign back planes- 0 is BP1, 1 is BP2 etc
LCD_WF3TO0 = 0x08040201;
LCD_WF15TO12 = 0x00000000;
LCD_WF23TO20 = 0x00000000;

LCD_GCR|=LCD_GCR_DUTY(3);
LCD_GCR|=LCD_GCR_SOURCE_MASK; //select alt clock IRC
LCD_GCR|=LCD_GCR_LCLK(4);
LCD_GCR |=LCD_GCR_LCDEN_MASK; // Enable LCD
LCD_WF15TO12 |= 0x08000000;//tlcd_fsl_on
四,        测试结果
    测试平台使用的是TWR-K40D100,芯片是K40DX256VMD100. 功能就是,在PTB3作为com口的时候,使得该引脚和PTB19之间产生一个5V的压降,从而能够驱动5V的SLCD。
    图3给出VLLx的波形,可以看到满足VLL1=VIREG=1.67V, VLL2=2*VIREG=3.33V, VLL3=3*VIREG=5V.

图 3
图4给出COM PTB3以及段引脚PTB19的波形,可以看到他们的压差达到了VLL3,即5V,所以可以驱动5V的SLCD.

图4
五,        其他注意事项
通过测试发现,在1.x的芯片上测试5V的SLCD的波形有问题,所以如果需要使用5V的SLCD,建议采用2.X的芯片。
另外还有一点需要注意,在CW10.6的PE中,SegLCD_LDD模块中选择5V驱动模式会提示产品不支持,这个是PE的一个bug,所以建议想使用5V SLCD驱动的,请使用寄存器配置的方式。可以按照上文的配置。
六,        附件
   附件给出了CW的测试工程,需要的网友可以拿去参考。
**** Hidden Message *****




PS:本帖可从飞思卡尔版块置顶帖:飞思卡尔Kinetis资料大本营的飞思卡尔论坛支持小组【经验分享】帖汇总链接进入。

FSL_TICS_ZJJ 发表于 2014-6-4 11:18:11

不足之处恳请指正,同时也欢迎大家分享自己的经验。

Nuker 发表于 2014-6-4 19:01:09

这个比较有意义,顶一个

wangpengcheng 发表于 2014-6-5 11:07:51

回帖可见

zndz410 发表于 2014-6-5 11:59:35

这个比较有意义,顶一个

wangkdd 发表于 2014-9-3 09:12:36

这个比较好的东东{:dizzy:}

unnormal 发表于 2017-2-24 14:50:42

不错   正好 用到    下载学习一下   谢谢分享
页: [1]
查看完整版本: 【经验分享】Kinetis K系列2.x版本可驱动5V SLCD