.
U2
D0 D1 D2 D3 D4 D5 D6 D7
3 4 7 8 13 14 17 18
D0 Q0 D1 Q1 D2 Q2 D3 Q3 D4 Q4 D5 Q5 D6 Q6 D7 Q7
2 5 6 9 12 15 16 19
1 LE1 11
OE LE
10 0
12470 5 3
11
fhg 35
12470
for(a=4;a>0;a--)
//循环延时
for(b=248;b>0;b--);
}}}
〔2〕总线法扫描数码管
《单片机技术基础教程与实践》
采用两个8D锁存器74373分时锁存段码与位码,那么可以节省I/O引脚,例如8位数码 管扫描显示可以采用10个I/O口实现。其中8位用来分时送段码与位码,另外2位用于连接 74373的锁存控制端,分别控制锁存段码与位码。
源程序如下:
#include <AT89X51.H>
unsigned char code table1[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f};
//段码,高电平有效
unsigned char code table3[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; //位码,低电 平有效
f g h
.
.
.
共阴 极
s1
s2
s3
s4
Q1
Q2
Q3
Q4
9013
9013
s5 s6
Q5
Q6
s7 s8
Q7
Q8