一、参考资料
LCD段码式液晶屏-duty与bias的工作原理
基于单片机的段式LCD低成本驱动方法
段式LCD原理
二、硬件选取
1、LCD
选取下面这块段式LCD进行讲解
真值表
PIN | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
---|---|---|---|---|---|---|---|---|---|---|---|
COM3 | COM3 | S3 | S4 | 1A | AUTO | 2A | MANU | ||||
COM2 | COM2 | S8 | S5 | 1F | 1B | 2F | 2B | ℃ | |||
COM1 | COM1 | S7 | S2 | 1E | 1G | 2E | 2G | ||||
COM0 | COM0 | S6 | 1D | 1C | 2D | 2C | S1 |
工作电压 | Duty | Bias |
---|---|---|
3.0v | 1/4D | 1/2B |
三、程序
程序以1号数码管显示数字6为例子讲解
我们从真值表上标记出要点亮的段位:1A 1F 1E 1D 1C 1G
PIN | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
---|---|---|---|---|---|---|---|---|---|---|---|
COM3 | COM3 | S3 | S4 | 1A | AUTO | 2A | MANU | ||||
COM2 | COM2 | S8 | S5 | 1F | 1B | 2F | 2B | ℃ | |||
COM1 | COM1 | S7 | S2 | 1E | 1G | 2E | 2G | ||||
COM0 | COM0 | S6 | 1D | 1C | 2D | 2C | S1 |
程序我是看着时序图编写,这样不容易出错
程序流程:
- T0时刻初始化COM0,1,2,3配置为输入
- T1时刻COM0输出高,送出正段码(1D 1C点亮)持续2ms
- T2时刻COM0配置为输入,COM1输出高,送出正段码(1E 1G点亮)持续2ms
- T3时刻COM1配置为输入,COM2输出高,送出正段码(1F点亮)持续2ms
- T4时刻COM2配置为输入,COM3输出高,送出正段码(1A点亮)持续2ms
- T5时刻COM3配置为输入,COM0输出低,送出反段码(1D 1C点亮)持续2ms
- T6时刻COM0配置为输入,COM1输出低,送出反段码(1E 1G点亮)持续2ms
- T7时刻COM1配置为输入,COM2输出低,送出反段码(1F点亮)持续2ms
- T8时刻COM2配置为输入,COM3输出低,送出反段码(1A点亮)持续2ms
编辑中。。。。