用8个240欧的电阻作为上拉电阻。
电路图如下:位控端用74HC573来驱动
U1
19XTAL118XTAL2
9RST
293031
PSENALEEA
12345678
P10P11P12P13P14P15P16P17
AT89C51
P00AD0P01AD1P02AD2P03AD3P04AD4P05AD5P06AD6P07AD7
3938373635343332
P20A8P21A9P22A10P23A11P24A12P25A13P26A14P27A15
2122232425262728
P30RXDP31TXDP32INT0P33INT1
P34T0P35T1P36WRP37RD
1011121314151617
5V
R2R3R4R5R6R7R8R9
10k10k10k10k10k10k10k10k
U2
23456789
D0D1D2D3D4D5D6D7
Q0Q1Q2Q3Q4Q5Q6Q7
1918171615141312
111
LEOE
74HC573
图24
6
f25整体电路图
图25
7
5V
R2R3R4R5R6R7R8R9
10k10k10k10k10k10k10k10k
C1
U1
5v
19XTAL1
X1
18XTAL2
C2
9RST
P00AD0P01AD1P02AD2P03AD3P04AD4P05AD5P06AD6P07AD7
3938373635343332
C3
5V
293031
PSENALEEA
R1
P20A8P21A9P22A10P23A11P24A12P25A13P26A14P27A15
2122232425262728
12345678
P10P11P12P13P14P15P16P17
P30RXDP31TXDP32INT0P33INT1
P34T0P35T1P36WRP37RD
1011121314151617
AT89C51
U2
23456789
D0D1D2D3D4D5D6D7
Q0Q1Q2Q3Q4Q5Q6Q7
1918171615141312
111
LEOE
74HC573
f3程序设计
31程序流程框图
按下一次开始计数
设定初值
判断按键
按下两次
按下三次
停止计数
恢复归零
显示数据
超过100
恢复初始化
图31
8
f32显示程序流程图
开始初始化显示参数取第一位待显数取下一位显示数据输出位码到P2口取显示数据查表转换代码到P0口
延时两位显示完了?
图32
9
f33汇编源程序
NTAEQU30HNTBEQU31HKEYEQU32HBUTBITP16FLAGBITP30ORG00HLJMPSTARTORG0BHLJMPINTT0STARTMOVKEY00HMOVR300HMOVP210HMOVAR3MOVB10DIVABMOVDPTRTABLEMOVCAADPTRMOVP0AACALLDELAY10MSMOVABMOVP220HMOVDPTRTABLEMOVCAADPTRMOVP0AMOVTMOD01HSETBET0SETBEAWTJBBUTDKNJBFLAGDKNLCALLDELAY10MSJBBUTDKNINCKEYSETBFLAGMOVAKEYCJNEA01KN1SETBTR0MOVTH09EHMOVTL058HMOVNTA00HMOVNTB00H
10
fLJMPDKNKN1CJNEA02HKN2CLRTR0LJMPDKNKN2CJNEA03HDKNMOVR300HMOVP210HMOVAR3MOVB10DIVABDAAMOVDPTRTABLEMOVCAADPTRMOVP0AACALLDELAY10MSMOVABDAAMOVP220HMOVDPTRTABLEMOVCAADPTRMOVP0AMOVKEY00HDKNJBBUTWT2LJMPDONEWT2CLRFLAGLJMPDONEDONEMOVP210HMOVAR3MOVB10DIVABMOVDPTRTABLEMOVCAADPTRMOVP0AACALLDELAY10MSMOVABMOVP220HMOVDPTRTABLEMOVCAADPTRMOVP0AACALLDELAY10MSLJMPWTDELAY10MSMOVR620D1MOVR720DJNZR7
11
fDJNZR6D1RETINTT0MOVTH09EHMOVTL058HINCNTAMOVANTACJNEA40NEXTMOVNTA00HINCR3MOVAR3CJNEA100NEXTMOVR300HNEXTRETITABLEDB0C0H0F9H0A4H0B0H99H92H82H0F8H80H90HEND
12
f4调试说r