《第三讲-LED及显示方式演示幻灯片.ppt》由会员分享,可在线阅读,更多相关《第三讲-LED及显示方式演示幻灯片.ppt(22页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、LEDLED数码管显示接口数码管显示接口一、一、LEDLED数码管数码管1LEDLED显示器的扩展显示器的扩展(结构结构)LEDLED数码管的数码管的结构结构:共阳与共阴共阳与共阴 单片机系统扩展单片机系统扩展LEDLED数码管时数码管时多用多用共阳共阳LEDLED:共阳数码管每个段笔画是用低电平共阳数码管每个段笔画是用低电平(“0”)(“0”)点亮的点亮的,要求驱要求驱动功率很小;而共阴数码管段笔画是用高电平动功率很小;而共阴数码管段笔画是用高电平(“0”)(“0”)点亮点亮的,要求驱动功率较大。的,要求驱动功率较大。通常每个段笔画要串一个数百欧姆的通常每个段笔画要串一个数百欧姆的降压电阻降
2、压电阻。公共公共阳阳极极h g f e d c b ah g f e d c b aa ab bc cd dg ge ef fh h公共公共阴阴极极h g f e d c b ah g f e d c b aa ab bc cd dg ge ef fh hh g f ah g f a高电平点亮高电平点亮低电平点亮低电平点亮接高电平接高电平接地接地2LEDLED数码管的软件译码数码管的软件译码八段八段LEDLED数码管数码管段代码编码表段代码编码表(连线不同可有多种表连线不同可有多种表):):公共阳极公共阳极h g f e d c b ah g f e d c b aa ab bc cd dg
3、ge ef fh h公共阴极公共阴极h g f e d c b ah g f e d c b aa ab bc cd dg ge ef fh hh g f ah g f a高电平点亮高电平点亮低电平点亮低电平点亮接高电平接高电平接地接地字形字形0123456789黑黑共阳共阳0C00F90A40B09992820F880900FF共阴共阴3F065B4F666D7D077F6F003LEDLED数码管分类:数码管分类:按按其内部结构可分为其内部结构可分为共阴型共阴型和和共阳型共阳型;按按其外形尺寸有多种形式,使用较多的是其外形尺寸有多种形式,使用较多的是0.50.5和和0.80.8;按按显示颜
4、色也有多种形式,主要有显示颜色也有多种形式,主要有红色红色和和绿色绿色;正向压降一般为正向压降一般为1.51.52V2V,额定电流为,额定电流为10mA10mA,最大电流为,最大电流为40mA40mA。静态显示静态显示时取时取10mA10mA为宜,为宜,动态扫描显示动态扫描显示,可加大脉冲电流,但,可加大脉冲电流,但一般不超过一般不超过40mA40mA。按按亮度强弱可分为亮度强弱可分为超亮超亮、高亮高亮和和普亮普亮。4二、二、LEDLED数码管编码方式数码管编码方式 表表1 1 共阴和共阳共阴和共阳LEDLED数码管几种八段编码表数码管几种八段编码表 显示显示数字数字共阴顺序小数点暗共阴顺序小
5、数点暗 共阴逆序小数点暗共阴逆序小数点暗 共阳顺序共阳顺序小数点亮小数点亮 共阳顺序共阳顺序小数点暗小数点暗 Dp g f e d c b aDp g f e d c b a1616进制进制 a b c d e f g Dpa b c d e f g Dp1616进制进制0 00 0 1 1 1 1 1 10 0 1 1 1 1 1 13FH3FH1 1 1 1 1 1 0 01 1 1 1 1 1 0 0FCHFCH40H40HC0HC0H1 10 0 0 0 0 1 1 00 0 0 0 0 1 1 006H06H0 1 1 0 0 0 0 00 1 1 0 0 0 0 060H60H79
6、H79HF9HF9H2 20 1 0 1 1 0 1 10 1 0 1 1 0 1 15BH5BH1 1 0 1 1 0 1 01 1 0 1 1 0 1 0DAHDAH24H24HA4HA4H3 30 1 0 0 1 1 1 10 1 0 0 1 1 1 14FH4FH1 1 1 1 0 0 1 01 1 1 1 0 0 1 0F2HF2H30H30HB0HB0H4 40 1 1 0 0 1 1 00 1 1 0 0 1 1 066H66H0 1 1 0 0 1 1 00 1 1 0 0 1 1 066H66H19H19H99H99H5 50 1 1 0 1 1 0 10 1 1 0 1 1
7、 0 16DH6DH1 0 1 1 0 1 1 01 0 1 1 0 1 1 0B6HB6H12H12H92H92H6 60 1 1 1 1 1 0 10 1 1 1 1 1 0 17DH7DH1 0 1 1 1 1 1 01 0 1 1 1 1 1 0BEHBEH02H02H82H82H7 70 0 0 0 0 1 1 10 0 0 0 0 1 1 107H07H1 1 1 0 0 0 0 01 1 1 0 0 0 0 0E0HE0H78H78HF8HF8H8 80 1 1 1 1 1 1 10 1 1 1 1 1 1 17FH7FH1 1 1 1 1 1 1 01 1 1 1 1 1 1
8、0FEHFEH00H00H80H80H9 90 1 1 0 1 1 1 10 1 1 0 1 1 1 16FH6FH1 1 1 1 0 1 1 01 1 1 1 0 1 1 0F6HF6H10H10H90H90H5【例例1 1】已已知知显显示示数数存存在在无无符符号号整整型型数数countcount中中,试试将将其其转转换换为为5 5位位共共阴阴字字段段码码(顺顺序序),存存在在无符号字符型数组无符号字符型数组bufferbuffer中。中。从显示数中分离出显示的每一位数字从显示数中分离出显示的每一位数字 方法是将显示数除以十进制的权方法是将显示数除以十进制的权显示数显示数转换转换为显示字段码
9、的为显示字段码的步骤步骤:将分离出的显示数字转换为显示字段将分离出的显示数字转换为显示字段码码 方法是查表方法是查表6三、三、静态显示方式及其典型应用电路静态显示方式及其典型应用电路 动态显示方式动态显示方式,在某一瞬时显示一位,依次循环,在某一瞬时显示一位,依次循环扫描,轮流显示,由于人的视觉滞留效应,人们看到扫描,轮流显示,由于人的视觉滞留效应,人们看到的是多位同时稳定显示。的是多位同时稳定显示。特点特点:占用:占用I/OI/O端线少,电路较简单,编程较复杂,端线少,电路较简单,编程较复杂,CPUCPU要定时扫描刷新显示。一般适用于显示位数较多要定时扫描刷新显示。一般适用于显示位数较多的场
10、合。的场合。LEDLED数码管显示分类:静态显示方式和动态显示方式。数码管显示分类:静态显示方式和动态显示方式。静态显示方式静态显示方式,每一位字段码分别从,每一位字段码分别从I/OI/O控制口输控制口输出,保持不变直至出,保持不变直至CPUCPU刷新。刷新。特点特点:编程较简单,但占用:编程较简单,但占用I/OI/O口线多,一般适用口线多,一般适用于显示位数较少的场合。于显示位数较少的场合。7LEDLED显示器的扩展显示器的扩展(显示方式显示方式)静态显示特点静态显示特点:无闪烁无闪烁,用,用元器件多元器件多,占占I/OI/O线多线多,无须扫描无须扫描,节省节省CPUCPU时间时间,编程简单
11、。编程简单。静态显示静态显示:各数码管在显示过程中各数码管在显示过程中持续持续得到送显信号,与各数码管接口得到送显信号,与各数码管接口的的I/OI/O口线口线是是专用专用的。的。81 1、并行扩展静态显示电路并行扩展静态显示电路 92、串行串行扩展静态显示电路扩展静态显示电路 10要求:要求:根据上图编写通过串行口和根据上图编写通过串行口和74LS16474LS164驱动驱动共共 阳阳LEDLED数码管数码管查表显示的子程序。查表显示的子程序。条件:条件:系统有系统有6 6个个LEDLED数码管数码管,待显数据待显数据(00H09H)(00H09H)已放在已放在35H30H35H30H单元中单
12、元中(分别对应分别对应十万位十万位个位个位),DSPLYDSPLY:MOV DPTR,#TABLE:MOV DPTR,#TABLE;共阳共阳LEDLED数码管译码数码管译码表首址表首址 MOV R0 MOV R0,#30H#30H ;待显数据缓冲区的待显数据缓冲区的个位个位地址地址REDOREDO:MOV AMOV A,R0 R0 ;通过通过R0R0实现寄存器实现寄存器间接寻址间接寻址 MOVC A,A+DPTR MOVC A,A+DPTR ;查表查表 MOV SBUF,A MOV SBUF,A ;经串行口经串行口发送发送到到74LS16474LS164 JNB TI,$JNB TI,$;查询
13、查询送完一个字节的第送完一个字节的第8 8位?位?CLR TI CLR TI ;为下一字节发送为下一字节发送作准备作准备 INC R0 INC R0 ;R0;R0指向下一个指向下一个数据缓冲单元数据缓冲单元 CJNE R0 CJNE R0,#36H#36H,REDO REDO ;判断判断是否发完是否发完6 6个数?个数?RET RET ;发完发完6 6个数就个数就返回返回TABLETABLE:DB 0C0H,0F9H,0A4H,0B0H,99H DB 0C0H,0F9H,0A4H,0B0H,99H ;共阳共阳LEDLED译码表译码表 DB 92H,82H,0F8H,80H,90H DB 92H
14、,82H,0F8H,80H,90H11动态显示电路动态显示电路连结形式:连结形式:显示各位的所有显示各位的所有相同字段线连在一起,相同字段线连在一起,共共8 8段,由一个段,由一个8 8位位I/OI/O口控制;口控制;每一位的公共端每一位的公共端(共阳或共阴(共阳或共阴COMCOM)由另一个由另一个I/OI/O口控制。口控制。四、四、动态显示方式动态显示方式及其典型应用电路及其典型应用电路12动态显示特点动态显示特点:有闪烁,用元器件少,占有闪烁,用元器件少,占I/OI/O线少,线少,必须扫描必须扫描,花费,花费CPUCPU时间,编程复杂。时间,编程复杂。(有多个有多个LEDLED时尤为突出)
15、时尤为突出)动态显示动态显示:各数码管在显示过程中各数码管在显示过程中轮流轮流得到送显信号,与各数码得到送显信号,与各数码管接口的管接口的I/OI/O口线是共用口线是共用的。的。13LEDLED数码管数码管动态动态显示举例显示举例P1.5 P1.5 P1.4P1.4P1.3P1.3P1.2P1.2P1.2P1.2P1.0P1.0P0.7 P0.7 P0.6 P0.6 P0.5 P0.5 P0.4 P0.4 P0.3 P0.3 P0.2 P0.2 P0.1 P0.1 P0.0P0.07406 OC7406 OC门门 X 3 X 3上拉上拉电阻电阻1414+5V+5VAT89C51工作原理工作原理
16、:从从P0P0口送段代码口送段代码,P1,P1口送位选信号口送位选信号。段码虽同时。段码虽同时到达到达 6 6个个LEDLED,但,但一次仅一个一次仅一个LEDLED被选中被选中。利用。利用“视觉暂留视觉暂留”,每送一个字符并选中相应位线,延时一会儿,每送一个字符并选中相应位线,延时一会儿,再送再送/选下选下一个一个循环扫描循环扫描即可。即可。共阴共阴 数码管数码管位位选选线线段段代代码码14P1.5 P1.5 P1.4P1.4P1.3P1.3P1.2P1.2P1.2P1.2P1.0P1.0P0.7 P0.7 P0.6 P0.6 P0.5 P0.5 P0.4 P0.4 P0.3 P0.3 P0
17、.2 P0.2 P0.1 P0.1 P0.0P0.07406 OC7406 OC门门 X 3 X 3+5V+5VAT89C51位位选选线线段段代代码码要求要求:此处为共阴数码管,此处为共阴数码管,P0P0口送段代码,口送段代码,P1P1口送位选信号。口送位选信号。通过查表实现动态显示。通过查表实现动态显示。条件条件:待显数据待显数据(00H09H)(00H09H)已放在已放在:7FH7AH7FH7AH单元中单元中(分别对分别对应应十万位十万位个位个位)说明说明:由于用了由于用了反相驱动器反相驱动器74067406,要用共阳译码表。,要用共阳译码表。共阴共阴 数码管数码管上拉上拉电阻电阻1414
18、157406 OC7406 OC门门 X 3 X 3+5V+5V(7FH)(7EH)(7DH)(7CH)(7BH)(7AH)十万十万 万位万位 千位千位 百位百位 十位十位 个位个位数据缓冲区数据缓冲区/显示缓冲区显示缓冲区P0P0口口送段送段代码,代码,P1P1口口送位选送位选信号。信号。待显数据待显数据已经放在已经放在:7FH7AH7FH7AH单元单元(分别分别对应对应十万十万位位个位个位)使用共阳使用共阳译码表译码表。16DIRDIR:MOV DPTR,:MOV DPTR,#DSEG#DSEG ;数码管译码数码管译码表首址表首址 MOV R0 MOV R0,#7AH#7AH ;待显缓冲区
19、待显缓冲区个位个位地址地址 MOV R3 MOV R3,#01H#01H ;个位的个位的位选信号位选信号=01H=01HLD1LD1:MOV A MOV A,R0 R0 ;通过通过R0R0间接寻址间接寻址 MOVC A,A+DPTRMOVC A,A+DPTR ;查表查表 MOV P0,A MOV P0,A ;字段码送到字段码送到P0P0口口 MOV P1 MOV P1,R3 R3 ;字位选择送到字位选择送到P1P1口口 LCALL DELYLCALL DELY ;调延时调延时1ms1ms子程序子程序 INC R0 INC R0 ;R0;R0 指向下一字节指向下一字节 MOV A MOV A,R
20、3R3 JB ACC.5 JB ACC.5,LD2LD2 ;判判是否发完是否发完6 6个数?个数?RL A RL A ;R1;R1指向下一个位指向下一个位 MOV R3 MOV R3,A A ;位选信号存回位选信号存回R1R1 SJMP SJMP LD1LD1 ;跳去再显示下一个数跳去再显示下一个数LD2LD2:RET RET ;发完发完6 6个数就个数就返回返回DSEGDSEG:DB 0C0H,0F9H,0A4H,0B0H,99HDB 0C0H,0F9H,0A4H,0B0H,99H;共阳译码表共阳译码表 DB 92H,82H,0F8H,DB 92H,82H,0F8H,80H80H,90H,9
21、0HP0P0口口送段送段代码,代码,P1P1口口送位选送位选信号。信号。待显数据待显数据已经放在已经放在:7FH7AH7FH7AH单元单元(分别分别对应对应十万十万位位个位个位)使用共阳使用共阳译码表译码表。17动态动态显示举例显示举例 (循环显示循环显示“8”“8”的实验的实验)实验箱实验箱从从P0P0口扩展了两个口扩展了两个8 8位的简单位的简单I/OI/O口口:一个送段代码一个送段代码(字形状字形状),地址是,地址是0DCH0DCH;一个送位选信号一个送位选信号(字位置字位置),地址是,地址是0DDH0DDH。ORG 0000HORG 0000H MOV R0,#MOV R0,#0DCH
22、0DCH ;指向指向字形口字形口 MOV A,#80H ;MOV A,#80H ;送送“8”“8”的字形代码的字形代码 MOVX MOVX R0,AR0,A ;输出字形代码输出字形代码 MOV R1,#MOV R1,#0DDH0DDH ;指向指向字位口字位口 MOV A,#20H ;MOV A,#20H ;从最高位开始从最高位开始LEDO:LEDO:MOVX MOVX R1,AR1,A ;输出字位代码输出字位代码 ACALL DEYS ;ACALL DEYS ;调延时子程序调延时子程序 RR A ;RR A ;右移一位右移一位 SJMP LEDO ;SJMP LEDO ;循环显示循环显示“8”
23、“8”181 1、共阴型共阴型8 8位动态显示电路位动态显示电路19DIR4:MOV R2,#10 DIR4:MOV R2,#10 ;置循环扫描次数置循环扫描次数 MOV DPTR,#7FFFH MOV DPTR,#7FFFH ;置置7437774377口地址口地址DLP1:ANL P1,#11111000B DLP1:ANL P1,#11111000B;第第0 0位先显示位先显示 MOV R0,#30H MOV R0,#30H ;置显示字段码首址置显示字段码首址DLP2:MOV A,R0 DLP2:MOV A,R0 ;读显示字段码读显示字段码 MOVX DPTR,A MOVX DPTR,A
24、;输出显示字段码输出显示字段码 LCALL DY2ms LCALL DY2ms ;调用延时调用延时2ms2ms子程序子程序(参阅例参阅例4.13)4.13)INC R0 INC R0 ;指向下一位字段码指向下一位字段码 INC P1 INC P1 ;选通下一位显示选通下一位显示 CJNE R0,#38H,DLP2 CJNE R0,#38H,DLP2 ;判判8 8位扫描显示完否位扫描显示完否?未完继续未完继续 DJNZ R2,DLP1 DJNZ R2,DLP1 ;8;8位扫描显示完毕位扫描显示完毕,判判1010次循环完否次循环完否?CLR A CLR A ;10;10次循环完毕次循环完毕,显示暗
25、显示暗 MOVX DPTR,A MOVX DPTR,A ;RET RET ;子程序返回子程序返回【例【例9-59-5】按图】按图9-79-7,试编制循环扫描(,试编制循环扫描(1010次)显示子程序,已次)显示子程序,已知显示字段码存在以知显示字段码存在以30H30H(低位)为首址的(低位)为首址的8 8字节内字节内RAMRAM中。中。解:编程如下:解:编程如下:202、共阳型共阳型3 3位动态显示电路位动态显示电路21DIR5:MOV DPTR,#0BFFFH DIR5:MOV DPTR,#0BFFFH ;置置7437774377地址地址 MOV R2,#100 MOV R2,#100 ;置
26、循环显示次数置循环显示次数DIR50:SETB P1.2 DIR50:SETB P1.2 ;百位停显示百位停显示 MOV A,40H MOV A,40H ;取个位字段码取个位字段码 MOVX DPTR,A MOVX DPTR,A ;输出个位字段码输出个位字段码 CLR P1.0 CLR P1.0 ;个位显示个位显示 LCALL DY2ms LCALL DY2ms ;调用延时调用延时2ms2ms子程序子程序(参阅例参阅例4.13)4.13)DIR51:SETB P1.0 DIR51:SETB P1.0 ;个位停显示个位停显示 MOV A,41H MOV A,41H ;取十位字段码取十位字段码 M
27、OVX DPTR,A MOVX DPTR,A ;输出十位字段码输出十位字段码 CLR P1.1 CLR P1.1 ;十位显示十位显示 LCALL DY2ms LCALL DY2ms ;延时延时2ms2msDIR52:SETB P1.1 DIR52:SETB P1.1 ;十位停显示十位停显示 MOV A,42H MOV A,42H ;取百位字段码取百位字段码 MOVX DPTR,A MOVX DPTR,A ;输出百位字段码输出百位字段码 CLR P1.2 CLR P1.2 ;百位显示百位显示 LCALL DY2ms LCALL DY2ms ;延时延时2ms2ms DJNZ R2,DIR50 DJNZ R2,DIR50 ;判循环显示结束否判循环显示结束否?未完继续未完继续 ORL P1,#00000111B ORL P1,#00000111B;3;3位灭显示位灭显示 RET RET ;【例【例9-69-6】根据图】根据图9-89-8电路,试编制电路,试编制3 3位动态扫描显示程序位动态扫描显示程序(循环循环100100次次),),已知显示字段码存在以已知显示字段码存在以40H(40H(低位低位)为首址的为首址的3 3字节内字节内RAMRAM中。中。解:编程如下:解:编程如下:22
限制150内