打印
[STM32L1]

关于STM32L152的LCD控制器驱动段式液晶屏有残影的问题

[复制链接]
8919|25
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 byz1027004184 于 2015-11-24 09:35 编辑

各位大神,我用STM32L152自带的LCD控制器驱动段式液晶屏,段式液晶屏占空比1/4,偏压比1/3,驱动电压为3.0v.初始化代码如下:
void LCDInit(void){
  LCD_InitTypeDef LCD_InitStructure;
        RCC_LSICmd(ENABLE);
  while (RCC_GetFlagStatus(RCC_FLAG_LSIRDY) == RESET);
  RCC_RTCCLKConfig(RCC_RTCCLKSource_LSI);
  
  LCD_GPIOConfig();
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_LCD, ENABLE);
  
  LCD_InitStructure.LCD_Prescaler = LCD_Prescaler_8;
  LCD_InitStructure.LCD_Divider = LCD_Divider_16;
  LCD_InitStructure.LCD_Duty = LCD_Duty_1_4;
  LCD_InitStructure.LCD_Bias = LCD_Bias_1_3;
  LCD_InitStructure.LCD_VoltageSource = LCD_VoltageSource_Internal;
  LCD_Init(&LCD_InitStructure);
  
  LCD_HighDriveCmd(ENABLE);
  /*!< Configure the Pulse On Duration */
  LCD_PulseOnDurationConfig(LCD_PulseOnDuration_7);
  
  /*!< Configure the LCD Contrast (2.99V) */
  LCD_ContrastConfig(LCD_Contrast_Level_3);
  /*!< Wait Until the LCD FCR register is synchronized */
  LCD_WaitForSynchro();
  
  /*!< Enable LCD peripheral */
  LCD_Cmd(ENABLE);
  
  /*!< Wait Until the LCD is enabled */
  while(LCD_GetFlagStatus(LCD_FLAG_ENS) == RESET);
  /*!< Wait Until the LCD Booster is ready */  
  while(LCD_GetFlagStatus(LCD_FLAG_RDY) == RESET);
}

可是残影问题严重,有没有大神有过这方面的经历,一起讨论一下。
问题已经解决,问题原因是飞线导致了信号的失真,谢谢各位的热心解答。
沙发
byz1027004184|  楼主 | 2015-11-12 11:11 | 只看该作者
自己顶一下

使用特权

评论回复
板凳
byz1027004184|  楼主 | 2015-11-12 11:13 | 只看该作者
在没有使能LCD_HighDriveCmd(DISABLE);时残影问题很严重,使能之后,残影问题好了很多,但仍有残影,由此是不是可以判断是STM32驱动能力不足的问题导致的?如果是,有没有解决办法?

使用特权

评论回复
地板
byz1027004184|  楼主 | 2015-11-12 11:17 | 只看该作者
本帖最后由 byz1027004184 于 2015-11-12 11:18 编辑

C:\Users\Administrator\Documents\Tencent Files\1027004184\FileRecv\MobileFile
这是COM口没接屏的波形

IMG_20151111_165742.jpg (4.33 MB )

黄色的为COM0,绿色为COM1

黄色的为COM0,绿色为COM1

IMG_20151111_165809.jpg (4.22 MB )

黄色的为COM0,绿色为COM2

黄色的为COM0,绿色为COM2

IMG_20151111_165826.jpg (4.41 MB )

黄色的为COM0,绿色为COM3

黄色的为COM0,绿色为COM3

使用特权

评论回复
5
byz1027004184|  楼主 | 2015-11-12 11:22 | 只看该作者
还有,这款屏在MSP430上使用时效果很好,显示很清楚,没有残影问题

使用特权

评论回复
6
尤彼卡| | 2015-11-12 14:09 | 只看该作者
残影指的是什么,什么样的残影

使用特权

评论回复
7
wyde518| | 2015-11-12 17:26 | 只看该作者
修改刷新率,试试

使用特权

评论回复
8
byz1027004184|  楼主 | 2015-11-12 17:49 | 只看该作者
尤彼卡 发表于 2015-11-12 14:09
残影指的是什么,什么样的残影

就是本不该亮的段,呈灰色(半亮半不亮)

使用特权

评论回复
9
byz1027004184|  楼主 | 2015-11-12 17:50 | 只看该作者
wyde518 发表于 2015-11-12 17:26
修改刷新率,试试

刷新率改大或者改小都不行,还是有残影

使用特权

评论回复
10
gyh974| | 2015-11-12 18:16 | 只看该作者
这个屏的偏置是多少,工作电压是多少,最好实测一下供电电压,还有就是屏是接触式的话还要注意导电条是否良好

使用特权

评论回复
11
可可球| | 2015-11-12 19:53 | 只看该作者
这款屏在MSP430上使用时效果很好,显示很清楚,没有残影问题

LCD用的哪种,测量一下在MSP430上的驱动电压,看是不是一致

使用特权

评论回复
12
mcu5i51| | 2015-11-13 09:50 | 只看该作者
波形不对,什么方式驱动?

使用特权

评论回复
13
byz1027004184|  楼主 | 2015-11-13 10:20 | 只看该作者
gyh974 发表于 2015-11-12 18:16
这个屏的偏置是多少,工作电压是多少,最好实测一下供电电压,还有就是屏是接触式的话还要注意导电条是否良 ...

屏的偏置是1/3,工作电压是3v,实测供电电压确实是3V。我不知道你说的屏是接触式是指什么,是不是屏与MCU的连接方式?屏是用FPC线与MCU连接的

使用特权

评论回复
14
byz1027004184|  楼主 | 2015-11-13 10:21 | 只看该作者
mcu5i51 发表于 2015-11-13 09:50
波形不对,什么方式驱动?

什么方式驱动?我用的MCU自带的LCD控制器直接驱动的

使用特权

评论回复
15
byz1027004184|  楼主 | 2015-11-13 10:55 | 只看该作者
可可球 发表于 2015-11-12 19:53
LCD用的哪种,测量一下在MSP430上的驱动电压,看是不是一致

LCD用的是哪种?你是指LCD控制器吗?我用的是MCU自带的控制器驱动的,驱动电压是一致的

使用特权

评论回复
16
mcu5i51| | 2015-11-13 17:00 | 只看该作者
byz1027004184 发表于 2015-11-13 10:21
什么方式驱动?我用的MCU自带的LCD控制器直接驱动的

不是这个意思,驱动电压1/1,1/2,1/3的,感觉是1/3的,COM端多数是在1/3或2/3才对,如果是1/2的,多数时候在1/2电压,时间和COM数量有关

使用特权

评论回复
17
309030106| | 2015-11-15 22:28 | 只看该作者
楼主问题解决了吗

使用特权

评论回复
18
国防大学| | 2015-11-16 10:00 | 只看该作者
本帖最后由 国防大学 于 2015-11-16 10:02 编辑

我用的官方的DISCOVERY开发板跑的官方例程为什么也有残影,有兄弟手头上有官方DISCOVERY开发板的么?可以跑个例程看看吗?

IMG_20151116_094100.jpg (4.27 MB )

这是我测的开发板的波形,感觉偏压比是1/2,可是例程里明明是1/3,蒙了

这是我测的开发板的波形,感觉偏压比是1/2,可是例程里明明是1/3,蒙了

使用特权

评论回复
19
byz1027004184|  楼主 | 2015-11-24 09:33 | 只看该作者
感谢楼上各位网友的热心帮助,该问题已解决,问题原因是由于飞线导致信号失真。

使用特权

评论回复
20
hncdc| | 2015-12-22 16:17 | 只看该作者
国防大学 发表于 2015-11-16 10:00
我用的官方的DISCOVERY开发板跑的官方例程为什么也有残影,有兄弟手头上有官方DISCOVERY开发板的么?可以跑 ...

我的工程也发现了跟大家一样的问题,主要是显示不均匀,LCD初始化程序跟大家基本一样,使用到4个COM,39个SEG。玻璃比较大。同一块玻璃我用430和PIC18F67K90驱动显示都是好的,显示颜色均匀,对比度也很高。说明玻璃自身是没有问题的。使用STM32L152驱动时,显示效果就完全变了,通过测试驱动波形,发现1/3电压只有0.7V(理论值是1.1V),2/3电压只有1.6V(理论值是2.2V),3/3电压正常有3.3V,这个还是在高功耗开关打开时测到的,如不打开,端口只能测到一点点毛刺。所以这个问题应该是这个芯片的驱动能力太弱引起的,抱着这个想法,我定做了一款低功耗玻璃,装上后显示效果马上变好,波形电压也基本正常。但成本代价有点高了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

28

帖子

1

粉丝