郑重声明,请不要复制粘贴代码,第一可能会被网页专制标点符号,导致编译报错,其次复制粘贴达成的效果,可能会让你产生一种我会了的错觉。
本章我们的主要内容是静态数码管和动态数码管的编程,主要内容在程序中讲解,同时会复习一下上一章定时器的内容。
共阴/共阳数码管
首先我们先来了解一下数码管的工作原理,我们普遍将数码管分为两种一种是共阴数码管一种是共阳数码管(我们使用的是两个4位八段共阳数码管)。
所谓八段数码管就是八个发光二极管组成的如上图的结构形态,共阴数码管就是八个LED阴极相连组成公共端接GND,共阳数码管就是八个LED阳极相连组成公共端接VCC。
我们使用的4位八段数码驱动原理也是如此其中八个管脚作为(A,B,C,D,E,F,G,DP)的驱动端口,选择哪一段数码管亮或不亮,我们称之为数码管段选,还有4个管脚作为选择四位数码管中的哪一位亮或不亮的驱动端口,也就是四个公共端,我们称之为数码管位选。
驱动原理
下面我们来看一下我们开发板的驱动原理图是如何驱动这两个四位共阳数码管的。
图中a1、b1……dp1就是数码管的段选端口,com1、com2……com8就是数码管的位选端口,我们可以看到,蓝桥杯开发板的数码管段选和位选都是通过单片机的P0寄存器来驱动的,但是因为P0不能同一时刻既做段选又做位选,所以这里就要通过我们第二章所讲的内容来操作在一个很短的时间内在段选和位选之间切换选择操作。
静态数码管
数码管所有公共端接GND或VCC,在该开发板上不是接GND和VCC而是接在两个573三态锁存器上,全亮全灭不单独选择端口操作。 优点:不闪烁,亮度高。 缺点:占用端口多。
示例程序:
动态数码管
数码管公共端依次扫描接通。 优点:占用端口少。 缺点:摄像,拍照时闪烁,在同样电压下与静态相比,亮度较低。
示例程序:
本章的内容到这里就结束了,最后给大家留一个题目,可以回去思考,后面有时间也会更新讲解,使用单片机定时器制作一个以00-00-00为初始可以通过四个独立按键进行时间修改的24小时制时钟。
联系博主
领取专属 10元无门槛券
私享最新 技术干货