单片机软件驱动段码屏

段码屏介绍 

段码屏是一种基于液晶显示技术的非点阵类显示屏,主要用于显示简单的数字、符号或图形,如果项目仅需要在屏幕固定的位置显示固定的内容,使用段码屏会有以下几个优势:

1、低功耗:段码屏的功耗通常在微安级别,适合电池供电设备。

2、·‌成本低‌:相对于其他液晶屏,段码屏的生产成本较低。

3、寿命长‌:使用寿命可达十几年,适合长期稳定工作的设备。

 所以它广泛应用于智能水表、电表、电子闹钟、血糖仪、电动车仪表盘等低功耗设备中。

 

段码屏驱动

段码屏的控制是将画面分成一个一个小的显示单元,每个单元独立控制亮灭。这一点类似于数码管。例如要显示一个数字,可以分别控制一个8字符中七个部分的亮灭。

除了显示数字外,段码屏还可以显示各种图标,图标的显示也和数字的显示类似,可独立控制亮灭。不同的是,符号通常作为一个整体来控制亮灭。不同用途的段码屏显示的内容不同,所以常常需要定制。如下是一个显示时间天气类的段码屏画面:

重要:与数码管不同的是,段码屏虽然也是通过段极与公共端的压差实现,但并不能简单使用恒定直流电压加在两端。这样可能损坏段码屏。

正确的做法是,向需要显示的段两端交替施加正负3.3V电压(以3.3V屏为例)。

其中,COM表示公共端,SEG1、SEG2表示一个段极。假设COM端电压为0,则段极电压为3.3V的对应显示单元会亮。(注意:图中两个段仅为示意,实际可能是各种形状图标)假设COM端电压为3.3V,则段极电压为0的对应显示单元会亮。

在段码屏的驱动中,除了高电平和低电平,可能还需要中间电平。比如1/3偏压比的段码屏需要高电平、0.5VDD电平、低电平这三个挡位。大多单片机只能输出高电平和低电平,所以段码屏的驱动常使用专用的驱动芯片来实现。

如果要使用单片机IO直接驱动段码屏,可以在硬件设计上实现无输出状态时外部输入0.5VDD电平。例如下面的设计

当需要输出1/2VDD电平时可以将COM1引脚配置为浮空输入,此时COM1的电平就变成了0.5VDD。

一种更简单的方法(仅部分单片机支持):将引脚配置为输入,上拉和下拉同时打开,即可输出半高电平。这种方法需要单片机支持同时打开上下拉。

实际上,一块段码屏通常并不只有一个公共端。经常会遇见3个公共端、4个公共端,即1/3duty、1/4duty的段码屏。(duty:占空比,表示的是驱动电压在一个完整周期内的开启时间比例,同时也反映了段码屏COM端的数量)

初始状态,公共端都要设置为半高电平,以确保与任何段极都不能形成足够的压差。在显示时,段码屏要逐次显示每个公共端上连接的段(显示单元)。这个过程也叫扫描。当显示完了每个公共端上的段后,屏上所有要显示的图像都显示出来了。前面说了,段码屏的显示要用交流电,所以总结具体流程如下:

1,所有COM端设置半高电平,清屏

2,COM1设置低电平,其余COM设置半高电平。将COM1端口上需要亮的显示单元的SEG端设置高电平。保持2ms(保持时间可调整)

3,所有COM端口和SEG端口设置低电平,关闭显示,保持2ms

4,COM1设置高电平,其余COM设置半高电平。将COM1端口上需要亮的显示单元的SEG端设置低电平(不需要亮的设置高电平)。保持2ms

5,所有COM端口和SEG端口设置低电平,关闭显示,保持2ms

6,对其余COM依次执行2~5步骤,所有COM执行完算是一个周期

周期性扫描就可以显示完整的画面。其中,COM端的电平变化大约是这样的

至于一个显示单元对应的COM端口和SEG端口,会在段码屏的真值表给出,类似于这样的

 

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值