1.硬件设计
数码管实验硬件设计中使用到的数码管是共阳极类型的。因为数码管的片选引脚“1/2/3/4”都通过
PNP 三极管来提供高电平,为什么要选用PNP 三极管和共阳极数码管的组合?因为共阳极数码管共阳端直
接接电源,不用接上来电阻,而共阴的则要,如此一来共阳极数码管亮度较高。再者用单片机控制时,单
片机上电和复位后所有的I/O 口都是高电平,只要单片机一上电,电路经过数码管的位流向共阴至地,耗
电大,不节能,所以又每次编写代码时都得把位控制端赋予低电平,太过麻烦,这样共阳极数码管就是好,
因为共阳极端要接电源,而位控制口又是高电平,则数码管不会亮,省去了每次编程赋值的麻烦。
P0.0~P0.3 作为共阳极数码管的为控制口,P0.4 和P0.5 作为共阳极数码管的字型码输入口。
2.软件设计
#include "stc.h"
#define HIGH 1
#define LOW 0
#define LS164_DATA(x) {if((x))P0_