
声明:本篇知识梳理适合4~8年级的学生,学习STEAM科技编程的有基础的学生。可用于喜欢STEAM的学生自学,也适用于家长带孩子探索学习STEAM。
单位数码管是一种电子显示器件,用于显示数字、字符等,广泛应用于各类电子设备和仪器中。单位数码管原理通常指的是单个数码管的使用方法和基本原理。单个数码管由七个发光二极管(LED)组成,通常称为七段显示,可以显示0到9的数字,也可以显示A~F简单字母。每个发光二极管代表数码管的一个段,通过控制这些段的亮灭来显示不同的数字。

单位数码管实物图
基本原理 数码管分为共阴极和共阳极两种类型:
共阴极:所有发光二极管的阴极连接在一起,通过控制阳极的电平来点亮或熄灭每个段。
共阳极:所有发光二极管的阳极连接在一起,通过控制阴极的电平来点亮或熄灭每个段。

数码管内部电路结构原理图
显示数字的方法 要显示不同的数字,只需点亮相应的段,熄灭其他段。例如,要显示数字“6”,结合上图原理可以知道,只需点亮a、f、e、d、c、g段,熄灭b和dp段即可。 驱动方法 在实际应用中,根据原理图设计对应的工作电路即可。需要注意的是,LED一般供电电压2~3V,对于5V供电的微处理器,LED需要电阻保护(500欧姆左右普通电阻即可),防止电流过大烧坏数码管。

工业设计中数码管工作电路
但是很显然,这样的电路设计较为复杂。我们需要对电路进行优化和简化,以课堂上我们采用的共阴极数码管为例,我们可以考虑采用共阴极共用保护电阻的方法简化电路:

公共保护电阻优化数码管电路
这样的电路设计,在通常情况下能够满足我们的应用需求。根据简化后的电路搭建电路即可:

数码管电路接线图
连接电源:根据数码管的类型(我们课堂用的共阴极),将公共极(共阴极COM)连接到相应的电源上(共阳极接+5V,共阴极接地线GND)。
连接I/O端口:将数码管的各个段码连接到Arduino Nano板的I/O端口上,课堂上采用的数字口D2~D8引脚,分别连接数码管的a~g接口。由于单位数码管种我们用不到小数点,所以无需接dp引脚。
编写程序:根据所需的显示内容,编写Arduino程序,通过控制I/O端口的输出状态,来控制数码管的显示。基础版程序:适合刚入门的学生,采用最基本的控制方式,一个数字一个数字编写。

Arduino初始化程序

Arduino主程序
高阶版程序:适合有基础的学生,采用二维数组的控制方式,一次性完成所有数字编码。

数码管显示0~9,A~F
值得注意的是,这里不仅显示出了0~9,同时也把AbCdEF字母进行了编码。可以看出,用高阶的思维和方法可以让程序更简洁,多显示几个字母只需要简单修改几个数字就实现了。希望孩子们能够体会程序的精髓。加油!