一个成功的万年历汇编程序,显示日期时间和温度_第1页
一个成功的万年历汇编程序,显示日期时间和温度_第2页
一个成功的万年历汇编程序,显示日期时间和温度_第3页
一个成功的万年历汇编程序,显示日期时间和温度_第4页
一个成功的万年历汇编程序,显示日期时间和温度_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

-.zORG0000HLJMPMAINORG001BHLJMPSUBT1ORG0030HMAIN:MOV50H,*1H//显示缓冲区MOV51H,*2HMOV52H,*3HMOV53H,*4H//显示缓冲区MOV54H,*5H//显示缓冲区MOV55H,*6HMOV56H,*7HMOV57H,*8H//显示缓冲区MOV58H,*0H//S4MOV59H,*0H//S1MOV5AH,*0H//0表示0~9键按下,1~6表示A~F键按下,用于按键散转MOV5BH,*0H//0~F键值,0F0H表示无键按下MOV5CH,*21H//秒MOV5DH,*43H//分MOV5EH,*65H//时MOV5FH,*41H//日MOV60H,*02H//月MOV61H,*0H//年MOV62H,*22H//温度MOV63H,*22H//温度SETBPSW.1MOVTL1,*0FDHMOVTH1,*0FFHMOVTMOD,*00HMOVTCON,*04HMOVIP,*08HMOVIE,*88HSETBTR1MJMP:JNBPSW.1,MJMP1LCALLLED4RDELAYSJMPMJMP2MJMP1:LCALLLED8DELAYMJMP2:LCALLKEYLCALLKEYPRESJMPMJMPKEYPRE:MOV5BH,ACJNEA,*0F0H,KEYPRE1SJMPKEYPRE2KEYPRE1:MOV5AH,*0ADDA,*0SUBBA,*10JCKEYPRE2INCAMOV5AH,AKEYPRE2:MOVDPTR,*PTAB1MOVA,5AH MOVB,*3 MULAB MOVR1,A MOVA,B ADDA,DPH MOVA,R1 JMPA+DPTRKEYPRE0:RETPTAB1:LJMPKEYPRE3PL001:LJMPPL001PPL002:LJMPPL002PPL003:LJMPPL003PPH001:LJMPPH001PPH002:LJMPPH002PPH003:LJMPPH003PLJMPKEYPRE0KEYPRE3:MOVA,5BHCLRCSUBBA,*0F0HJZKEYPRE4mov53h,52hmov52h,51hmov51h,50hmov50h,5BHKEYPRE4:CLRPSW.1LJMPKEYPRE0PL001P:MOVA,5BH//S1键CJNEA,*0AH,PL001ENDMOVA,58HJZPL001ENDLCALLMS1KPL001END:LCALLS1MOVBUFCLRPSW.1LJMPKEYPRE0PL002P://MOVDPTR,*L002//LCALLMOV*SBUFMOVA,5BHCJNEA,*0BH,PL002ENDMOVA,59HJZPL002ENDMOVA,58HCJNEA,*01H,PL002P2MOVA,*5BHADDA,59HMOVR0,AINCR0PL002P2:CJNEA,*02H,PL002P3MOVA,*5EHADDA,59HMOVR0,AINCR0PL002P3:CJNEA,*03H,PL002ENDPL002END:LCALLS1MOVBUFCLRPSW.1LJMPKEYPRE0PL003P:MOVDPTR,*L003LCALLMOV*SBUFLCALLADC0809SETBPSW.1LJMPKEYPRE0PH001P://MOVDPTR,*H001//LCALLMOV*SBUFMOVA,5BHCLRCSUBBA,*0F0HJZPH001ENDLCALLMS4KPH001END:LCALLYDMOVBUFCLRPSW.1LJMPKEYPRE0PH002P:MOVDPTR,*H002LCALLMOV*SBUFMOVDPTR,*PWM14//E键设定;占空比1:4LCALLMOV*PMWBUFLJMPKEYPRE0PH003P:MOVDPTR,*H003LCALLMOV*SBUFLCALLGET_TEMPSETBPSW.1LJMPKEYPRE0SUBT1:PUSHACC//PUSHPSWMOVTL1,*0fdHMOVTH1,*0FFHCPLP1.3//产生定时脉冲LP4:POPPSWPOPACCRETILED:MOVP0,*0FFHMOVP3,R2LCALLDELAYMOVA,R0MOVR1,ALED1:MOVA,R1MOVDPTR,*TABLEMOVCA,A+DPTRMOVP0,AMOVP3,R2LCALLDELAYRETLED2DELAY:movR0,*4fhmovR2,*80hmovR3,*02HLED2DELAY1:movA,R2RLAmovR2,AINCR0LCALLLEDDJNZR3,LED2DELAY1RETLED4LDELAY:MOVP0,*00HMOVP3,*0FFHMOVR0,*4FHMOVR2,*0F7HMOVR3,*04HLED4LDELAY1:MOVA,R2RLAMOVR2,AINCR0LCALLLEDDJNZR3,LED4LDELAY1RETLED4RDELAY:MOVP0,*00HMOVP3,*0FFHMOVR0,*4FHMOVR2,*07FHMOVR3,*04HLED4RDELAY1:MOVA,R2RLAMOVR2,AINCR0LCALLLEDDJNZR3,LED4RDELAY1RETLED8DELAY:MOVP0,*00HMOVP3,*0FFHmovR0,*4fhmovR2,*7fhmovR3,*08HLED8DELAY1:movA,R2RLAmovR2,AINCR0LCALLLEDDJNZR3,LED8DELAY1RETDELAY:MOVR5,*01HD0:MOVR6,*01AHD1:DJNZR6,D1DJNZR5,D0RETKEY:MOVP3,*0FFHLCALLKSJNZK1LCALLDELAYMOVA,*0F0HLJMPK5K1:LCALLDELAYLCALLKSJNZK2MOVA,*0F0HLJMPK5K2:MOVR2,*07FHMOVR4,*00HK3:MOVA,R2MOVP0,ALCALLDELAYMOVA,P0ANLA,*0FHACC.0,L1MOVA,*00HLJMPLKL1:ACC.1,L2MOVA,*01HLJMPLKL2:ACC.2,L3MOVA,*02HLJMPLKL3:ACC.3,NE*TMOVA,*03HLK:ADDA,R4PUSHACCK4:LCALLDELAYLCALLKSJNZK4POPACCK5:RETNE*T:MOVA,*4ADDA,R4MOVR4,AMOVA,R2JNBACC.4,K5RRAMOVR2,ALJMPK3KS:MOVA,*0FHMOVP0,AMOVA,P0CPLAANLA,*0FH//SWAPARETADC0809:CLRP1.0//LCALLDELAYSETBP1.0//START,ALELCALLDELAYCLRP1.0SETBP1.2ADC08P:movc,P1.2JNcADC08PSETBP1.1MOVP2,*0FFHMOVA,P2MOV62H,AANLA,*0FHMOV50H,AMOVA,62HSWAPAANLA,*0FHMOV51H,AADC08M:RETDS18SL:CLREA;使用ds1820一定要制止任何中断产生LCALLINTT;初始化ds1820MOVA,*33HLCALLWRITE;送入读ds1820的ROM命令LCALLREAD;开场读出当前ds1820序列号MOV40H,ALCALLREADMOV41H,ALCALLREADMOV42H,ALCALLREADMOV43H,ALCALLREADMOV44H,ALCALLREADMOV45H,ALCALLREADMOV46H,ALCALLREADMOV47H,ASETBEARETINTT:CLREAINTT0:CLRP1.0MOVR2,*200INTT1:CLRP1.0DJNZR2,INTT1;总线复位电平保持400usSETBP1.0;释放ds1820总线MOVR2,*30INTT4:DJNZR2,INTT4;释放ds1820总线保持60usCLRC;清存在信号ORLC,P1.0JCINTT0;存在吗?不存在则重新来MOVR6,*80INTT5:ORLC,P1.0JCINTT3DJNZR6,INTT5SJMPINTT0INTT3:MOVR2,*240INTT2:DJNZR2,INTT2SETBEARETWRITE:CLREA;向ds1820写操作命令子程序MOVR3,*8;写入ds1820的bit数,一个字节8个bitWR1:SETBP1.0MOVR4,*8RRCA;把一个字节data(A)分成8个bit环移给CCLRP1.0;开场写入ds1820总线要处于复位(低)状态WR2:DJNZR4,WR2;ds1820总线复位保持16usMOVP1.0,C;写入一个bitMOVR4,*20WR3:DJNZR4,WR3;等待40usDJNZR3,WR1;写入下一个bitSETBP1.0;重新释放ds1820总线SETBEARETREAD:CLREAMOVR6,*8;连续读8个bitRE1:CLRP1.0;读前总线保持为低MOVR4,*4NOPSETBP1.0;开场读总线释放RE2:DJNZR4,RE2;持续8usMOVC,P1.0;从ds1820总线读得一个bitRRCA;把读得的位值环移给AMOVR5,*30RE3:DJNZR5,RE3;持续60usDJNZR6,RE1;读下一个bitSETBP1.0;重新释放ds1820总线SETBEARET//温度转换和读取GET_TEMP:CLREA;使用ds1820一定要制止任何中断产生LCALLINTT;调用初使化子程序MOVA,*0CCHLCALLWRITE;送入跳过ROM命令MOVA,*44HLCALLWRITE;送入温度转换命令LCALLINTT;温度转换完全,再次初使化ds1820MOVA,*0CCHLCALLWRITE;送入跳过ROM命令MOVA,*0BEHLCALLWRITE;送入读温度暂存器命令LCALLREADMOV62H,A;读出温度值低字节存入R7LCALLREADMOV63H,A;读出谩度值高字节存入R6SETBEAGET_TEMP1:RETMOV*SBUF:MOVR7,*3MOVA,R7MOVCA,A+DPTRMOV50H,ADECR7MOVA,R7MOVCA,A+DPTRMOV51H,ADECR7MOVA,R7MOVCA,A+DPTRMOV52H,ADECR7MOVA,R7MOVCA,A+DPTRMOV53H,ARETMOV*PMWBUF:MOVR7,*1MOVA,R7MOVCA,A+DPTRMOV58H,ADECR7MOVA,R7MOVCA,A+DPTRMOV57H,ARETMS4K:INC58HMOVA,58HCJNEA,*04H,MS4K1MOV58H,*01HMS4K1:RETYDMOVBUF:MOVA,58HCJNEA,*01H,YDMOVBUF2MOVR0,*5CHMOVA,R0ANLA,*0FHMOV50H,AMOVA,R0ANLA,*0F0HSWAPAMOV51H,AMOV52H,*13HINCR0MOVA,R0ANLA,*0FHMOV53H,AMOVA,R0ANLA,*0F0HSWAPAMOV54H,AMOV55H,*13HINCR0MOVA,R0ANLA,*0FHMOV56H,AMOVA,R0ANLA,*0F0HSWAPAMOV57H,ASJMPYDMOVBUF4YDMOVBUF2:CJNEA,*02H,YDMOVBUF3MOVR0,*5FHMOVA,R0ANLA,*0FHMOV50H,AMOVA,R0ANLA,*0F0HSWAPAMOV51H,AMOV52H,*13HINCR0MOVA,R0ANLA,*0FHMOV53H,AMOVA,R0ANLA,*0F0HSWAPAMOV54H,AMOV55H,*13HINCR0MOVA,R0ANLA,*0FHMOV56H,AMOVA,R0ANLA,*0F0HSWAPAMOV57H,ASJMPYDMOVBUF4YDMOVBUF3:MOVR0,*62HMOVA,R0ANLA,*0FHMOV50H,AMOVA,R0ANLA,*0F0HSWAPAMOV51H,AINCR0MOVA,R0ANLA,*0FHMOV52H,AMOVA,R0ANLA,*0F0HSWAPAMOV53H,AMOV54H,*14HMOV55H,*14HMOV56H,*14HMOV57H,*14HYDMOVBUF4:RETMS1K:INC59HMOVA,59HCJNEA,*05H,MS1K1MOV59H,*01HMS1K1:RETS1MOVBUF:MOV50H,*13HMOV51H,*13HMOV52H,*13HMOV53H,*13HMOV54H,*13HMOV55H,*13HMOV56H,*13HMOV57H,*13HMOVA,59HCJNEA,*01H,S1MOVBUF2MOVA,58HCJNEA,*01H,S1MOV11MOVR0,*5CHSJMPS1MOV12S1MOV11:MOVR0,*5FHS1MOV12:MOVA,R0ANLA,*0FHMOV50H,AMOVA,R0ANLA,*0F0HSWAPAMOV51H,ASJMPS1MOVBUF4S1MOVBU

温馨提示

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

评论

0/150

提交评论