首页 理论教育 单片机实用教程:数码管静态显示

单片机实用教程:数码管静态显示

时间:2023-11-16 理论教育 版权反馈
【摘要】:图3-12 数码管的应用数码管外形如图3-13a所示。LED的负极连在一起构成的数码管称为共阴极数码管,如图3-13c所示;LED的正极连在一起构成的数码管称为共阳极数码管,如图3-13d所示。例如,P0.7~P0.0端送数据11111001到七段数码管的a~g、dp引脚时,数码管内部的b、c段LED发光,显示出数字“1”。表3-46 共阳极七段数码管常见字形码 如图3-14所示,实现共阳极数码管0~9循环显示。

单片机实用教程:数码管静态显示

1.数码管结构

数码管是由几个发光二极管组合在一起而形成的显示装置,实际工作、生活中数码管有着广泛的应用,例如图3-12所示的压力锅面板、时钟面板及交通灯等。

978-7-111-43252-4-Chapter03-100.jpg

图3-12 数码管的应用

数码管外形如图3-13a所示。组成数码管的每一个发光二极管称为数码管的“段”,以一位8段LED数码管为例,共有7段组成一个“日”字形,分别定义为数码管的a、b、c、d、e、f、g段,另外再加上一个用于小数显示的小数点dp(或h)段,如图3-13b所示。

978-7-111-43252-4-Chapter03-101.jpg

图3-13 数码管结构图

a)外形 b)结构 c)共阴极 d)共阳极

在数码管内部,这8只LED一端接在一起与公共端COM相连。LED的负极连在一起构成的数码管称为共阴极数码管,如图3-13c所示;LED的正极连在一起构成的数码管称为共阳极数码管,如图3-13d所示。

2.单片机驱动数码管工作原理

图3-14所示电路中,P0口连接共阳极数码管,P3口连接共阴极数码管。当使用单片机的I/O接口控制一位显示输出时,最好选择共阳极数码管,这样电路采用灌电流方式,数码管直接受控于I/O接口。否则,当连接的是共阴极数码管时,需在I/O接口上添加上拉电阻来提高I/O接口的驱动能力。

下面以P0口连接的共阳极数码管为例简述数码管的工作原理。共阳极数码管公共端COM接5V电源,当单片机从P0的I/O接口输出“1”时,数码管内部LED灭,当单片机从P0的I/O接口输出“0”时,数码管内部LED亮。例如,P0.7~P0.0端送数据11111001(0F9H)到七段数码管的a~g、dp引脚时,数码管内部的b、c段LED发光,显示出数字“1”。如果单片机送出数据11111000,a、b、c段的LED发光,数码管会显示数字“7”。也就是说,单片机送出不同的数据(称为字形码),可以让七段数码管显示不同的字符,这也就是我们常说的译码。共阳极七段数码管常见的字形码见表3-46。共阴极数码管的字形码刚好为共阳极的反码。

表3-46 共阳极七段数码管常见字形码

978-7-111-43252-4-Chapter03-102.jpg

【例3-10】 如图3-14所示,实现共阳极数码管0~9循环显示。

解答:流程图与例3-9基本相同,此处略去。程序如下:

ORG 0000H(www.xing528.com)

978-7-111-43252-4-Chapter03-103.jpg

图3-14 单片机与数码管连接电路

978-7-111-43252-4-Chapter03-104.jpg

END

本例与例3-9基本相同,有所区别是

(1)循环条件

例3-9中循环条件为

CJNE A,#88H,DISPLAY

即在表格中添加了停止的标志字节“88H”,如判断到表格数据为“88H”则跳转。而本例中采用循环条件为

CJNE R0,#10,MAIN

没有判断停止的标志字节“88H”,而是记录了存储于R0的查表次数,判断查表次数是否为10次。

(2)查表方式(MOVC A,@A+DPTR)

例3-9中,查表过程是通过改变寄存器DPTR的内容,即“INC DPTR”,来查询表格的下一个空间,而本例中则通过改变累加器A中内容(MOV A,R0……INC R0)来指向下一处的表格内容。小提示

读者可以自行尝试“CJNE A,#88H,DISPLAY”配合“INC A”的编程方式,体会不同的程序结构,这样更具有工程价值。

想一想:1)本例改为9~0循环;

2)本例改为0~99循环显示。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈