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

[复制链接]
2663|4
 楼主| FSL_TICS_ZJJ 发表于 2014-6-4 11:14 | 显示全部楼层 |阅读模式
本帖最后由 FSL_TICS_A 于 2014-10-21 15:36 编辑

【经验分享】Kinetis K系列2.x版本可驱动5V SLCD
一,     经验描述
        大家都知道kinetis带有SLCD的模块是可以直接驱动3VSLCD屏,实际上,我们的kinetis K系列的2.x版本还可以驱动5VSLCD屏,本次经验分享就讲解如何通过配置去驱动5VSLCD
       通过reference manualSLCD章节,可以看到实际上有多种办法可以实现5V SLCD驱动的配置,比如,通过VLL23.3VVDD,或者VLL35VVDD 或者VLL1接内部的VIREG等办法。实际使用中,VDD在数据手册中有一定电压范围要求,所以本经验采用第3中办法,即使用VLL1接内部的1.67VVIREG然后通过pump,使得VLL2VLL3分别得到相应的倍压。
1.jpg
1
使用VLL1接内部的1.67VVIREG,就需要关闭图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[1:0]=11HREFSEL=1CPSEL=1RVEN=1.
二,     硬件配置
    硬件外围需要在VLL1VLL2VLL3三个引脚分别接一个0.1uf的电容到地,在VCAP1以及VCAP2之间也需要接一个0.1uf的电容。电容接法如下图:
2.jpg
2
三,     软件配置
根据经验描述可以知道,需要配置VSUPPLY[1:0]=11HREFSEL=1CPSEL=1RVEN=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的压降,从而能够驱动5VSLCD
    3给出VLLx的波形,可以看到满足VLL1=VIREG=1.67V, VLL2=2*VIREG=3.33V, VLL3=3*VIREG=5V.
3.jpg
3
4给出COM PTB3以及段引脚PTB19的波形,可以看到他们的压差达到了VLL3,即5V,所以可以驱动5VSLCD.
4.jpg
4
五,     其他注意事项
通过测试发现,在1.x的芯片上测试5VSLCD的波形有问题,所以如果需要使用5VSLCD,建议采用2.X的芯片。
另外还有一点需要注意,在CW10.6PE中,SegLCD_LDD模块中选择5V驱动模式会提示产品不支持,这个是PE的一个bug,所以建议想使用5V SLCD驱动的,请使用寄存器配置的方式。可以按照上文的配置。
六,     附件
     附件给出了CW的测试工程,需要的网友可以拿去参考。
K40D100_SLCD.rar (1.17 MB, 下载次数: 36)

【经验分享】Kinetis K系列2.x版本可驱动5V SLCD.pdf (302.42 KB, 下载次数: 13)

 楼主| FSL_TICS_ZJJ 发表于 2014-6-4 11:14 | 显示全部楼层
不足之处恳请指正,同时也欢迎大家分享自己的经验。
FSL_TICS_Robin 发表于 2014-6-4 11:22 | 显示全部楼层
很好的经验帖,支持一下。
如果大家用到SLCD模块可以参考此篇经验分享。
更多飞思卡尔分享的经验帖请见:飞思卡尔论坛支持小组【经验分享】总汇
zenghui28 发表于 2014-7-4 08:28 | 显示全部楼层

很好的经验帖,支持一下。
如果大家用到SLCD模块可以参考此篇经验分享。
FSL_TICS_Jeremy 发表于 2014-8-4 10:46 | 显示全部楼层
很好的经验,支持一下!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

165

主题

5069

帖子

88

粉丝
快速回复 在线客服 返回列表 返回顶部