課程設(shè)計(jì)基于單片機(jī)的教學(xué)用電子打鈴器電路設(shè)計(jì).doc_第1頁
課程設(shè)計(jì)基于單片機(jī)的教學(xué)用電子打鈴器電路設(shè)計(jì).doc_第2頁
課程設(shè)計(jì)基于單片機(jī)的教學(xué)用電子打鈴器電路設(shè)計(jì).doc_第3頁
課程設(shè)計(jì)基于單片機(jī)的教學(xué)用電子打鈴器電路設(shè)計(jì).doc_第4頁
課程設(shè)計(jì)基于單片機(jī)的教學(xué)用電子打鈴器電路設(shè)計(jì).doc_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、目目 錄錄1 1、課程設(shè)計(jì)目的、課程設(shè)計(jì)目的.2 22 2、總體設(shè)計(jì)、總體設(shè)計(jì).2 22 2。1 1 模塊設(shè)計(jì)模塊設(shè)計(jì).2 22.22.2 程序流程圖程序流程圖.2 23 3、硬件單元設(shè)計(jì)硬件單元設(shè)計(jì).4 43.13.1 電路設(shè)計(jì)總原理圖電路設(shè)計(jì)總原理圖 .4 43 3。2 2 各模塊電路設(shè)計(jì)各模塊電路設(shè)計(jì) .4 43.2.13.2.1 鍵盤掃描模塊鍵盤掃描模塊.4 43 3。2.22.2 時(shí)鐘和復(fù)位模塊時(shí)鐘和復(fù)位模塊.4 43.23.2。3 3 顯示模塊顯示模塊.5 53.2.43.2.4 響鈴模塊響鈴模塊.6 64 4、軟件設(shè)計(jì)、軟件設(shè)計(jì).7 74 4。1 1 鍵盤掃描程序鍵盤掃描程序.8

2、 84 4。2 2 數(shù)碼管顯示程序數(shù)碼管顯示程序.1 10 04 4。3 3 主程序主程序.1 11 14 4.4.4 響鈴程序響鈴程序.125 5、課程設(shè)計(jì)總結(jié)、課程設(shè)計(jì)總結(jié).1 15 56 6、參考文獻(xiàn)、參考文獻(xiàn).1 16 62 2總體設(shè)計(jì)總體設(shè)計(jì) 2.12.1 模塊設(shè)計(jì)模塊設(shè)計(jì) 教學(xué)用電子打鈴器主要由AT89S51單片機(jī)、鍵盤掃描模塊、時(shí)鐘和復(fù)位模塊、打鈴器模塊、八段數(shù)碼管顯示模塊等組成。運(yùn)用匯編語言來控制單片機(jī)80C51來實(shí)現(xiàn)、動(dòng)態(tài)數(shù)碼顯示等功能。且本設(shè)計(jì)中的80C51單片機(jī)是整個(gè)工作過程的核心,是整個(gè)設(shè)計(jì)靈魂,它控制了脈沖時(shí)序的產(chǎn)生,顯示信號(hào)的發(fā)送控制顯示LED的選擇.所用到的芯片元

3、器件:80C51 單片機(jī), 3 個(gè)按鍵,1 個(gè)蜂鳴器,4 個(gè)八段 LED 數(shù)碼管80C51是一種帶4K字節(jié)存儲(chǔ)器(的低電壓、高性能CMOS 8位微處理器,俗稱單片機(jī). 2.22.2程序流程圖程序流程圖圖2。2(1) 主程序流圖2。2(1) 主程序程序流程圖開始初始化參數(shù)設(shè)置調(diào)用顯示子程序調(diào)用打鈴對(duì)比程序調(diào)用鍵盤子程序圖2。2(2) 定時(shí)中斷程序流程圖3 3。硬件單元設(shè)計(jì)。硬件單元設(shè)計(jì)3.13.1 電路設(shè)計(jì)總原理圖電路設(shè)計(jì)總原理圖 圖圖3.13.1 總體原理圖 3 3. .2 2 各各模模塊塊電電路路設(shè)設(shè)計(jì)計(jì)3 3. .2 2. .1 1 鍵鍵盤盤掃掃描描模模塊塊利用四個(gè)按鍵進(jìn)行校時(shí),按鍵 K是

4、調(diào)整時(shí)間選擇,按鍵 K進(jìn)行小時(shí)加 1,按鍵K進(jìn)行分鐘加 ,按鍵K4則調(diào)整時(shí)間結(jié)束返回主程序, K1接P1.1,K2接P1。2,K3接P1。3,K4接P1。4。 3 3。2 2。2 2 時(shí)鐘和復(fù)位模塊時(shí)鐘和復(fù)位模塊 圖3.2.2 時(shí)鐘和復(fù)位模塊3.2.33.2.3 顯示模塊及芯片說明顯示模塊及芯片說明根據(jù)設(shè)計(jì)要求系統(tǒng)需要 4 個(gè)共陽,數(shù)碼管顯示電路使用0的動(dòng)態(tài)顯示功能。4 個(gè)八段(、) ,數(shù)碼管分別顯示: “時(shí)” 、“分,用二極管的“點(diǎn)”作為時(shí)、分的間隔.該系統(tǒng)采用共陽極數(shù)碼管,對(duì)于共陽極數(shù)碼管,其公共端必須接高電平。當(dāng)打鈴的時(shí)候四個(gè)數(shù)碼管中前三個(gè)不顯示數(shù)據(jù),最后一個(gè)顯示課程節(jié)數(shù)。 圖3.2.3

5、 顯示模塊3.2.43.2.4 響鈴模塊響鈴模塊打鈴電路(接 P3.7):當(dāng)前時(shí)間與程序設(shè)定時(shí)間相同時(shí),P3。7 端輸出高電平的方波,即打鈴.每次響鈴時(shí)間是 60S。 圖 3.2。4 響鈴模塊4 4軟件設(shè)計(jì)軟件設(shè)計(jì) 中斷服務(wù)程序通過定時(shí)器T0(工作方式為1),實(shí)現(xiàn)一日的24小時(shí),首先得初始化,正常工作,主函數(shù)調(diào)用數(shù)碼管顯示程序顯示當(dāng)前時(shí)間,然后調(diào)用打鈴對(duì)比函數(shù),若當(dāng)前時(shí)間與系統(tǒng)設(shè)定打鈴時(shí)間相同是,響應(yīng)打鈴程序.當(dāng)需要對(duì)時(shí)間校正時(shí),可以通過按鍵掃描處理程序進(jìn)行校時(shí)。 /程序初始化程序初始化/ ALBALB EQUEQU 20H20H/打鈴設(shè)置標(biāo)志打鈴設(shè)置標(biāo)志 BUFBUF EQUEQU 30H3

6、0H/30-33h/30-33h連續(xù)四個(gè)字節(jié)存放顯示器數(shù)據(jù)連續(xù)四個(gè)字節(jié)存放顯示器數(shù)據(jù) HOURHOUR EQUEQU 34H34H /存放小時(shí)變量存放小時(shí)變量 MINMIN EQUEQU 35H35H/ 存放分鐘變量存放分鐘變量 SECSEC EQUEQU 36H36H/存放秒鐘變量存放秒鐘變量 DEDADEDA EQUEQU 37H37H / 存放存放5ms5ms計(jì)數(shù)值計(jì)數(shù)值 HHHH EQUEQU 38H38H / 打鈴設(shè)置小時(shí)變量打鈴設(shè)置小時(shí)變量 MMMM EQUEQU 39H39H/打鈴設(shè)置分鐘變量打鈴設(shè)置分鐘變量 ;按鍵輸入引腳;按鍵輸入引腳 K1K1 EQUEQU P1.1P1.1

7、 K2K2 EQUEQU P1P1。2 2 K3K3 EQUEQU P1.3P1.3 K4K4 EQUEQU P1.4P1.4 ; ;蜂鳴器和指示燈引腳定義蜂鳴器和指示燈引腳定義 SPKSPK EQUEQU P1P1。5 5 WLEDWLED EQUEQU P1.0P1.0 /工作指示燈引腳定義工作指示燈引腳定義 ORGORG 00H00H lJMPlJMP MAINMAIN ORGORG 0BH0BH lJMPlJMP T0_SRVT0_SRV /主程序入口主程序入口/ MAINMAIN: CLRCLR ALBALB /清除鬧鈴標(biāo)志清除鬧鈴標(biāo)志 MOVMOV A,A,80H80H /加載顯示

8、器初始值數(shù)據(jù)加載顯示器初始值數(shù)據(jù) MOVMOV P0,AP0,A ACALLACALL BZBZ ;ACALLACALL BZBZ ACALLACALL LED_BLLED_BL ACALLACALL DELAY1DELAY1 ;定時(shí)器;定時(shí)器T0T0的初始化的初始化 ACALLACALL INITINITLOOPLOOP: ACALLACALL CONVCONV ACALLACALL DISPDISPLOOP2:LOOP2: ACALLACALL CONVCONV ACALLACALL LD1LD1/查詢打鈴時(shí)間查詢打鈴時(shí)間 MOVMOV A A,MINMIN CJNECJNE A A,#1

9、0,AGN#10,AGN JMPJMP LOOP2LOOP2 AGNAGN: CJNECJNE A,A,55,LOOP355,LOOP3 JMPJMP LOOP2LOOP2 LOOP3:LOOP3: JBJB K1,M1K1,M1 JNBJNB K1K1,$ $ ACALLACALL SETTIMESETTIME M1M1: JMPJMP LOOPLOOP jmpjmp looploop ACALLACALL DISPDISP LD1:LD1: MOVMOV A A,HOURHOUR CLRCLR C C SUBBSUBB A A,8 8 MOVMOV DPTR,DPTR,TALETALE M

10、OVCMOVC A,A,A+DPTRA+DPTRCJNECJNE A A,HOURHOUR,LLLLMOVMOV A,MINA,MINCJNECJNE A,#10A,#10,L LACALLACALL BZBZ MOVMOV A A,HOURHOUR CLRCLR C C SUBBSUBB A,A,8 8 MOVMOV DPTR,DPTR,TABLE2TABLE2 MOVCMOVC A,A,A+DPTRA+DPTR MOVMOV P0P0,A AACALLACALL DELAYDELAY L L:CJNECJNE A,#55A,#55,LLLLACALLACALL BZBZ MOVMOV A,

11、HOURA,HOUR CLRCLR C C SUBBSUBB A A,#8#8 MOVMOV DPTR,DPTR,TABLE2TABLE2 MOVCMOVC A A,A+DPTRA+DPTR MOVMOV P0P0,A AACALLACALL DELAYDELAYLL:LL: RETRETTALE:TALE:DBDB 08H08H,09H,0AH09H,0AH,0BH0BHTABLE2:TABLE2:DBDB 0F9H0F9H,0A4H,0B0H,99H0A4H,0B0H,99H /實(shí)現(xiàn)走動(dòng)功能的的子程序?qū)崿F(xiàn)走動(dòng)功能的的子程序/ DELAY1DELAY1: MOVMOV TMOD,TMOD,0

12、0000001B00000001B /延時(shí)延時(shí)60ms60ms的子程序的子程序 設(shè)置設(shè)置T0T0工作在模式工作在模式1 1MOVMOV IEIE,#10000010B#10000010B /啟用定時(shí)器啟用定時(shí)器T0T0中斷產(chǎn)生中斷產(chǎn)生/ MOVMOV TCONTCON,#00010000B#00010000B /打開打開T0T0并將其設(shè)置為定時(shí)器并將其設(shè)置為定時(shí)器 MOVMOV TL0,TL0,LOW(65536LOW(655365000)5000) /直接帶公式法設(shè)置直接帶公式法設(shè)置T0T0的初值的初值, ,此方法為簡(jiǎn)便此方法為簡(jiǎn)便方法方法 MOVMOV TH0,#HIGH(65536TH0

13、,#HIGH(655365000)5000) SETBSETB TR0TR0 /若若TF0TF0為為1 1時(shí)代表時(shí)代表T0T0定時(shí)器計(jì)數(shù)已滿定時(shí)器計(jì)數(shù)已滿, ,有溢出程有溢出程序往下進(jìn)行序往下進(jìn)行 /若若TF0TF0為為0 0時(shí)將一直循環(huán)這條程序語句時(shí)將一直循環(huán)這條程序語句; ; RETRET ;中斷服務(wù)程序;中斷服務(wù)程序 T0_SRVT0_SRV:/定時(shí)器定時(shí)器T0T0計(jì)時(shí)中斷程序每隔計(jì)時(shí)中斷程序每隔5ms5ms中斷一次中斷一次 PUSHPUSH ACCACC MOVMOV TL0,TL0,LOWLOW(65536655365000)5000) /直接帶公式法設(shè)置直接帶公式法設(shè)置T0T0的初

14、值的初值, ,此方法為簡(jiǎn)便方法此方法為簡(jiǎn)便方法 MOVMOV TH0,TH0,HIGH(65536-5000HIGH(65536-5000) /MOV/MOV TL0TL0,(,(8192-50008192-5000)MODMOD 3232/重加載初始值重加載初始值 /MOV/MOV TH0TH0,(,(8192-50000)/328192-50000)/32 INCINC DEDADEDA ;秒輸出;秒輸出 MOVMOV A,DEDAA,DEDA CJNECJNE A,A,200200,TT1TT1 MOVMOV DEDADEDA,#0#0 CPLCPL WLEDWLED /LED/LED燈

15、亮滅變換燈亮滅變換 INCINC SECSEC MOVMOV A,SECA,SEC CJNECJNE A A,6060,TT1TT1 /是否是否1 1分鐘到了分鐘到了 ;分輸出;分輸出 INCINC MINMIN /分計(jì)數(shù)加一分計(jì)數(shù)加一 MOVMOV SEC,#0SEC,#0 /秒計(jì)數(shù)清零秒計(jì)數(shù)清零 MOVMOV A,MINA,MIN CJNECJNE A A,6060,TT1TT1 /看是否一小時(shí)到了看是否一小時(shí)到了 ; ;時(shí)輸出時(shí)輸出 INCINC HOURHOUR MOVMOV MIN,#0MIN,#0 MOVMOV A,HOURA,HOUR CJNECJNE A A,2424,TT1T

16、T1 MOVMOV SECSEC,0 0 MOVMOV MIN,#0MIN,#0 MOVMOV HOURHOUR,#0#0 TT1TT1: POPPOP ACCACC RETIRETI/實(shí)現(xiàn)顯示功能的子程序?qū)崿F(xiàn)顯示功能的子程序/CONVCONV:; ;轉(zhuǎn)換小時(shí)數(shù)據(jù)轉(zhuǎn)換小時(shí)數(shù)據(jù)/通過通過DIVDIV指令進(jìn)行十進(jìn)制計(jì)時(shí)處理指令進(jìn)行十進(jìn)制計(jì)時(shí)處理, ,并將中斷程序處理后的數(shù)據(jù)分別存并將中斷程序處理后的數(shù)據(jù)分別存放入數(shù)碼管顯示內(nèi)存中放入數(shù)碼管顯示內(nèi)存中 /其中其中BUFBUF,BUF+1BUF+1存放小時(shí);存放小時(shí);BUF+2,BUF+3BUF+2,BUF+3存放分鐘存放分鐘 、MOVMOV A A,

17、HOURHOURMOVMOV B,#10B,#10DIVDIV ABAB/將將HOURHOUR內(nèi)的值轉(zhuǎn)換為十位和個(gè)位分別表示的十進(jìn)制數(shù)字,便于用兩位內(nèi)的值轉(zhuǎn)換為十位和個(gè)位分別表示的十進(jìn)制數(shù)字,便于用兩位數(shù)碼管顯示出來小時(shí)值數(shù)碼管顯示出來小時(shí)值MOVMOV DPTRDPTR,#TABLE#TABLE /DPTR/DPTR指針指向表的首地址指針指向表的首地址MOVCMOVC A A,A+DPTRA+DPTRMOVMOV BUFBUF,A AMOVMOV A A,B BMOVCMOVC A A,A+DPTRA+DPTRMOVMOV BUF+1BUF+1,A AMOVMOV A A,MINMIN /開

18、始轉(zhuǎn)換分鐘開始轉(zhuǎn)換分鐘MOVMOV B,B,1010DIVDIV ABABMOVMOV DPTR,DPTR,TABLETABLEMOVCMOVC A,A+DPTRA,A+DPTRMOVMOV BUF+2,ABUF+2,AMOVMOV A A,B BMOVCMOVC A A,A+DPTRA+DPTRMOVMOV BUF+3BUF+3,A A RETRET /共陽極數(shù)碼管字符轉(zhuǎn)換筆段碼表共陽極數(shù)碼管字符轉(zhuǎn)換筆段碼表/TABLE:TABLE:DBDB 0C0H0C0H,0F9H,0A4H,0B0H0F9H,0A4H,0B0HDBDB 99H99H,92H,82H92H,82H,0F8H0F8HDBD

19、B 80H,90H,88H,83H80H,90H,88H,83HDBDB 0C6H,0A1H0C6H,0A1H,86H,8EH86H,8EH /共陰極共陰極/ / TABLE:TABLE:/DB/DB 3FH3FH,06H,5BH06H,5BH,4FH4FH,66H66H/DB/DB 6DH6DH,7DH7DH,07H,7FH07H,7FH/DB/DB 6FH,77H6FH,77H,7CH,39H7CH,39H/DB/DB 5EH5EH,79H79H,71H71H/掃描顯示子程序掃描顯示子程序/實(shí)際四個(gè)數(shù)碼管是在輪流顯示的,每一刻都只有一個(gè)數(shù)碼管亮,利用人的視覺暫留來使實(shí)際四個(gè)數(shù)碼管是在輪流顯

20、示的,每一刻都只有一個(gè)數(shù)碼管亮,利用人的視覺暫留來使人感覺是在同時(shí)顯示人感覺是在同時(shí)顯示DISP:DISP:MOVMOV R0,#BUFR0,#BUF /指向顯示器緩沖區(qū)起始地址,即存入十位上小時(shí)地址指向顯示器緩沖區(qū)起始地址,即存入十位上小時(shí)地址MOVMOV R2,#4R2,#4 /掃描四次掃描四次MOVMOV A,#00001000BA,#00001000B /掃描初值,只是使掃描初值,只是使p2.3p2.3口打開口打開S1:S1:MOVMOV P2P2,A AMOVMOV A A,R0R0MOVMOV P0P0,A AMOVMOV A A,P2P2MOVMOV R5R5,2 2ACALLA

21、CALL DELAYDELAY /延時(shí),以便顯示字符穩(wěn)定延時(shí),以便顯示字符穩(wěn)定;EX;EX:XXXX1011XXXX1011 RRRR A A /A/A向右移動(dòng)一位向右移動(dòng)一位 INCINC R0R0 /指向指向BUF+1BUF+1 DJNZDJNZ R2R2,S1S1 /判斷是否執(zhí)行了四次掃描判斷是否執(zhí)行了四次掃描 RETRET/實(shí)現(xiàn)調(diào)整時(shí)間子程序?qū)崿F(xiàn)調(diào)整時(shí)間子程序/; ;設(shè)置目前時(shí)間設(shè)置目前時(shí)間SETTIME:SETTIME: CLRCLR TR0TR0 /定時(shí)器暫停定時(shí)器暫停 MOVMOV SEC,#0SEC,#0 /秒鐘變量清零秒鐘變量清零 L0:L0: ACALLACALL DISP

22、DISP /調(diào)用掃描顯示子程序調(diào)用掃描顯示子程序 JBJB K2,L1K2,L1 /K2/K2等于一時(shí)跳轉(zhuǎn)到等于一時(shí)跳轉(zhuǎn)到L1L1 JNBJNB K2,K2, /若按下若按下K2K2則等待放開則等待放開;K2;K2小時(shí)調(diào)整小時(shí)調(diào)整 INCINC HOURHOUR MOVMOV A A,HOURHOUR CJNECJNE A A,#24#24,L11L11 /是否到了是否到了2424小時(shí),不到跳轉(zhuǎn)到小時(shí),不到跳轉(zhuǎn)到L11L11 MOVMOV HOURHOUR,#0#0 /小時(shí)變量清零小時(shí)變量清零 L11L11: ACALLACALL CONVCONV /轉(zhuǎn)換顯示數(shù)據(jù)轉(zhuǎn)換顯示數(shù)據(jù) ACALLACA

23、LL DISPDISP /掃描顯示掃描顯示 JMPJMP L0L0 L1:L1: JBJB K3K3,L2L2 JNBJNB K3K3, ;K3;K3分鐘調(diào)整分鐘調(diào)整 INCINC MINMIN MOVMOV A,MINA,MIN CJNECJNE A A,60,L2160,L21 MOVMOV MIN,#0MIN,#0 L21:L21: ACALLACALL CONVCONV ACALLACALL DISPDISP JMPJMP L0L0 L2L2:JBJB K4,L0K4,L0 /未按下未按下K4K4則繼續(xù)掃描則繼續(xù)掃描 JNBJNB K4K4,ACALLACALL BZBZ /蜂鳴器響一

24、聲蜂鳴器響一聲;K4;K4設(shè)置完成設(shè)置完成ACALLACALL LED_BLLED_BL /LED/LED閃動(dòng)閃動(dòng)SETBSETB TR0TR0 /啟動(dòng)定時(shí)器啟動(dòng)定時(shí)器RETRET/延時(shí)子程序延時(shí)子程序/DELAY:MOV/DELAY:MOV R5,R5,2020 /延時(shí)延時(shí)0 0。5s5s的延時(shí)子程序的延時(shí)子程序; ;所輸出的頻率是下一個(gè)延時(shí)所輸出的頻率是下一個(gè)延時(shí)子程序的子程序的2 2倍;倍;/LAY2:/LAY2: MOVMOV R6,#100R6,#100/LAY1:/LAY1: MOVMOV R7R7,#100#100/ DJNZDJNZ R7R7,$ $/ DJNZDJNZ R6,

25、LAY1R6,LAY1/ DJNZDJNZ R5,LAY2R5,LAY2/ RETRETDELAY:DELAY: /延時(shí)時(shí)間是:延時(shí)時(shí)間是:2msX(R5)2msX(R5) MOVMOV R6R6,1010D1:MOVD1:MOV R7R7,#100#100 DJNZDJNZ R7R7, DJNZDJNZ R6,D1R6,D1 DJNZDJNZ R5R5,DELAYDELAY RETRET/工作指示燈工作指示燈/LED_BLLED_BL: /工作指示燈閃爍工作指示燈閃爍MOVMOV R4R4,6 6LE1LE1:CPLCPL WLEDWLED MOVMOV R5R5,#25#25 /延時(shí)延時(shí)5

26、0ms50ms ACALLACALL DELAYDELAY DJNZDJNZ R4R4,LE1LE1 RETRET/計(jì)數(shù)單元清計(jì)數(shù)單元清0 0子程序子程序/INIT:INIT: MOVMOV DEDA,#0DEDA,#0 MOVMOV SECSEC,#0#0 MOVMOV MINMIN,9 9 MOVMOV HOUR,#8HOUR,#8 RETRET/蜂鳴器蜂鳴器/BZ:MOVBZ:MOV R6,#250R6,#250 /使蜂鳴器響一聲使蜂鳴器響一聲B1:ACALLB1:ACALL DEXDEX CPLCPL SPKSPK DJNZDJNZ R6,B1R6,B1 MOVMOV R5R5,#50

27、#50 ; CLRCLR P2P2。2 2 ;CLRCLR P2P2。3 3 ACALLACALL DELAYDELAY RETRET/蜂鳴器短暫延時(shí)子程序蜂鳴器短暫延時(shí)子程序/DEX:MOVDEX:MOV R7,#180R7,#180 DE1:NOPDE1:NOPDJNZDJNZ R7,DE1R7,DE1RETRET/加載打鈴時(shí)間子程序加載打鈴時(shí)間子程序/CONVACONVA: MOVMOV A A,HHHHMOVMOV B,B,1010DIVDIV ABAB/將將HOURHOUR內(nèi)的值轉(zhuǎn)換為十位和個(gè)位分別表示的十進(jìn)制數(shù)字,便于用兩位內(nèi)的值轉(zhuǎn)換為十位和個(gè)位分別表示的十進(jìn)制數(shù)字,便于用兩位數(shù)碼

28、管顯示出來小時(shí)值數(shù)碼管顯示出來小時(shí)值MOVMOV DPTR,DPTR,TABLETABLE /DPTR/DPTR指針指向表的首地址指針指向表的首地址MOVCMOVC A,A,A+DPTRA+DPTRMOVMOV BUFBUF,A AMOVMOV A,BA,BMOVCMOVC A,A+DPTRA,A+DPTRMOVMOV BUF+1,ABUF+1,AMOVMOV A A,MMMM /開始轉(zhuǎn)換分鐘開始轉(zhuǎn)換分鐘MOVMOV B,#10B,#10DIVDIV ABABMOVMOV DPTRDPTR,#TABLE#TABLEMOVCMOVC A A,A+DPTRA+DPTRMOVMOV BUF+2,AB

29、UF+2,AMOVMOV A,BA,BMOVCMOVC A A,A+DPTRA+DPTRMOVMOV BUF+3BUF+3,A A RETRET /設(shè)置打鈴時(shí)間子程序設(shè)置打鈴時(shí)間子程序/SET_ATIMESET_ATIME: ACALLACALL CONVACONVA NONO: ACALLACALL DISPDISP ;K2;K2調(diào)整小時(shí)調(diào)整小時(shí) JBJB K2K2,N1N1 JNBJNB K2K2, INCINC HHHH MOVMOV A,HHA,HH CJNECJNE A A,#24,N11#24,N11 MOVMOV HHHH,#0#0 N11N11: ACALLACALL CONV

30、ACONVA ACALLACALL DISPDISP JMPJMP NONO ;K3;K3調(diào)整分鐘時(shí)間調(diào)整分鐘時(shí)間 N1N1:JBJB K3,N2K3,N2 JNBJNB K3K3, INCINC MMMM MOVMOV A A,MMMM CJNECJNE A,#60,N21A,#60,N21 MOVMOV MM,#0MM,#0 N21:ACALLN21:ACALL CONVACONVA /加載打鈴時(shí)間數(shù)據(jù)加載打鈴時(shí)間數(shù)據(jù) ACALLACALL DISPDISPJMPJMP NONO;K4K4設(shè)置完成設(shè)置完成N2:JBN2:JB K1,NOK1,NO JNBJNB K1K1, ;設(shè)置完成;設(shè)置完成 ACALLACALL LED_BLLED_BL ACALLACALL CONVCONV /加載現(xiàn)在時(shí)間數(shù)據(jù)加載現(xiàn)在時(shí)間數(shù)據(jù)CPLCPL ALBALB /此處為判斷是否啟用鬧鈴此處為判斷是否啟用鬧鈴JNBJNB ALB,M31ALB,M31ACALLACALL BZBZACALLACALL BZBZACALLACALL BZBZ/連鳴三聲為啟用鬧鈴連鳴三聲為啟用鬧

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論