- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2010.5 巧用实施万用板布线——用Protel 99 SE玩转“洞洞板”
2010.5 巧用实施万用板布线——用Protel 99 SE玩转“洞洞板”
程序的原代码:
;---------------
;24小时时钟程序
;---------------
SEC DATA 30H ;定义为秒寄存器
MIN DATA 31H ;定义为分寄存器
HOUR DATA 32H ;定义为时寄存器
BCD_GE DATA 33H ;定义为个位BCD码寄存器
BCD_SH DATA 34H ;定义为十位BCD码寄存器
DSP_GE DATA 35H ;定义为个位显示位置码寄存器
DSP_SH DATA 36H ;定义为十位显示位置码寄存器
ORG 00H
AJMP MAIN
ORG 0BH
AJMP TIMEO
ORG 030H
MAIN: MOV R0,#30H;
LOOP: MOV @R0,#0;
INC R0;
CJNE R0,#37H,LOOP;以上为30H到37H寄存器清0
MOV TMOD,#01H ;定义T0为1工作方式
MOV TL0,#3CH ;
MOV TL0,#0B0H ;T0置初值
SETB EA ;打开总中断
SETB TR0 ;打开T0中断
NEXT: ACALL KEY ;调键扫描子程序
ACALL COUT ;调键值处理子程序
ACALL DISP ;调显示程序
AJMP NEXT ;
TAB: DB 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h;字段码表格
;---------------------------------
;定时中断子程序,出口值SEC,MIN,HOUR
;---------------------------------
TIMEO:PUSH PSW ;压入堆栈
PUSH ACC ;
MOV TH0,#3CH ;重赋初值
MOV TL0,#0B0H ;
INC R2 ;中断计数器加1
CJNE R2,#20,T_RET;中断计数器到20了吗?50ms
MOV R2,#0 ;中断计数器清0
INC SEC ;秒寄存器加1
MOV A,SEC ;
CJNE A,#60,T_RET ;秒寄存器到60了吗?
MOV SEC,#0 ;到了清0
INC MIN ;分寄存器加1
MOV A,MIN ;
CJNE A,#60,T_RET ;分寄存器到60了吗?
MOV MIN,#0 ;分寄存器清0
INC HOUR ;时寄存器加1
MOV A,HOUR ;
CJNE A,#24,T_RET ;时寄存器到了24没?
MOV HOUR,#0 ;时寄存器清0
T_RET:POP ACC ;弹出堆栈
POP PSW ;
RETI ;退出中断程序
;------------------------
;键扫描子程序,键值出口B
;------------------------
KEY: MOV P3,#0FFH ;P3口高电平
MOV A,P3 ;读P3口的值
CPL A ;键值取反
JNZ KK ;如A不为0有键按下则跳到键处理程序
MOV B,#0 ;否则键值为0
AJMP K_RET ;退出
KK: ACALL DISP ;调显示子程序并做为延时去抖
MOV P3,#0FFH ;P3口高电平
MOV A,P3 ;再读P3口的值
CPL A ;键值取反
JNZ KF
文档评论(0)