版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、secequ32h;秒即时时间伪指令minequ31h;分hourequ30h ;时dayequ35h;eimonequ34h;月yearequ33h;年min_1equ41h;分定时器1路、开存储单元hour_1equ42h ;时day_1equ43h ;mon_1equ44h;year_1equ45h ;min_11equ40h;分 定时器1路、关存储单元hour_11equ46h;时day_11equ47h;eimon_11equ48h;月year_11equ49h ;年org0000humpmainorg0003h ;中断转换显示年月日、into (sb4键)ljmpwb0orgooo
2、bh;计数卞断to、方式1umpttoorg0013hljmpwb1;调整时间.定时、inti (sbo键);主程序org0030hmain: movyear,#02;初始化付值movmon,#05movda£#01movhour,#00movmin,#00movsec,#00clr40h ;定时单元1路清零clr41hclr42hclr43hclr44hclr45hclr46hclr 47hclr48hclr49h;-开中断movtmod,#01h ;计数、模式 1、tomovtlo,#oboh ;100sm 计数定时movtho,#3ch ;clr p3.0mov20h,#oah
3、 ;10 次*100smsetbpto;t0为最高级setbtro;允许计数setbeto;允许to中断setbexo;允许into中断setbexi;允许int1屮断setbea ;开总中断显示、定时器启动判断loop:mov rl,#30h;存储单元mov r4,#01h;位选通mov r3,#03h;三纟ft显示next:mov azr1 ;mov b,#10 ;将存储单元转换成两高低两组的bcd码divabswap aorla,bmovp0,a;输出mov p2,r4inc r1 ;下一单元mova,r4;rla ;位移movr4,alcall de5sm ;延吋 0.5smdjnzr
4、3,next ;全扫描显示一偏;判断定时输出(只编写了一路)cjne r7,#88h,loop ;是8则开,否则、定时已关、转;开mova,yearcjne azyear_1,loop_1;年比较,不等转关mova,moncjne azmon_1zloop_1mov a, daycjne a,day_1,loop_1mov a,hourcjne a,hour_1,loop_1mov a,mincjnea,min_1,loop_1cplp3.0;关loop 1:mova,yearcjnea,year_11, loop;年比较mova,moncjnea,mon_11,loopmova, daycj
5、nea,day_11,loopmova,hourcjnea,hour_11zloopmova,mincjnea,min_11,loopcplp3.0ljmploop;-年刀日显示中断子程序wbo:pushpswpushaccpushbpush01hpush02hpush03hpush04hmovr2,#0ffh;中断扫描次数turn: movr1,#33hmovr4,#01hmovr3,#03hnext_1:mova,r1movb,#10divabswapaorla,bmovp0,amovp2,r4incr1rlamovr4zalcall de5smdjnzr3,next_1djnzr2jur
6、n ;反复显示一定时间后返回pop04hpop03hpop02hpop01hpopbpopaccpop pswreti;一计数中断服务子程序tto: pushpswpushaccpushbpush06hmovth0,#3ch;fi 装计数movtlo,#obh;djnz20h,out;转到屮断跳出pop程序mov20h,#0ah;重装:100*10=1000;-进位程序inc secmovr6,sec;cjner6,#60,out;比较movsec,#oo ;incminmovr6,mincjner6,#60,outmovmin,#00inchourmovr6,h0urcjner6,#25,o
7、utmovhour, #00incdaymovr5,moncjner5,#1,mon_22;是否1月、不是转2月movr5,daycjner5,#32,out;本刀是否益出incmonmovday#lljmpoutout:pop06hpopbpopaccpoppswretimon_22:movr5,moncjner5,#2,mon_33;是否2月、不是转3月mova,year ;判断是否瑞年movb,#4divabmova,bjnzmovcjneout_1;不是则转(a不为零则转)r5,dayr5,#30,out;如是瑞年、判断是否到29天inc monmovljmpout_1:movcjne
8、incmovljmpmon_33:day;#1outr5,dayr5,#29,out ;平年二月判断monday#1outmovcjnemovcjneincmovumpr5,monr5,#3,mon_44r5qayr5,#32,outmonday#1outmon_44:movcjnemovcjner5zmonr5,#4,mon_55r5,dayr5,#31,outinc monmovljmpmon_55:day;#1outmovcjnemovr5,monr5,#5,mon_66r5,daycjne r5,#32,outinc monmovljmpmon_66:da;#1outmovcjnemo
9、vcjner5,monr5,#6zmon_77r5zdayr5,#31,outinc monmovumpmon 77:da#1outmovr5,moncjner5,#7,mon_88movr5,daycjner5,#32,l1inc monmovdax#1li:ljmpoutmon_88:movr5,moncjner5,#8,mon_99movr5,daycjner5,#32,l2inc monmovda£#1l2:ljmpoutmon_99:movr5,moncjner5,#9zmon_00movr5,daycjner5,#31,l3inc monmovday#ll3:ljmp o
10、utmon_00:mov cjnemovcjne inc momovr5,monr5,#10,mon_aar5,dayr5,#32,l4nday#1l4:ljmpoutmon_aa:movr5,moncjner5,#11,mon_bbmovr5,daycjner5,#31zl5inc monmovda£#1l5:ljmpoutmon_bb:movr5,daycjner5,#32,l6inc yearmov mon,#1mov da£#1l6: ljmp out;-校対时间、定时调整中断wb1:push pswpushaccpushbpushoohmovp2,#00hshow
11、_1:mova,#01h;显示 1movpo,amovp2,#0ff比三组数码管都显示1路lcall read ;调用读pl 口键程序cjnea,01h,show_1;去抖后比较lcallde250sm ; 延时 250 秒cjnea,#ofbh,tttlljmpsb3_1tttl: cjnea,#ofeh,show_1ajmpshow 2;二组显示show_2:mov a,#02h;显示 2mov po,amov p2,#offh;lcall readcjnea,01h,show_2 ;去抖后比较lcall de25osm; 延吋 250 秒cjnea,#0fbh,t2;不等转去判断此时sb
12、3按了没ump sb3_2t2:cjne a,#ofeh,show_2ajmp show_3;_三组显示show_3:mov a,#03h; 显示 3mov po,amovp2,#0ffh;位码lcall readcjnea,01h,show_3;去抖后比较lcall de250sm;延时 250 秒cjnea,#0fbh,t3;不等转去判断此时sb3按了没ljmp sb3_3t3:cjne a,#ofeh,show_3ajmpshow_4;即时年单元调时、显示show 4:mova,year ;调出年单元movb,#10;bcd 转换div abswapaorla,bmovpo,a;movp
13、2,#o1h;lcallreadlcallde250smcjnea,01h,show_4;去抖cjnea,#ofeh,key2_1 ;按 sb2 转年调整ajmpmon_ch ;按sb1往下调月单元key2_1:cjnea,#ofdh,show_4lcall year_ad ;调用年调柴ajmpshow_4;mon_ch:mova,mon ;刀单元调整movb,#10div abswapaorla,bmovpo,a;movp2,#o2h;lcall readlcallde250smcjnea,01h,mon_ch ;左抖cjnea,#0feh,key2_2 ;按 sb2 转月调整ljmpday
14、_ch ;按sb1往下调日单元key2_2:cjnea,#ofdhzmon_chlcall mon_ad ;调用月调整umpmon_ch ;day_ch:mova,day ; fl单元调整movb,#10div abswapaorla,bmovpo,a;movp2,#04h;lcall readlcall de250smcjne a,01h,day_ch ;去抖cjnea,#ofeh,key2_3 ;按 sb2 转 lt调整ump 1hour_ch ;按sb1往下调吋单元key2_3:cjnea,#ofdh,day_chlcall day_ad ;调用 ii 调整ljmpday_chhour_
15、ch:mova,hour ;时单元调整movb,#10div abswapaorla,bmovpo,a;movp2,#o1h;lcall readlcallde25osmcjnea,01h,hour_ch ;去抖cjnea,#0feh,key2_4 ;按 sb2 转时调整ajmpmin_ch ;按sb1往下调分单元key2_4:cjnea,#ofdh,hour_chlcallhour_ad;调用时调整ajmphour_ch ;min_ch:mova,min;分单元调整movb,#10div abswapaorla,bmovpo,a;movp2,#o2h;lcall readlcall de25
16、0smcjnea,01h,min_ch ;去抖cjnea,#0feh,key2_5 ;按 sb2 转分调整ajmp sec_ch ;按sb1往下调秒单元key2_5:cjne a,#ofdh,min_chlcall min_ad;调用分调整ljmp min_ch;sec_ch:mova,sec ;秒单元调整mov b,#1odiv abswapaorla,bmovpo,a;movp2,#04h;lcallreadlcallde25osmcjnea,o1h,sec_ch 法抖cjnea,#0feh/key2_6 ;按 sb2 秒调整ljmpout_a ;按581跳出key2_6:cjnea,#o
17、fdh,sec_chclrsec;归零umpsec_ch ;;按sb2定时器年单元加1子程序sb3_2:ljmpshow_2 ;二路没编返回sb3_3:umpshow_3 ;三路没编返回sb3_1:mova,year_1 ;调吋年单元movb,#10div abswapaorla,bmovpo,amovp2,#o1hlcall readlcall de250smcjnea,o1h,sb3_1cjnea,#0fbh,key2_7 ;按 sb2 转年调整ljmpmon_111 ;按sb1往下调月单元key2_7:cjnea,#ofdh, sb3_1inc year_1路年单元加1movr5zyea
18、r_1cjner5,#o9,sb3_1;益出movyear_1,#oohajmpsb3_1;;刀单元加i子程序mon_111:mova,mon_1; 调时月单元显示movb,#10div abswapaorla,bmovpo,amovp2/#02hlcall readlcallde25osmcjnea,01h,mon_111cjnea,#0fbh,key2_8 ;按 sb2 转月调整ljmp day_111key2_8:cjnea,#ofdh,mon_111inc mon_1 ;1路月单元加1movr5,mon_1cjner5,#13,mon_111;益出movmon_1,#01hajmpmo
19、n.lll;转到月显;日单元加子程序day_111:mova,day_1;调时li单元显示提示movb,#10div abswapaorla,bmovpo,amovp2,#04hlcallreadlcallde250smcjnea,01h,day_lllcjnea,#0fbh,key2_9 ;按 sb2 转日调整ljmphour_111key2_9:cjnea,#ofdh,day_111inc day._1 组fl单元加1movr5zday_1cjner5,#32,day_111;益出movday_l,#01hajmpday_111;转到日显;按sb2时单元加1子程序hour_111:mova
20、,hour_1; 调时时单元显示提示movb,#10div abswapaorla,bmovpo,amovp2,#o1hlcallreadlcall de250smcjnea,01h,hour_111cjnea,#0fbh,key2_10 ;按 sb2 转吋调整umpmin_111key2_10:cjnea,#ofdh,hour_111inc hour_1movr5,hour_1cjner5,#24,hour_111;益出movhour_1,#oohajmphour_111;转到时显;分单元加1子程序min_111:mova,min_1; 调时分单元、并显示提示movb,#10div absw
21、apaorl a,bmovpo,amovp2,#o2hlcallreadlcallde250smcjnea,01h,min_lllcjnea,#0fbh,key2l ;按sb2转分调整ajmpoff_ch ;按583往下调定时:关单元key2_11:cjnea,#ofdh, min_111inc min_1 ;1路分单元加1movr5,min_1cjner5,#60,min_lll;益处movmin_l,#00hajmpmin_111;转到分显;年单元调整off_ch:mova,year_11 ;调时年单元movb,#10div abswapaorla,bmovpo,amovp2,#o1hlc
22、all readlcallde25osmcjnea,01h,off_chcjnea,#0fbh,key2_f7 ;按 sb2 转年调整umpmon_off ;按sb1往下调刀单元key2_f7:cjnea,#ofdh,off_chinc year_11 ; 1路年单元加1movr5,year_11cjner5,#09,off_ch;益出movyear_11,#oohajmpoff_ch ;;-月单元加1子程序mon_off:mova,mon_11; 调时月单元显示movb,#10div abswapaorla,bmovpo,amovp2,#o2hlcallreadlcallde25osmcjn
23、ea,01h,mon_offcjnea,#0fbh,key2_f8 ;按 sb2 转月调整ljmpday_offkey2_f8:cjnea,#ofdh,mon_offinc mon_11 ;1路月单元加1movr5,mon_11cjner5,#13,mon_off;益出movmon_11z #01hajmpmon_off;转到刀显;日单元加1子程序day_off:mova,day_11; 调吋日单元显示提示movb,#10div abswapaorlazbmovpo,amovp2,#04hlcall readlcallde25osmcjnea,01h,day_offcjnea,#0fbh,ke
24、y2_f9 ;按 sb2 转 口调整ljmphour offkey2 f9:cjnea,#ofdh,day_offinc day_11 ;1组日单元加1movr5,day_11cjner5,#32,day_off;益出movday_llz#01hajmpday_off ;转到口显;按sb2时单元加1子程序hour_off:mova,hour_11; 调时时单元显示提示movb,#10div abswapaorla,bmovpo,amovp2,#o1hlcallreadlcallde25osmcjnea,01h,hour_offcjnea,#0fbh,key2_f10 ;按 sb2 转时调整lj
25、mpmin_offkey2_f1o:cjnea,#ofdh,hour_offinc hourjllmovr5,hour_11cjner5,#24,hour_off;益出movhour_11,#oohajmphour_off;转到吋显;-分单元加1子程序min_off:mova,min_11; 调时分单元、并显示提示movb,#10div abswapaorla,bmovpo,amovp2,#o2hlcallreadlcallde250smcjnea,01h,min_offcjnea,#ofbh,key2_f11 ;按 sb2 转分调整umpon_1 /sb3往下调定时:开与关key2_f11:cjnea,#ofdh, min_offinc min11 ;1路分单元加1movr5,min_11cjner5,#60,min_off;益处movmin_llz#00hljmpmin_off;转到分显开、关定时on_1: cjnea,#ofbh,min_offki:mova,#88hmovr7,amovpo,amovp2,#offh;三组都显示开lcallreadlcallde25osmcjnea,01hzon_1法抖后比较cj
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 蜂媒授粉员岗前技术综合考核试卷含答案
- 搪瓷坯体制作工安全检查知识考核试卷含答案
- 燃气储运工诚信道德模拟考核试卷含答案
- 电力通信运维员安全规程竞赛考核试卷含答案
- 护理中的康复护理与护理技术
- 护理教育中的护理案例分析
- 基础护理学第七章:伦理与法律
- 荷载传递梁刚度对木框架剪力墙受力性能影响的深度试验剖析
- 药品包装材料中可提取物与浸出物检测及风险评估的深度剖析
- 荣格原型理论的深度剖析与演进解读
- 电子设备装接工职业技能资格知识考试题与答案
- 2025年全椒县人民医院面试题库及答案
- 助贷公司运营管理制度
- 脑卒中社区康复阶梯式个案管理实践
- 面点厨师培训教程课件
- 黑龙江省哈尔滨市2025年中考语文真题试卷附真题答案
- T-CAMDI 135-2024 输液、输血器具用共聚聚酯(PCTG)专用料
- 上海高校毕业生登记表(本专科生)
- 假期安全教育课件-1
- 2025年盐城市中考物理试题卷(含答案及解析)
- 2026年高考物理复习新题速递之热学
评论
0/150
提交评论