搜索
bottom↓
回复: 18

比较通用的用IO驱动段式液晶的程序,非常方便移植,注释已经包含了工作原理

[复制链接]

出0入85汤圆

发表于 2011-2-17 11:08:32 | 显示全部楼层 |阅读模式
首先说明我参考了以下帖子:
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=1387836&bbs_page_no=1&search_mode=1&search_text=段式&bbs_id=9999
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=739682&bbs_page_no=1&search_mode=4&search_text=bluefeel&bbs_id=9999
还有万利199开发板的例程。

STM32驱动效果:

(原文件名:SSL111441.jpg)

M48驱动效果:

(原文件名:SSL111531.jpg)


(原文件名:SSL111501.jpg)


(原文件名:SSL111521.jpg)

更多的原理参考上面的帖子,我现在只是贴出程序注释部分。
段式液晶真值表:

             ___________________________________________________________
            |   _A_   |   _A_   |   _A_   |   _A_   |   _A_   |   _A_   |
            | F|   |B | F|   |B | F|   |B | F|   |B | F|   |B | F|   |B |
            |  |_G_|  |  |_G_|  |  |_G_|  |  |_G_|  |  |_G_|  |  |_G_|  |
            | E|   |C | E|   |C | E|   |C | E|   |C | E|   |C | E|   |C |
            |  |___|  |  |___|  |  |___|  | .|___|  | .|___|  | .|___|  |
            |    D    |    D    |    D    | P  D    | P  D    | P  D    |
            |_________|_________|_________|_________|_________|_________|
             PD0..PD1..PD2..PD3.................PD7..PB0.............PB3
     --------------------------------------------------------------------
     |      | S0 | S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 | S9 | S10| S11|
     --------------------------------------------------------------------
PC0  | COM0 | 0D |    | 1D |    | 2D |    | 3D | 3P | 4D | 4P | 5D | 5P |
     --------------------------------------------------------------------
PC1  | COM1 | 0E | 0C | 1E | 1C | 2E | 2C | 3E | 3C | 4E | 4C | 5E | 5C |
     --------------------------------------------------------------------
PC2  | COM2 | 0G | 0B | 1G | 1B | 2G | 2B | 3G | 3B | 4G | 4B | 5G | 5B |
     --------------------------------------------------------------------
PC3  | COM3 | 0F | 0A | 1F | 1A | 2F | 2A | 3F | 3A | 4F | 4A | 5F | 5A |
     --------------------------------------------------------------------
            |    0    |    1    |    2    |    3    |    4    |    5    |

一个LCD字符根据以下矩阵编码:
{ D ,   }
{ E , C }
{ G , B }
{ F , A }
例如字符2:
{ 1 , 0 }
{ 1 , 0 }
{ 1 , 1 }
{ 0 , 1 }

=  7   C
=> '2' = 0xC7

IO输出高低电平时候COMx为对应电平,IO高阻输入时COMx为电阻分压,即VDD/2

               VDD
                |
                -
               | |
               | |      1M or other value
               | |
                -
                |
IO ------------+------------ to LCD COMx
                |
                -
               | |
               | |      1M or other value
               | |
                -
                |
               GND

COMx有效时候IO输出低电平或者高电平
COMx为低电平时在字符0处显示'2'的真值表:
------------------
|      |SEG0|SEG1|
------------------
| COM0 | 1  | 0  |
------------------
| COM1 | 1  | 0  |
------------------
| COM2 | 1  | 1  |
------------------
| COM3 | 0  | 1  |
------------------
         7    C
COMx为高电平时在字符0处显示'2'的真值表:
------------------
|      |SEG0|SEG1|
------------------
| COM0 | 0  | 1  |
------------------
| COM1 | 0  | 1  |
------------------
| COM2 | 0  | 0  |
------------------
| COM3 | 1  | 0  |
------------------
        ~7   ~C

字符0处显示'2'的时序图:

        0 1  2 3  4 5  6 7  8 9  A B  C D  E F  0 1  2 3
       |COM0有效 |COM1有效 |COM2有效 |COM3有效 |COM0有效 |
             _                                       _
COM0        | |   _    _    _    _    _    _        | |
       _____| |__| |__| |__| |__| |__| |__| |_______| |__
                       _
COM1    _    _        | |   _    _    _    _    _    _
       | |__| |_______| |__| |__| |__| |__| |__| |__| |__
                                 _
COM2    _    _    _    _        | |   _    _    _    _
       | |__| |__| |__| |_______| |__| |__| |__| |__| |__
                                           _
COM3    _    _    _    _    _    _        | |   _    _
       | |__| |__| |__| |__| |__| |_______| |__| |__| |__
        _         _         _              _    _
SEG0   | |       | |       | |            | |  | |
       | |_______| |_______| |____________| |__| |_______
             _         _    _         _              _
SEG1        | |       | |  | |       | |            | |
       _____| |_______| |__| |_______| |____________| |__

图中如0和1、2和3位置代表两个波形周期。0或2为前半周期,COMx为高低电平,SEGx和COMx
之间的电平为VDD、-VDD时候对应的段显示,电平为0或VDD/2、-VDD/2时不显示。1或3为后半
周期,所有COM和SEG都为低电平,所有的段灭。当前半周期等于后半周期时候,就是1/2占空
比,调节占空比可以调节对比度。

下面是例程,ICC或IAR ARM软件:
点击此处下载 ourdev_616626AXBJ6A.rar(文件大小:28K) (原文件名:Glass_LCD_M16.rar)
点击此处下载 ourdev_616627PDQ6LB.rar(文件大小:26K) (原文件名:Glass_LCD_M48.rar)
点击此处下载 ourdev_616628OX6HSZ.rar(文件大小:75K) (原文件名:Glass_LCD_STM32.rar)

出0入0汤圆

发表于 2011-2-17 11:16:35 | 显示全部楼层
不错啊,智爷,坐个SF

出0入0汤圆

发表于 2011-2-17 11:16:45 | 显示全部楼层
狂顶!!尖叫~~

出0入4汤圆

发表于 2011-2-17 11:16:47 | 显示全部楼层
make頂樓主

出0入0汤圆

发表于 2011-2-17 11:21:23 | 显示全部楼层
make

出0入93汤圆

发表于 2011-2-17 12:25:39 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-2-17 12:26:54 | 显示全部楼层
lihai

出0入0汤圆

发表于 2011-2-17 13:01:22 | 显示全部楼层
顶楼主

出0入0汤圆

发表于 2011-2-17 15:15:39 | 显示全部楼层
好东西

出0入0汤圆

发表于 2011-2-17 15:19:30 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-2-17 15:29:48 | 显示全部楼层
jh

出0入0汤圆

发表于 2011-2-17 21:56:04 | 显示全部楼层
专程来顶帖

出0入0汤圆

发表于 2011-2-17 22:45:29 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-2-17 23:47:07 | 显示全部楼层
这个先标记下,有时间看。

出0入0汤圆

发表于 2011-2-18 00:09:21 | 显示全部楼层
http://www.reicon.com.cn

出0入0汤圆

发表于 2011-2-18 14:17:17 | 显示全部楼层
标记下

出0入0汤圆

发表于 2012-1-4 10:59:23 | 显示全部楼层
比较使用啊,马上要用到了

出0入0汤圆

发表于 2012-8-17 08:36:58 | 显示全部楼层
赞一个!!!

出0入0汤圆

发表于 2018-9-21 16:33:57 | 显示全部楼层
学习一下
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-20 23:12

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表