




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
ORG0000HLJMPMAINORG000BHLJMPTIM01 ;0.1sT0中斷ORG0300HMAIN:ACALL INIT ;調用初始化函數LOOP:LCALLKEYIN ;鍵盤輸入AJMPLOOPINIT: MOV7FH,#7EH ;7FH存當前輸入位置79-7EHMOV79H,#0 ;初始化顯示MOV7AH,#0MOV7BH,#0MOV7CH,#0MOV7DH,#0MOV7EH,#0MOV70H,#0 ;初始化 初始時間0h0m0sMOV71H,#0MOV72H,#0MOV73H,#0SETB20H.0 ;20H.0存儲當前輸入狀態,鬧鐘輸入,或初始值輸入KEYIN:LCALLKEY ;鍵盤輸入函數,循環對79-7EH輸入,或是命令輸入CLRCPUSHACC ;入棧,保存A值SUBBA,#10 ;和10比較JNCCONTRL ;大于等于10,命令鍵 POPACC ;A出棧 數字鍵,放到顯示緩存MOVR0,7FH ;A放到7FH內容指向地址處MOV@R0,AMOVA,7FH ;是否出了79H-7EH范圍CJNEA,#79H,RU ;出范圍,循環到7EHMOV7FH,#7FH RETRU:DEC7FH ;范圍內自減1RETCONTRL:POPACC ;控制鍵,執行相應控制操作CJNEA,#0DH,N0CLCALLKJUD ;D控制計時開始,KJUD判斷是否在有效時間范圍內JNCN0 ;控制操作完成退出LCALLTIMINIT ;定時器及相關內容初始化N0C:CJNEA,#0CH,N0B ;C暫停開始鍵CPLEA ;中斷開關控制計時起止N0B:CJNEA,#0BH,N0 ;B選擇輸入是鬧鐘還是起始值CPL20H.0 ;20H.0為其標志0起始1鬧鐘MOVC,20H.0 ;指示燈表示輸入鬧鐘還是起始值MOVP1.0,CN0:RETTIMINIT:MOVTH0,#03CH ;定時器及相關初始化MOVTL0,#0B0H ;初值SETBTR0 ;運行SETBET0 ;允許定時器中斷SETBEA ;總中斷允許MOV70H,#0 ;載入計時初值MOV71H,74HMOV72H,75HMOV73H,76H RETDISP:MOVR0,#79H ;顯示函數從右至左顯示MOVR3,#01H MOVA,R3DIO:MOVDPTR,#0FFDDHMOVX@DPTR,AMOVA,@R0MOVDPTR,#TAB1MOVCA,@A+DPTR;得到鍵值MOVDPTR,#0FFDCHDIR1:MOVX@DPTR,ALCALLDELAY1INCR0MOVA,R3JBACC.5,LD1RLAMOVR3,AAJMPDIOLD1:RETTAB1:DB0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H ;顯示表 A滅B顯示P(錯誤信號)DB080H,090H,0FFH,08CH,0C6H,0A1H,086H,08EHTAB2:DB07H,04H,08H,05H,09H,06H,0AH,0BH,01H,00H ;鍵值校正表DB02H,0FH,03H,0EH,0CH,0DHDELAY1:MOVR7,#02H ;延時函數12M時精確延時1msDE1:MOVR6,#0FFHDE2:DJNZR6,DE2DJNZR7,DE1RETJUDGE:MOVDPTR,#0FFDDH ;判斷是否有效MOVA,#00HMOVX@DPTR,AINCDPTRMOVXA,@DPTRCPLAANLA,#0FHRETKEY:LCALLJUDGEJNZLK1LCALLDISP;AJMPKEYLK1:LCALLDISP;LCALLJUDGEJNZLK2LCALLDISPAJMPKEYLK2:MOVR2,#0FEHMOVR4,#00HLK3:MOVDPTR,#0FFDDHMOVA,R2MOVX@DPTR,AINCDPTRMOVXA,@DPTRLINE0:JBACC.0,LINE1MOVA,#00HAJMPLKPLINE1:JBACC.1,LINE2MOVA,#08HAJMPLKPLINE2:JBACC.2,LINE3MOVA,#10HAJMPLKPLINE3:JBACC.3,NEXTMOVA,#18HLKP:ADDA,R4PUSHACCNT:LCALLDISPLCALLJUDGEJNZNTPOPACCCJNEA,#10H,NN:JNCEXITMOVDPTR,#TAB2MOVCA,@A+DPTREXIT:RETNEXT:INCR4MOVA,R2JNBACC.7,KND ;4*8RLAMOVR2,AAJMPLK3KND:AJMPKEYTIM01:PUSHPSW ;0.1s定時中斷PUSHACC ;保護現場MOVTH0,#03CH ;載入初值MOVTL0,#0B0HMOVA,70H ;0.1s計時值存到70HCJNEA,#59,EX01MOV70H,#0MOVA,71H ;秒值放入71HCJNEA,#59,EX1SMOV71H,#0 MOVA,72H ;分鐘放入72HCJNEA,#59,EX1MMOV72H,#0MOVA,73HCJNEA,#23,EX1HMOV73H,#0 ;小時73HEX01:INC70HAJMPIEXITEX1S:INC71HACALLALJUD ;判斷報警信號函數JNZALARMSETBP1.1 AJMPIEXIT ;報警ALARM:CLRP1.1AJMPIEXITEX1M:INC72HAJMPIEXITEX1H:INC73HAJMPIEXITIEXIT:LCALLDISTIMPOPACC ;恢復現場POPPSWRETIALJUD:CLRC ;報警判斷MOVA,73HSUBBA,66H ;鬧鐘值和現在時間值比較JCALEXCLRCMOVA,72HSUBBA,65HJCALEXSETBCMOVA,71HSUBBA,64HJCALEXCLRARETALEX:MOVA,#1RETDISTIM:MOVB,#10 ;把當前時間值放入79-7EH顯示MOVA,71HDIVABMOV79H,BMOV7AH,AMOVA,72HMOVB,#10DIVABMOV7BH,BMOV7CH,AMOVA,73HMOVB,#10DIVABMOV7DH,BMOV7EH,ARETKJUD:CLRC ;鍵值判斷,判斷輸入是否有效MOVA,7EHMOVB,#10MULABADDA,7DHJB20H.0,ALHMOV76H,AAJMPGOHALH:MOV66H,A ;初始值放入74-76H鬧鐘放入64-66HGOH:SUBBA,#24JNCEXMOVA,7CHMOVB,#10MULABADDA,7BHJB20H.0,ALMMOV75H,AAJMPGOMALM:MOV65H,AGOM:SUBBA,#60JNCEXMOVA,7AHMOVB,#10MULABADDA,79HJB20H.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 如何構建包容性的公共政策體系試題及答案
- 機電工程考生的素質培養及試題與答案
- 2025年智慧能源管理系統建設方案:能源行業智能化安全管理報告
- 機電工程2025年軟件運用試題及答案
- 機電工程技術應用能力的考核試題及答案
- 網絡工程實施中的挑戰與解決策略試題及答案
- 界面測試與可用性測評試題及答案
- 探討西方政治制度的思想基礎及理論來源試題及答案
- 機電工程柔性制造試題及答案
- 軟件設計師考試團隊效率優化試題及答案
- 工匠精神概述課件
- 國家安全教育大學生讀本課件高教2024年8月版課件-第七章堅持以軍事、科技、文化、社會安全為保障
- 《SDN技術及應用》課件-第2章
- 2025屆四川省德陽市第一中學重點達標名校中考沖刺卷生物試題含解析
- 2025年春新北師大版數學一年級下冊課件 第六單元 第1課時 認識圖形
- 小學語文閱讀答題技巧課件
- 《心肺復蘇及電除顫》課件
- 福建省廈門市湖里2024-2025學年區中考物理質檢檢測試題(三模)含答案
- 二級圓柱齒輪減速器設計
- 數字集成電路
- 《兔子坡》小學生閱讀分享課課件
評論
0/150
提交評論