全球旧事资料 分类
基于C51单片机控制的数码管秒表

说明:下面是通过c语言编写的程序,数码管为共阴数码管使用的芯片有74h138译码器器
74HCT573PW芯片。
显示效果为:000000
分别是分秒百分之一秒
可用一个键控制:按一下开始计时,再按暂停,再按清零。
本代码经测试可以使用

i
cludereg51h
defi
eENABLE0
defi
eDISABLE1
defi
eDATAP0
u
sig
ed
0
u
sig
edcharabcou
t0ij0xu8
sbithc138s_e
ableP13
sbithc138s_aP10
sbithc138s_bP11
sbithc138s_cP12
sbitk1P34
u
sig
edcharcodetable共阴极0f数码管编码

0x3f0x060x5b0x4f03
0x660x6d0x7d0x0747
0x7f0x6f
89

voiddelay_msu
sig
edi
t
ms
voidchose7su
sig
edchar
um
voidchose7ssu
sig
edchar
umm
voidtimer0_i
itvoid
TMOD0X01TH06553610000256TL06553610000256ET01EA1TR01


用作数码管最初显示状态

f
voids1

forj0j8j

ifj2j5

chose7sj使能某位数码管
DATA0x40
delay_ms2

else

chose7sj
DATA0x3f
delay_ms2



voids2

timer0_i
it
fori0i10i扫描
forj0j8j
ifj2j5chose7sj
DATA0x40delay_ms2elsechose7sj
xujDATAtablexdelay_ms2

f开关
voidkey1

ifk10

delay_ms20
ifk10



if
3


0
cou
t0
b0
a0

whilek1





函数名
mai


函数功能
主函数

输入


输出




voidmai
void

while1
key1switch
case0s1
fbreakcase1
timer0_i
its2
breakcase2
TR00s2break


函数名
chose7s

函数功能
使能某个数码管

输入
数码管编号

输出




voidchose7su
sig
edchar
um
hc138s_e
ableENABLE
switch
um
case0第1个数码管hc138s_a0hc138s_b0hc138s_c0
P00x3fbreak
case1第2个数码管hc138s_a1hc138s_b0hc138s_c0
P00x3fbreak
case2第3个数码管
fhc138s_a0hc138s_b1hc138s_c0P00x40breakcase3第4个数码管hc138s_a1hc138s_br
好听全球资料 返回顶部