描述

一、LCD的显示原理。

LCD的工作原理和驱动电路 液晶是一种有机化合物,这种有机物质在一定的温度范围内,既具有液体的流动性和连续性,又具有某些晶体的光学性质。LCD就是利用这种物质在电场的作用下能产生特殊的电光效应而制成的。按照使用的电光效应的不同,LCD可分为动态散射效应和扭曲一向列效应两种类型;按采光方式的不同又可分为透射式和反射式。

LCD的基本结构由内表面刻有透明电极(典型图形为7段字形)的两块平板玻璃中间注入薄薄(约10pm厚)的液晶层构成。它的上、下表面各放了一块偏振片(起偏振片、检偏振片)。下偏振片下面常常再放一块高效的反射器件,以获得良好的清晰度。

LCD采用表面排列技术,对刻有透明电极的玻璃进行表面处理,使液晶分子在液晶盒内的排列方向呈90°扭曲。线性偏振光进入扭曲的液晶盒后,偏振面旋转90°。加上电场后,由于正介电各向异性液晶分子的取向具有和电场方向排列一致的性质,故扭曲结构消失,线性偏振光可以直接通过液晶盒。去掉电场后,液晶分子的排列又恢复扭曲,使线性偏振光的偏振面旋转90°。因此,当扭曲液晶盒置于起、检偏振片之间时,改变两块偏振片的相对位置(正交或平行),就可得到白底黑字(正常开启)或黑底白字(正常关闭)的显示形式。扭曲效应LCD工作原理如图4所示,两块偏振片正交排列,故可获得白底黑字的显示形式。

由上面介绍可以看出,让液晶显示需要在液晶的两端加上电压,改变液晶的光特性,让其显示出预设的图案。

二、段式LCD的显示方式

一般LCD在制作的时候为了节省引脚,会跟数码管一样多个液晶公用一个公共端COM,另一端一般称之为SEG,在SEG和COM上加上电压就可以“点亮”该段液晶。

下图为一个标准的段式液晶屏的设计图与COM和SEG对应表

例如上图,若在COM3和SEG5之间加上电压,则会点亮AM这两个字母的显示。

但是在驱动液晶的时候有个重要问题需要注意,COM口与SEG之间必须加上对称的交流电压,以保证加到LCD两端的交流电压平均值为零。过大的直流电压会使液晶材料迅速分解,大大缩短LCD的工作寿命。因此,要求直流分量越小越好,至少应小于100mV。这也是LCD与段式LED最大的不同之处。

与LED的显示类似,LCD要显示出来有一定的门限电压,高于这个电压则会提高“亮度”,在LCD中一般称之为对比度,低于这个门限电压则完全不显示。这个们限电压在制作好的时候一般被称之为BIAS(偏置)。一般制作好的LCD屏幕,会告诉你一个驱动条件参数,类似:1/4 duty 1/3BIAS 这个BIAS即是这里的偏置,1/3是指偏置电压为工作电压的1/3。Duty是指驱动周期,有多少个COM,驱动该LCD就需要多少个周期

三、基于STM8S的LCD驱动电路

通过上面的分析,我们知道驱动LCD需要在COM口和SEG口不断产生相反的且大于BIAS的电压差,同时要保证不工作的SEG口与COM电压不能大于BIAS。在一般应用中,嵌入式系统会选择专门LCD驱动芯片来驱动LCD屏幕,这些芯片一般是通过SPI通信控制的。但在一些特殊的对成本敏感的项目中,我们其实也可以通过STM8S来直接驱动LCD屏幕,此时就需要巧妙的设计一些外部电路,来解决单片机只能产生两种逻辑电平的问题了。

3.1 STM8s外部电路

COM口:

我们在COM外设计如下电路

该电路使得COM口通过不同的输出模式,能输出5种不同的电压:

3.3V:

设置COM口为推挽输出,并输出高。

3.3V * 3/4:

设置COM口为浮空输入,将BIAS引脚设置为推挽输出,同时输出高。

3.3V* 1/2:

将COM口与BIAS口都设置为浮空输入。

3.3V*1/4:

设置COM口为浮空输入,将BIAS引脚设置为推挽输出,同时输出低。

0V:

设置COM口为推挽输出,并输出低。

SEG口:

我们在SEG口电路设计如下

该电路使得SEG口通过不同的输出模式,能输出5种不同的电压:

3.3V:

设置SEG口为推挽输出,并输出高。

3.3V* 1/2:

将SEG口设置为浮空输入。

0V:

设置SEG口为推挽输出,并输出低。

四、适合单片机的LCD驱动方式

以1/2 BIAS 1/4duty的LCD为例

驱动他大概有2种方式。

两种方式的COM口电平如下:

1.

我建议使用第二种方式来驱动LCD,因为第二种方式在单片机程序中更容易实现,占用的资源更少,更符合程序设计的习惯。

再来说说SEG口,对于1/2BIAS的LCD,当COM口为高时,选定的SEG口为低,当COM口为低时,选定的SEG口为高。不现实的SEG口保持与COM口相同的电平即可,此时其他的COM口都为1/2VCC,不高于门限电压,不会使得其他液晶显示。

但是若LCD为1/3BIAS的,此时就不可以按1/2BIAS的方式来驱动,因为当电压为1/2时已经大于他的门限电压,若还按照上面方式,则会留下残影(就是对比度很低的液晶显示)。

此时,驱动方式为,当选定的COM口电压为VCC时,将其他COM的电压全为3/4 VCC,选定的SEG口全部为1/2VCC,未选定的SEG口电压也为VCC。反之,当选定的COM口电压为0时,将其他COM的电压全为1/4 VCC,选定的SEG口全部为1/2VCC,未选定的SEG口电压也为0.这种方式可以避免残影产生,其他方式均会产生残影。

打开APP精彩内容

点击阅读全文

液晶驱动原理 c语言,基于STM8S的LCD驱动电路和LCD显示原理分析相关推荐

  1. ds18b20温度传感器 lcd C语言,基于AVR单片机的18B20温度传感器及LCD显示的C语言程序设计...

    ***************************************************/ #include #include #define uchar unsigned char # ...

  2. stm32f302实现斩波控制步进电机_[转载]步进电机原理介绍与基于STM32的SPWM驱动步进电机,使用软件实现电机细分...

    文章摘自: http://bbs.eeworld.com.cn/thread-370591-1-1.html 一.混合式步进电机的结构和驱动原理 电机原理这部分不想讲的太复杂了,拆开一台电机看看就明白 ...

  3. 智能家居设计原理c语言,智能家居设计八大经典电路(附原理图、源代码、视频)...

    作为一个汽车电子专业工作7年的"老"人,跨行做了智能家居设计,一切都是从零做起.在我学习.设计智能家居的过程中,发现了这行还是有不少好的设计方案可以借鉴.现在就把我认为很价值的方案 ...

  4. 详解Linux2.6内核中基于platform机制的驱动模型 (经典)

    [摘要]本文以Linux 2.6.25 内核为例,分析了基于platform总线的驱动模型.首先介绍了Platform总线的基本概念,接着介绍了platform device和platform dri ...

  5. 详解Linux2.6内核中基于platform机制的驱动模型

    原文地址:详解Linux2.6内核中基于platform机制的驱动模型 作者:nacichan [摘要]本文以Linux 2.6.25 内核为例,分析了基于platform总线的驱动模型.首先介绍了P ...

  6. 基于ABP落地领域驱动设计-03.仓储和规约最佳实践和原则

    dotNET兄弟会 专注.Net开源技术及跨平台开发!致力于构建完善的.Net开放技术文库!为.Net爱好者提供学习交流家园! 公众号 围绕DDD和ABP Framework两个核心技术,后面还会陆续 ...

  7. 基于ABP落地领域驱动设计-06.正确区分领域逻辑和应用逻辑

    系列文章 基于ABP落地领域驱动设计-01.全景图 基于ABP落地领域驱动设计-02.聚合和聚合根的最佳实践和原则 基于ABP落地领域驱动设计-03.仓储和规约最佳实践和原则 基于ABP落地领域驱动设 ...

  8. 一文轻松搞懂LCD驱动编写

    开发环境: 开发板:JZ2440V3 CPU:samsunS3C2440 内核:Linux3.4.2 编译工具:arm-linux-gcc 4.3.2 LCD:4.3存液晶屏AT043TN24 参考文 ...

  9. 《Linux驱动:s3c2440 lcd 驱动分析》

    文章目录 一,前言 二,LCD原理和硬件分析 2.1 LCD原理解析 2.2 硬件电路 2.2.1 LCD背光电路 2.2.2 LCD屏 2.2.3 S3c2440主控 三,LCD应用平台总线-设备- ...

  10. LCD液晶显示控制原理简介(非物理显示原理)

    LCD液晶显示器,具体的显示原理不是很了解,也没必要细究. 其显示的原理可以理解为在屏幕面积范围内有大小一模一样的N个M色灯管,这些灯管被做成了正方体并有序的排列在屏幕上,我们看见的屏幕就是他们发光的 ...

最新文章

  1. php跨域访问java,案例:PHP Ajax 跨域最佳解决方案
  2. Nature:人工甜味剂改变小鼠肠道菌群组成及功能
  3. [Silverlight资源]处理bmp,gif及ico图像类文件
  4. python:将32位的16进制数据以二进制/hex/binary的形式写入到文件
  5. 利用Python实现用户群组分析!
  6. 计算机专业买win,新买的电脑是win10系统,有的人却费尽心思重装成win7,为什么呢...
  7. 横河川仪压力变送器调零_YOKOGAWA/横河EJX110A差压变送器的性能误差和精度介绍...
  8. 在别的函数或者线程函数里使用 PostMessage
  9. java编程 停等协议_在应用层模拟实用停等协议
  10. 阿里电话面试面试题总结,附答案!
  11. element audio 标签 不显示_不闪屏,HDR,带鱼屏全都有,LG 29WK600宽屏显示器测评...
  12. 微信支付商户与服务商区别
  13. 计算机毕业设计 基于JavaWbe的校友录管理系统(源码+论文)
  14. 灰蓝色商务数据图表合集PPT模板
  15. python 搜索引擎 实验楼的源码_【如何入门 Python 爬虫?】-看准网
  16. 斯坦福大学CS106A公开课笔记--启示环境配置
  17. i9 11900k参数 i911900k核显什么水平
  18. UCOS你问我答系列之消息队列详解
  19. 日期格式YYYY-MM-DD与yyyy-MM-dd的区别
  20. 微软的网络收藏夹 - Windows Live Favorites

热门文章

  1. 长江课堂作业答案_长江作业本答案
  2. 【GlobalMapper精品教程】007:如何加载谷歌卫星影像?
  3. 【Arduino 项目篇】智能窗户控制系统(附录:简单红绿灯制作)
  4. 用 reStructuredText 写作:快速入门指南
  5. NVivo 12 Mac的大规模部署
  6. 卫星影像的分辨率与成图比例尺
  7. Vue 下载本地静态资源
  8. 《计算机算法设计与分析 第4版 (王晓东) 课后答案[1-9章]》pdf版电子书附下载链接
  9. 单点登录sso原理及代码实现
  10. STM32 ADC 过采样技术