在仿真电路中,单只分立式数码管连接在P0,并在程序运行时循环显示0,1,2,…,9。在设计调试程序时,要首先掌握共阴、共阳数码管的基本结构及数字段码设计。分立式数码管循环显示0~9的电路如图3-6所示。在图3-6中,附加了单个实物数码管的外部引脚正面视图。
图3-6 分立式数码管循环显示0~9电路
仿真电路中单个共阴数码管组件名称为7SEG-COM-CAT-GREEN。其中,7SEG表示七段(7 Segments);COM-CAT表示共阴(Common-Cathode);GREEN表示显示颜色为绿色。如果选择共阳数码管组件,则其名称为7SEG-COM-AN-GREEN。其中,COM-AN表示共阳(Common-Anode)。仿真电路给出了数码管的外部引脚,共阴数码管的COM引脚接GND,共阳数码管的COM引脚接VCC。
单个实物数码管尺寸有0.28、0.36、0.4、0.56in 等,对应型号为2811BS、3611BS、4011BS、5611BS或2811AS、3611AS、4011AS、5611AS等。在实物数码管型号中,带有B的表示是共阳数码管(对应于仿真元器件型号中的COM-AN:CA),带有A的表示是共阴数码管(对应于仿真元器件型号中的COM-CAT:CC)。其中,3611A/B、5611A/B等比较常用。
本案例电路中,共阴数码管段码引脚A~G连接在STC15的P0引脚。当P0某引脚值为1时,对应数码管段被点亮。在程序中,预设了数字0~9的共阴数码管段码表。数字0~9的段码按固定时间间隔由P0循环输出,形成数码管循环显示数字效果。
为便于理解段码的编写,表3-1给出了数字0与7的共阴、共阳数码管段码编写示例。
表3-1 数字0与7的共阴、共阳数码管段码编写示例
说明:对于共阴数码管,要点亮的管段对应引脚必须为高电平;对于共阳数码管,要点亮的管段对应引脚必须为低电平;二进制段码最高位对应小数点DP,最低位对应A段。
单片机大量应用设计涉及数码管显示,数码管段码是相对固定的,本案例程序中提供的共阴数码管段码表SEG_CODE将在后续案例中继续使用。
① 仍使用程序中提供的共阴数码管段码表,在单个共阳数码管上滚动显示数字0~9。
② 将共阴数码管段码表改为共阳数码管段码表,改写程序使其仍实现相同功能。
③ 将两只分立数码管分别连接在P1、P2端口,实现00~99的循环显示。