怎样修改代码让数码管亮一个数字

img

img

img

看电路图,这个是共阴的数码管,应该让那些ADDR只有一个为0, 其余是1

连的是138译码器,亮一个数字应该是静态数码管显示,
138译码器
将一个3位的十进制数转换成8位二进制数
51单片机基本都是推挽输出,基本都是共阴数码管,能操作的就是ADDR01 2这三个
从ADDR01 2:
111是第一个数码管,110是第二个,101是第三个,100是第四个以此类推
这是数码管的段位显示表:0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F(0 9)
示例一下如第一个显示6:
ADDR0=1;ADDR1=1;ADDR2=1;P0=0x3F;
(P0是DB0~7连的那个,可能不是这个,你截的屏不行,看不见了)

数码管实际上就是点灯,看数码管原理图,A到H是控制数码管上的小灯,1到4是位选(就是选择哪一位的数码管亮)