基于汇编语言编写的数码管显示时钟程序.doc_第1页
基于汇编语言编写的数码管显示时钟程序.doc_第2页
基于汇编语言编写的数码管显示时钟程序.doc_第3页
基于汇编语言编写的数码管显示时钟程序.doc_第4页
基于汇编语言编写的数码管显示时钟程序.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

_如图用汇编语言编写的可调时钟(用定时器定时,不精准),此程序只是提供一个idea操作:最上面的键是开始调整键,后面依次为时分秒的切换键、加键、减键、调整完成键。程序如下:SHI EQU R2FEN EQU R3MIAO EQU R4CHANGE EQU R5ORG 00HLJMP MAINORG 000BH/中断入口LJMP ITORORG 60HMAIN:MOV TMOD,#01H /初始化定时器MOV TH0,#3CHMOV TL0,#0B0H/50mSSETB ET0SETB EACLR F0 /键盘设定标志位MOV R0,#00HMOV R1,#00HMOV P0,#0FFHMOV SHI,#00HMOV FEN,#00HMOV MIAO,#00HMOV CHANGE,#00HSETB TR0/打开定时器M1: LJMP KEY/键盘扫描M2: LCALL INIT /动态显示LJMP M1INIT:MOV A,SHI/显示函数MOV B,#0AHDIV ABMOV 40H,AMOV 41H,B CLR P2.0CLR P2.1CLR P2.2JNB F0,O1CJNE CHANGE,#00H,O1CJNE R1,#0,O1MOV P1,#00HCPL P2.7LCALL DELAYLJMP O10O1:MOV DPTR,#TABLEMOV A,40HMOVC A,A+DPTRMOV P1,ALCALL DELAYMOV P1,#00HO10:CLR P2.0CLR P2.1SETB P2.2JNB F0,O2CJNE CHANGE,#00H,O2CJNE R1,#0,O2MOV P1,#00HLCALL DELAYLJMP O20O2:MOV DPTR,#TABLEMOV A,41HMOVC A,A+DPTRMOV P1,ALCALL DELAYMOV P1,#00HO20:CLR P2.0 /显示小时SETB P2.1CLR P2.2MOV P1,#040HLCALL DELAY /显示分隔符 MOV P1,#00HMOV A,FENMOV B,#0AHDIV ABMOV 40H,AMOV 41H,BCLR P2.0SETB P2.1SETB P2.2JNB F0,O3CJNE CHANGE,#01H,O3CJNE R1,#0,O3MOV P1,#00HLCALL DELAYLJMP O30O3:MOV DPTR,#TABLEMOV A,40HMOVC A,A+DPTRMOV P1,ALCALL DELAYMOV P1,#00HO30:SETB P2.0CLR P2.1CLR P2.2JNB F0,O4CJNE CHANGE,#01H,O4CJNE R1,#0,O4MOV P1,#00HLCALL DELAYLJMP O40O4:MOV DPTR,#TABLEMOV A,41HMOVC A,A+DPTRMOV P1,ALCALL DELAYMOV P1,#00H /显示分钟O40:SETB P2.0CLR P2.1SETB P2.2MOV P1,#040HLCALL DELAY /显示分隔符MOV P1,#00HMOV A,MIAOMOV B,#0AHDIV ABMOV 40H,AMOV 41H,BSETB P2.0SETB P2.1CLR P2.2JNB F0,O5CJNE CHANGE,#02H,O5CJNE R1,#0,O5MOV P1,#00HLCALL DELAYLJMP O50O5:MOV DPTR,#TABLEMOV A,40HMOVC A,A+DPTRMOV P1,ALCALL DELAYMOV P1,#00HO50:SETB P2.0SETB P2.1SETB P2.2JNB F0,O6CJNE CHANGE,#02H,O6CJNE R1,#0,O6MOV P1,#00HLCALL DELAYLJMP O60O6:MOV DPTR,#TABLEMOV A,41HMOVC A,A+DPTRMOV P1,ALCALL DELAYMOV P1,#00H /显示秒O60:RETKEY: MOV A,P0XRL A,#0FFHCJNE A,#00H,A1LJMP M2A1: LCALL DELAY1MOV A,P0XRL A,#0FFHCJNE A,#00H,KEY1LJMP M2KEY1: CJNE A,#80H,KEY2 /按键1、开始键SETB F0/CLR TR0JNB P0.7,$LJMP M2KEY2: CJNE A,#40H,KEY3 /按键2、切换键JNB F0,B1 INC CHANGEMOV A,CHANGECJNE A,#03,B2MOV CHANGE,#00HB1: JNB P0.6,$LJMP M2B2: JNB P0.6,$LJMP M2KEY3: CJNE A,#20H,KEY4 /按键3、加键JNB F0,C1MOV A,CHANGECJNE A,#00,C2INC SHICJNE SHI,#24,C1MOV SHI,#00H C1: JNB P0.5,$LJMP M2C2: CJNE A,#01,C4INC FENCJNE FEN,#60,C3MOV FEN,#00HC3: JNB P0.5,$LJMP M2C4: INC MIAOCJNE MIAO,#60,C5MOV MIAO,#00HC5: JNB P0.5,$LJMP M2KEY4: CJNE A,#10H,KEY5 /按键4、减键JNB F0,D1MOV A,CHANGECJNE A,#00,D2CJNE SHI,#00H,D0MOV SHI,#24D0:DEC SHID1: JNB P0.4,$LJMP M2D2: CJNE A,#01,D3CJNE FEN,#00H,D00MOV FEN,#60D00:DEC FENJNB P0.4,$LJMP M2D3: CJNE MIAO,#00H,D000MOV MIAO,#60D000:DEC MIAOJNB P0.4,$LJMP M2KEY5: JNB F0,D0000 /按键5、停止键CLR F0 MOV R0,#00HD0000: JNB P0.3,$LJMP M2ITOR:MOV TH0,#3CHMOV TL0,#0B0HINC R0JNB F0,E0CPL P2.6INC 44HMOV A,44HCJNE A,#5,RETURNMOV 44H,#00HLJMP E1E0:CJNE R0,#19,RETURN MOV R0,#00HJB F0,E1 INC MIAOCJNE MIAO,#60,RETURNMOV MIAO,#00HINC FENCJNE FEN,#60,RETURNMOV FEN,#00HINC SHICJNE SHI,#24,RETURNMOV SHI,#00HLJMP RETURNE1: INC R1CJNE R1,#2,RETURNMOV R1,#0RETURN:RETIDELAY: MOV R7,#255DJNZ R7,$RETDELAY

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论