实验一:驱动 7 段 LED 数码管实验
7 段 LED 数码管上所显示的数字,从 0 开始,每隔 0.5s 增加 1,直到 9 之后,再从 0
开始,如此循环不停。
19
18
9
29
30
31
1
2
3
4
5
6
7
8
U?
XTAL1
XTAL2
RST
PSEN
ALE
EA
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
AT89C51
R0
R1
R2
220
R3
220
R4
220
R5
220
R6
220
R7
220
220
220
P0.0/AD0
P0.1/AD1
P0.2/AD2
P0.3/AD3
P0.4/AD4
P0.5/AD5
P0.6/AD6
P0.7/AD7
P2.0/A8
P2.1/A9
P2.2/A10
P2.3/A11
P2.4/A12
P2.5/A13
P2.6/A14
P2.7/A15
P3.0/RXD
P3.1/TXD
P3.2/INT0
P3.3/INT1
P3.4/T0
P3.5/T1
P3.6/WR
P3.7/RD
39
38
37
36
35
34
33
32
21
22
23
24
25
26
27
28
10
11
12
13
14
15
16
17
//=========7 段 LED 数码管实验============
#include
#define SEG P0
char TAB[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90} ;
void delay1ms(int) ;
main()
{
unsigned char i;
while(1)
for(i=0;i<10;i++)
{
SEG=TAB[i];
delay1ms(500);
}
}
void delay1ms(int x)
{
int i,j;
for(i=0;i