秒表”,可显示时间为0059秒。并设计一个“增一”按键,一个“减一”按键,一个“清零”按键,一个“自动增一”按键。按键说明:按“增一”按键,系统加一计数,数码管显示数字加一;按“减一”按键,系统减一计数,数码管显示数字减一;按“清零”按键,系统清零,数码管显示“00”;按一下“自动加一”按键,系统自动进行加一循环,并在数码管上显示,再按一下“自动加一”按键,系统会暂停自动加一循环,数码管显示的数字将停留在当前显示值上。
2、实验要求了解AT89c52芯片的的工作原理和工作方式,使用该芯片对LED数码管进行显示控制,实现用单片机的端口控制数码管,显示数字,并能用按键实现秒表增一、减一、清零复位功能。画出使用单片机控制LED数码管显示的电路图,并编程完成软件部分,最后调试秒表的增一、减一、清零、自动加一。
4
f三、仿真原理图
RP1
RESPACK8
1
1
3
67
23456789
5
8
U2
1223344556767889111D0D1D2D3D4D5D6D7dulaLEOE74HC573Q0Q1Q2Q3Q4Q5Q6Q719a18b17c16d15e14f13g12habcdefgabcdefg
2
U1
19XTAL1P00AD0P01AD1P02AD2P03AD3P04AD4P05AD5P06AD6P07AD7P20A8P21A9P22A10P23A11P24A12P25A13P26A14P27A15P30RXDP31TXDP32INT0P33INT1P34T0P35T1P36WRP37RD13923833743635534633732
18
XTAL2
9
RST
293031
PSENALEEA
21dula22wela23242526272810111213141516171234234556677889
8
4
U3
D0D1D2D3D4D5D6D7LEOE74HC573Q0Q1Q2Q3Q4Q5Q6Q71918171615141312
PORT11PORT22PORT33PORT445678
P10T2P11T2EXP12P13P14P15P16P17AT89C52
wela111
R1
10k
R2
10k
R3
10k
R4
10kPORT1
PORT2
PORT3PORT4
5
f四、系统程序
i
cludereg52hdefi
eucharu
sig
edchardefi
eui
tu
sig
edi
tsbitdulaP20sbitwelaP21sbitkey1P10加1sbitkey2P11减1sbitkey3P12清0sbitkey4P13按下自动加1,再按下停止保持ucharcodetable0x3f0x060x5b0x4f0x660x6d0x7d0x070x7f0x6f0x770x7c0x390x5e0x790x71uchar
umvoiddisplayucharvoiddelayui
txmsui
txyforxxmsx0xfory110y0yvoidkeysca
ifkey10delay10ifkey10
umif
um60
um0whilekey1ifkey20delay10ifkey20if
um0
um60
um
6
fwhilekey2ifkey30delay10ifkey30
um0whilekey3ifkey40delay10ifkey40whilekey4TR0TR0voidmai
TMOD0x01TH06553650000256TL06553650000256EA1ET01while1keysca
display
umvoiddisplayuchar
um1ucharshigeshi
um110ge
um110dula1P0tableshidula0
7
fP00xffwela1P00xfewela0r