首先看看跟数码管控制息息相关的138译码器和74HC245
138译码器通过三个端口控制八个端口,如上图,由高到低 P24.P23.P22的三个二进制数转换成十进制,控制对应的Y借口,进而控制位选,74HC245的主要作用是加强驱动能力,因为数码管是共阴极结构,由高电荷控制亮灭驱动能力较弱。
下图是整体
晶体管编码
要实现静态晶体管:
假设要在LED6上显示数字6,首先在138译码器上LED6对应Y5,Y5=5,十进制转二进制对应101,其中位权从高到低依次是2的2次方,2的1次方,2的0次方,1*4+0*2+1*1=5.这样就完成了位选,数码管是共阴极结构,结合原理图写出对应P07~P00的数字0111 1101如上图应是6这样段选也确定下来了
数组和函数是接下来要用到的知识点
加入短暂或者不加延时,实现动态数码管
出现残影错位,原因是在一次位选段选结束进入上一次时上次段选信号会混入下次位选导致错位
在函数末尾加上复位代码消影