led数码管静态显示与动态显示
LED显示器及其接口
常用的LED显示器有LED状态显示器(俗称发光二极管) 、 LED八段显示器(俗称数码管) 。 发光二极管可显示两种状态, 用于系统状态显示; led数码管用于数字显示。
图1-1 发光二极管的外形
• 发光二极管有亮、 灭两种状态, 多用于信号或状态指示, 普通发光二极管的外形如图1-1 所示。
1、 发光二极管与单片机的接口
图1-2 发光二极管与单片机的接口电路
普通发光二极管的正向导通压降一般为2V左右, 工作电流在3-30mA之间, 改变限流电阻的大小可以改变发光二极管的亮度,一般发光二极管的工作电流控制在1 0-1 5mA较为合理。 单片机与发光二极管的接口如图7-2所示。 可以通过位操作指令CLRP1 .0来点亮发光二极管, SETB P1 .0来熄灭发光二极管。
2.数码管与单片机的接口
(1 ) 数码管的结构与显示原理
图1-3 数码管的外形及内部结构图 a) 外形 b) 共阳极 c) 共阴极
八段数码管由8个发光二极管构成, 通过不同的组合可用来显示数字0~9、 字符A~F、 H、 L、 P、 R、 U、 Y、 符号“-”及小数点“.”。 根据八个发光二极管连接方式的不同可以将数码管分为共阴极和共阳极两种。 数码管的外形及内部结构如图1-3所示。
共阳极数码管的8个发光二极管的阳极(二极管正端) 连接在一起, 通常, 公共阳极接高电平(一般接电源) , 其它管脚接段驱动电路输出端。 当某段驱动电路的输出端为低电平时, 则该端所连接的字段导通并点亮, 根据发光字段的不同组合可显示出各种数字或字符。 此时, 要求段驱动电路能吸收额定的段导通电流, 还需根据外接电源及额定段导通电流来确定相应的限流电阻。
共阴极数码管的8个发光二极管的阴极(二极管负端) 连接在一起, 通常, 公共阴极接低电平(一般接地) , 其它管脚接段驱动电路输出端, 当某段驱动电路的输出端为高电平时, 则该端所连接的字段导通并点亮, 根据发光字段的不同组合可显示出各种数字或字符。 此时, 要求段驱动电路能提供额定的段导通电流, 还需根据外接电源及额定段导通电流来确定相应的限流电阻。
• 要使数码管显示出相应的数字或字符必须使段数据口输出相应的字形编码(成为段码) 。 8段数码管的段码为8位, 用一个字节即可表示。 在段码字节中代码位于各段发光二极管的对应关系见表1-1 。
代码位 | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
显示段 | dp | g | f | e | d | c | b | a |
段码的值与使用的led数码管类型有关, 如使用共阳极数码管, 数据为0表示对应字段亮, 数据为1 表示对应字段暗; 如使用共阴极数码管, 数据为0表示对应字段暗, 数据为1 表示对应字段亮。 如要显示“0”, 共阳极数码管的字型编码应为:11 000000B(即C0H) ; 共阴极数码管的字型编码应为:00111111 B(即3FH) 。 依此类推, 可求得数码管字形编码(段码)
(2) 数码管静态显示方式
• 静态显示是指数码管显示某一字符时, 相应的发光二极管恒定导通或恒定截止。 这种显示方式的各位数码管相互独立, 公共端恒定接地(共阴极)或接正电源(共阳极) 。 每个数码管的8个字段分别与一个8位I/O口地址相连, I/O口只要有段码输出, 相应字符即显示出来, 并保持不变, 直到I/O口输出新的段码。 采用静态显示方式, 较小的电流即可获得较高的亮度, 且占用CPU时间少, 编程简单, 显示便于监测和控制, 但其占用的口线多, 硬件电路复杂, 成本高, 只适合于显示位数较少的场合。
【例1.1】 静态显示应用举例。
• 如图1-4所示, 单片机通过P2口并经74LS245驱动一位共阴数码管, 编程实现数码管循环显示0~9。
图1-4 一位数码管静态显示原理图解:
程序清单:
ORG 0030H
MOV SP,#60H
MOV R0,#00H
DISP0: MOV DPTR,#SEGTAB ;字段码首地址
DISP1 : MOV A,R0
;从0开始显示
DISP3: MOVC A,@A+DPTR ;查字符段选码
MOV P2,A
;从P2口输出显示
MOV R3,#1 00 ;停留 1 s
DISP4:ACALL D1 0MS
DJNZ R3,DISP4
INC R0
CJNE R0,#0AH,DISP1
MOV R0,#00H
AJMP DISP1 ;又从0开始显示
D1 0MS:MOV R7,#1 4H ;1 0ms延时子程序
DLY:MOV R6,#0F8H
DLY1 :DJNZ R6,DLY1
DJNZ R7,DLY
RET
SEGTAB : ;;段码表
DB 3FH,06H,5BH,4FH,66H ;;0\1 \2\3\4
DB 6DH,7DH,07H,7FH,6FH ;;5\6\7\8\9
END
(3) 数码管动态显示方式
• 动态显示是一位一位地轮流点亮各位数码管,这种逐位点亮显示器的方式称为位扫描。 通常,各位数码管的段选线相应并联在一起,由一个8位的I/O口控制; 各位的位选线(公共阴极或阳极) 由另外的I/O口线控制。 动态方式显示时,各数码管分时轮流选通,要使其稳定显示必须采用扫描方式,即在某一时刻只选通一位数码管,并送出相应的段码,在另一时刻选通另一位数码管,并送出相应的段码,依此规律循环,即可使各位数码管显示将要显示的字符,虽然这些字符是在不同的时刻分别显示,但由于人眼存在视觉暂留效应,只要每位显示间隔足够短就可以给人同时显示的感觉。 采用动态显示方式比较节省I/O口,硬件电路也较静态显示方式简单,但其亮度不如静态显示方式,而且在显示位数较多时,CPU要依次扫描,占用CPU较多的时间。
【例1.2】 动态显示举例。
• 如图1-5所示,单片机通过P2口并经74LS245驱动4位led数码管,送出段码信号,P1 .0~P1 .3通过反相驱动后分别是4位数码管的位选信号,编程实现4位数码管从左到右分别显示1 、2、 3、 4。
图1-5 四位数码管动态显示原理图解:
显示过程:利用定时器T0,每1 ms 产生一次中断,在中断服务程序中更换一次显示位,4位一个扫描周期,扫描时间为4ms。 除了定时中断扫描显示外,也可以程序控制扫描显示,但采用定时中断扫描显示的扫描周期固定,特别是当单片机的工作任务重时,定时中断扫描显示是一种很好的方式。
同类文章排行
- LED数码管的检测
- LED数码管故障检测检修
- LED数显温度控制器设计论述
- LED大屏幕数显装置在随流孕育装置上的应用
- LED数码管正装与倒装结构区别
- led数码管静态显示方式和动态显示方式
- LED七段数码管数字钟
- led数码管显示种类简介
- LED数码管显示器介绍
- LED数码管动态扫描显示控制器设计