全球旧事资料 分类
来进行秒表功能。程序中需要设置秒表的具体显示方法。如图33
图33秒表中断程序流程图
fB按键程序流程
图34为时钟和闹钟的调节程序中通过扫描来判断按键是否按下进行时间和闹钟的调节。
f图34按键程序流程图
图35为进入中断和清零图程序中通过扫描来判断按键是否按下进行执行相应的中断来事实现相应的功能。
f
f图35中断和清零程序流程图
33控制电路的C语言源程序
根据流程图经过认真分析得出控制电路的源程序如下
i
cludereg51h
defi
eucharu
sig
edchar
defi
eui
tu
sig
edi
tdefi
edelay_time3宏定义
uchar
kdat00000000ui
ttcou
ttu
uchar
dat100000021uchar
dat200000000uchar
alarms00000000uchar
dis_bit0x800x400x200x100x080x040x020x01
u
sig
edcharcodeSEG7110xC00
0xF91
0xA42
0xB03
0x994
0x925
0x826
0xF87
0x808
0x909
0xBF
数字显示数组
sbitmiaobiao1P10sbittmi
uteP11
sbitthourP12
fsbitmiaobiao2P13sbitalarmP14
sbitP0_0P00
sbitP1_5P15
sbitP1_6P16
sbitP1_7P17端口定义
ucharms0
ucharflag0
ucharsec0
ucharmi
it0
structtimeucharseco
duchar
mi
uteuchar
hourtime1
uchar
i
voiddelay
while

fori120i0i
延时子程序
voidmodifyvoid
EA0
ifthour0
ifflag0
dat16delay280
ifdat169
dat160
dat17
else
ifdat171dat163
dat170dat160
ifflag1
falarms6delay300
ifalarms69
alarms60alarms7
ifalarms72
alarms70

dat6alarms6
dat7alarms7

iftmi
ute0
ifflag0
dat13delay280
ifdat39
dat14dat130
ifdat145
dat140

ifflag1
alarms3
delay300
ifalarms39
alarms4alarms30
ifalarms45
alarms40

dat3alarms3
dat4alarms4
f
ifmiaobiao10TR00ET00TR11ET11
ifmiaobiao20
TR01ET01TR10ET10
dat200
dat210
dat230
dat240
dat260
dat270
ms0
sec0
mi
it0
ifP1_50
TR00ET00TR10ET10
ifalarm0
TR00ET00TR10ET10flag1
dat00
dat10
dat210
dat30
dat40
dat510
dat60
dat70
EA1
按键扫描
voidi
itvoid
TMOD0x11
TH00xDB
fTL00xFF
TH10xDB
TL10xFF
ET01
10ms
ET11
TR11
TR01
tcou
t0
ms0
sec0
mi
it0
EA1
初始化
voidtestvoidfork0k8k
P3dis_bitk
P2SEG7datkdelay1
P30X00
数字显示
voidmai
i
it
delay10
while1
modify
test
主函数
Voiddiplayi
terrupt1
ET00
TR00
TH00xDB
TL00xff
TR01
tcou
t
iftcou
t100
time1seco
d
tcou
t0
fdat10time1seco
d10
dat11time1seco
d10
iftime1seco
d60
dat1r
好听全球资料 返回顶部