單片機(jī)課程設(shè)計-電子時鐘_第1頁
已閱讀1頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  單片機(jī)課程設(shè)計</b></p><p><b>  -----數(shù)字時鐘</b></p><p>  系別: 機(jī)械電子工程系</p><p>  專業(yè): 應(yīng)用電子技術(shù)</p><p>  班級: 應(yīng)電一班</p><p>  姓名:

2、 </p><p><b>  學(xué)號: </b></p><p><b>  1.概述</b></p><p><b>  1.1 系統(tǒng)的作用</b></p><p>  本系統(tǒng)是利用STC89C52單片機(jī)結(jié)合6個七段顯示器以24時制“時時分分秒秒”格式顯示時間的電子時

3、鐘,系統(tǒng)可以設(shè)置鬧鈴;當(dāng)定時鬧鈴時,該電子時鐘通過蜂鳴器發(fā)出響聲;還有秒表功能,由于該電子時鐘有強(qiáng)大功能可以在多種場合下使用,利用七段顯示器發(fā)光也可以在夜晚和黑暗場合下使用。</p><p>  1.2 系統(tǒng)的功能要求</p><p> ?。?)使用6位七段顯示器顯示24時制時間。</p><p> ?。?)時間顯示格式為“時時分分秒秒”。</p>&

4、lt;p> ?。?)定時鬧鈴功能。</p><p> ?。?)定時鬧鈴和現(xiàn)在時間模式可以互相切換而不影響各自功能。</p><p> ?。?)具有4個按鍵來進(jìn)行功能設(shè)置,可以設(shè)置當(dāng)前時間、鬧鈴的時間設(shè)置和秒表開關(guān)設(shè)置。</p><p>  (6)具有秒表計時功能</p><p><b> ?。?)調(diào)時區(qū)域閃爍</b>

5、;</p><p> ?。?)通過復(fù)位按鍵可以重啟系統(tǒng)。</p><p><b>  2.系統(tǒng)的硬件設(shè)計</b></p><p>  2.1系統(tǒng)的電路原理</p><p> ?。?)系統(tǒng)以STC89C52單片機(jī)為本電路的核心元件,通過單片機(jī)的P0.0~P0.7引腳和A102J排阻加上拉電壓來驅(qū)動七段顯示器段顯示數(shù)字。&l

6、t;/p><p> ?。?)通過單片機(jī)控制共陰極七段顯示器連通接地來循環(huán)點亮6位七段顯示器。</p><p>  (3)在七段顯示器供電的同時由P0腳驅(qū)動顯示不同數(shù)字。根據(jù)人眼的視覺暫留特點,調(diào)整延遲時間使所觀察到時間數(shù)字是穩(wěn)定的數(shù)字。</p><p> ?。?)系統(tǒng)使用了YXDZ蜂鳴器,通過單片機(jī)P1.7引腳連接8550PNP三極管推動發(fā)聲。</p>&

7、lt;p>  (5)電路通過4個按鍵連接單片機(jī)P1.0~P1.3引腳低電平控制系統(tǒng)功能設(shè)置。</p><p> ?。?)單片機(jī)的復(fù)位電路,采用傳統(tǒng)上電復(fù)位,通過Reset按鍵控制。</p><p><b>  2.2 電原理圖</b></p><p><b>  圖1 控制電路</b></p><

8、p>  2.3 各控制按鈕控制功能說明</p><p>  系統(tǒng)接通電源程序執(zhí)行后工作,七段顯示器顯示“00 00 00”,表示程序開始執(zhí)行,按下操作鍵K1~K4動作如下:</p><p>  (1)按操作鍵K1,進(jìn)入“設(shè)置現(xiàn)在時間”模式后,操作鍵功能如下:</p><p>  操作鍵K1:當(dāng)前區(qū)域加1。</p><p>  操作鍵K2

9、:當(dāng)前區(qū)域減1。</p><p>  (2)按操作鍵K4,進(jìn)入“顯示、(3)按操作鍵K2:進(jìn)入“秒表”模式后,操作鍵功能如下:</p><p>  操作鍵K3:停止秒表 清零 啟動秒表。</p><p><b>  操作鍵K2:退出。</b></p><p> ?。?)設(shè)置鬧鈴時間”模式后,操作鍵功能如下:</p&

10、gt;<p>  操作鍵K1:當(dāng)前鬧鈴區(qū)域減1。</p><p>  操作鍵K3:當(dāng)前鬧鈴區(qū)域加1。</p><p>  操作鍵K4:第一次進(jìn)入調(diào)時,第二次為退出。</p><p> ?。?)按操作鍵Reset:復(fù)位鍵,系統(tǒng)重啟。</p><p><b>  3.軟件設(shè)計</b></p>&l

11、t;p>  3.1 資源分配表和程序流程圖</p><p>  圖2主程序控制流程圖</p><p> ?、?② ③</p><p><b> ?、?lt;/b></p><p><b>  3.2 源程序清單</b></p

12、><p>  本系統(tǒng)程序清單如下:</p><p>  ;---------------------------------------------------------------</p><p>  ;8052 CLOCK WITH SEGX6 CLOCK + 2ALARM + TIMER + SW</p><p>  ;時鐘+2鬧鐘+響鈴

13、+秒表</p><p>  ;89C52 ASM USE:Keil</p><p>  ;----------------------------------------------程序功能說明---</p><p>  (1)按操作鍵K1,進(jìn)入“設(shè)置現(xiàn)在時間”模式后,操作鍵功能如下:</p><p>  操作鍵K1:當(dāng)前區(qū)域加1。</

14、p><p>  操作鍵K2:當(dāng)前區(qū)域減1。</p><p>  (2)按操作鍵K2:進(jìn)入“秒表”模式后,操作鍵功能如下:</p><p>  操作鍵K3:停止秒表 清零 啟動秒表。</p><p><b>  操作鍵K2:退出。</b></p><p> ?。?)按操作鍵K4,進(jìn)入“顯示、設(shè)置鬧鈴時間

15、”模式后,操作鍵功能如下:</p><p>  操作鍵K1:當(dāng)前鬧鈴區(qū)域減1。</p><p>  操作鍵K3:當(dāng)前鬧鈴區(qū)域加1。</p><p>  操作鍵K4:第一次進(jìn)入調(diào)時,第二次為退出。</p><p> ?。?)按操作鍵Reset:復(fù)位鍵,系統(tǒng)重啟。</p><p>  ;------------------

16、---------------------------------------------</p><p>  DISBEG EQU 30H</p><p>  CALB EQU P1.7</p><p>  TIMCON EQU 2FH</p><p>  ORG 0000H</p>

17、;<p>  LJMP MAIN</p><p>  ORG 0003H</p><p><b>  RETI</b></p><p>  ORG 000BH</p><p>  LJMP INTT0</p><p>  ORG 0013H<

18、/p><p><b>  RETI</b></p><p>  ORG 001BH</p><p>  LJMP INTT1</p><p>  ORG 0023H</p><p><b>  RETI</b></p><p>  T

19、AB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH,88H,0BFH</p><p>  I_TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH,0C6H,0BFH,88H</p><p>  ;STAB:DB 0AH,0AH,0AH,0AH,0AH,0AH,07H,

20、06H,0CH,03H,0CH,06H,00H,0DH,0AH,0AH</p><p>  ;DB 04H,01H,0CH,00H,01H,0CH,08H,00H,00H,02H,0AH,0AH,0AH,0AH,0AH,0AH</p><p>  DLY1M: MOV R6,#14H</p><p>  DL_LOOP: MOV R7,#19H<

21、;/p><p>  DL_LOOP1: DJNZ R7,DL_LOOP1</p><p>  DJNZ R6,DL_LOOP</p><p><b>  RET</b></p><p>  DLY20M: CLR CALB</p><p>  LCALL D_II_PLAY</p&g

22、t;<p>  LCALL D_II_PLAY</p><p>  LCALL D_II_PLAY</p><p>  SETB CALB</p><p><b>  RET</b></p><p>  DL_LOOPS: LCALL DL05S</p><p>  LCALL D

23、L05S</p><p><b>  RET</b></p><p>  DL05S: MOV R3,#20H</p><p>  DL05S1: LCALL D_II_PLAY</p><p>  DJNZ R3,DL05S1</p><p><b>  RET<

24、/b></p><p>  CTIME: MOV A,#10H</p><p>  MOV B,79H</p><p><b>  MUL AB</b></p><p>  ADD A,78H</p><p>  MOV TIMCON,A</p>&l

25、t;p>  CLOOP: LCALL DLY20M</p><p>  LCALL DL_LOOPS</p><p>  LCALL DL_LOOPS</p><p>  LCALL DL_LOOPS</p><p>  DJNZ TIMCON,CLOOP</p><p><b>  CLR

26、 08H</b></p><p>  MAIN: ;LCALL ST</p><p>  MOV R0,#00H</p><p>  MOV R7,#80H</p><p>  MLOOP: MOV @R0,#00H</p><p><b>  INC R0</

27、b></p><p>  DJNZ R7,MLOOP</p><p>  MOV 20H,#00H</p><p>  MOV 7AH,#0AH</p><p>  MOV TMOD,#11H</p><p>  MOV TL0,#0B0H</p><p>  MOV

28、 TH0,#3CH</p><p>  MOV TL1,#0B0H</p><p>  MOV TH1,#3CH</p><p><b>  SETB EA</b></p><p><b>  SETB ET0</b></p><p><b>  SET

29、B TR0</b></p><p>  MOV R4,#14H</p><p>  MOV DISBEG,#70H</p><p>  MLOOP1: LCALL D_II_PLAY</p><p>  JNB P1.0,T_SETSC</p><p>  JNB P1.1,DLY5&

30、lt;/p><p>  JNB P1.2,FUNBT</p><p>  JNB P1.3,TSET</p><p>  JB 08H,CTIME</p><p>  AJMP MLOOP1</p><p>  FUNBT: LJMP DLY6</p><p>  TSET:

31、 LCALL DLY20M</p><p>  JB P1.3,MLOOP1</p><p>  TS_LOOP: JNB P1.3,TS_LOOP</p><p>  JB 05H,CLRBELL</p><p>  MOV DISBEG,#50H</p><p>  MOV 50H,

32、#0CH</p><p>  MOV 51H,#0AH</p><p>  MINCHG: SETB EA</p><p>  LCALL D_II_PLAY</p><p>  JNB P1.2,DLY1</p><p>  JNB P1.0,DLY3</p><p>  J

33、NB P1.3,DLY</p><p>  AJMP MINCHG</p><p>  CLRBELL: CLR 05H</p><p>  CLR CALB</p><p>  AJMP MLOOP1</p><p>  DLY: LCALL DLY20M</p><p

34、>  JB P1.3,MINCHG</p><p>  LJMP DLY8</p><p>  T_SETSC: LJMP R_SETTIM</p><p>  DLY1: LCALL DLY20M</p><p>  JB P1.2,MINCHG</p><p>  DLY2:

35、 LCALL D_II_PLAY</p><p>  JNB P1.2,DLY2</p><p><b>  CLR EA</b></p><p>  MOV R0,#53H</p><p>  LCALL ADD_1</p><p>  MOV A,R3</p>&

36、lt;p><b>  CLR C</b></p><p>  CJNE A,#60H,ADD_M</p><p>  ADD_M: JC MINCHG</p><p>  ACALL CLR_H</p><p>  AJMP MINCHG</p><p>  DLY3:

37、 LCALL DLY20M</p><p>  JB P1.0,MINCHG</p><p>  DLY4: LCALL D_II_PLAY</p><p>  JNB P1.0,DLY4</p><p><b>  CLR EA</b></p><p>  MOV

38、 R0,#53H</p><p>  LCALL SUB_M</p><p>  LJMP MINCHG</p><p>  DLY5: LCALL DLY20M</p><p>  JB P1.1,T_MLOOP1</p><p>  JNB P1.1,$</p><p>

39、<b>  CPL 03H</b></p><p>  JNB 03H,DIS_SET</p><p>  MOV DISBEG,#60H</p><p>  MOV 60H,#00H</p><p>  MOV 61H,#00H</p><p>  MOV 62H,#00

40、H</p><p>  MOV 63H,#00H</p><p>  MOV 64H,#00H</p><p>  MOV 65H,#00H</p><p>  MOV TL1,#0F0H</p><p>  MOV TH1,#0D8H</p><p><b>  

41、SETB TR1</b></p><p><b>  SETB ET1</b></p><p>  T_MLOOP1: LJMP MLOOP1</p><p>  DIS_SET: MOV DISBEG,#70H</p><p><b>  CLR ET1</b><

42、/p><p><b>  CLR TR1</b></p><p>  T_MLOOP11:LJMP MLOOP1</p><p>  DLY6: LCALL DLY20M</p><p>  JB P1.2,T_MLOOP11</p><p>  T_EST11: JNB P

43、1.2,T_EST11</p><p><b>  CLR ET1</b></p><p><b>  CLR TR1</b></p><p>  T_EST22: JNB P1.1,DLY5</p><p>  JB P1.2,T_EST21</p><p&

44、gt;  LCALL DLY20M</p><p>  JB P1.2,T_EST22</p><p>  T_EST55: JNB P1.2,T_EST51</p><p>  MOV 60H,#00H</p><p>  MOV 61H,#00H</p><p>  MOV 62H,#00H

45、</p><p>  MOV 63H,#00H</p><p>  MOV 64H,#00H</p><p>  MOV 65H,#00H</p><p>  T_EST33: JNB P1.1,DLY5</p><p>  JB P1.2,T_EST31</p><p>

46、;  LCALL DLY20M</p><p>  JB P1.2,T_EST33</p><p>  T_EST44: JNB P1.2,T_EST41</p><p><b>  SETB ET1</b></p><p><b>  SETB TR1</b></p>

47、<p>  AJMP MLOOP1</p><p>  T_EST411: LCALL D_II_PLAY</p><p>  AJMP T_EST11</p><p>  T_EST21: LCALL D_II_PLAY</p><p>  AJMP T_EST22</p><p>  T_EST

48、31: LCALL D_II_PLAY</p><p>  AJMP T_EST33</p><p>  T_EST41: LCALL D_II_PLAY</p><p>  AJMP T_EST44</p><p>  T_EST51: LCALL D_II_PLAY</p><p>  AJMP T_E

49、ST55</p><p>  INTT0: PUSH ACC</p><p><b>  PUSH PSW</b></p><p><b>  CLR ET0</b></p><p><b>  CLR TR0</b></p><p>

50、  MOV A,#0B7H</p><p>  ADD A,TL0</p><p>  MOV TL0,A</p><p>  MOV A,#3CH</p><p>  ADDC A,TH0</p><p>  MOV TH0,A</p><p><b>  SE

51、TB TR0</b></p><p>  DJNZ R4,I_INT0</p><p>  A_DDS: MOV R4,#14H</p><p><b>  CPL 07H</b></p><p>  MOV R0,#71H</p><p>  ACALL ADD

52、_1</p><p>  MOV A,R3</p><p><b>  CLR C</b></p><p>  CJNE A,#60H,A_DDM</p><p>  A_DDM: JC I_INT0</p><p>  ACALL CLR_H</p><

53、p>  MOV R0,#77H</p><p>  ACALL ADD_1</p><p>  MOV A,R3</p><p><b>  CLR C</b></p><p>  CJNE A,#60H,A_DDH</p><p>  A_DDH: JC I_IN

54、T0</p><p>  ACALL CLR_H</p><p>  LCALL DLY20M</p><p><b>  SETB 08H</b></p><p>  MOV R0,#79H</p><p>  ACALL ADD_1</p><p>  MOV

55、 A,R3</p><p><b>  CLR C</b></p><p>  CJNE A,#24H,RSTART</p><p>  RSTART: JC I_INT0</p><p>  ACALL CLR_H</p><p>  I_INT0: MOV 72H,76

56、H</p><p>  MOV 73H,77H</p><p>  MOV 74H,78H</p><p>  MOV 75H,79H</p><p>  LCALL BELL</p><p><b>  POP PSW</b></p><p><b&

57、gt;  POP ACC</b></p><p><b>  SETB ET0</b></p><p><b>  RETI</b></p><p>  INTT1: PUSH ACC</p><p><b>  PUSH PSW</b></p

58、><p>  JB 03H,R_ADDS</p><p>  MOV TL1,#0B0H</p><p>  MOV TH1,#3CH</p><p>  DJNZ R2,I_INT1</p><p>  MOV R2,#06H</p><p><b>  CPL

59、02H</b></p><p>  JB 02H,FLASH0</p><p>  MOV 72H,76H</p><p>  MOV 73H,77H</p><p>  MOV 74H,78H</p><p>  MOV 75H,79H</p><p>  I

60、_INT1: POP PSW</p><p><b>  POP ACC</b></p><p><b>  RETI</b></p><p>  FLASH0: JB 01H,FLASH1</p><p>  MOV 72H,7AH</p><p>

61、;  MOV 73H,7AH</p><p>  MOV 74H,78H</p><p>  MOV 75H,79H</p><p>  AJMP I_INT1</p><p>  FLASH1: MOV 72H,76H</p><p>  MOV 73H,77H</p><

62、;p>  MOV 74H,7AH</p><p>  MOV 75H,7AH</p><p>  AJMP I_INT1</p><p>  R_ADDS: CLR TR1</p><p>  MOV A,#0F7H</p><p>  ADD A,TL1</p><

63、p>  MOV TL1,A</p><p>  MOV A,#0D8H</p><p>  ADDC A,TH1</p><p>  MOV TH1,A</p><p><b>  SETB TR1</b></p><p>  MOV R0,#61H</p>

64、<p>  ACALL ADD_1</p><p><b>  CLR C</b></p><p>  MOV A,R3</p><p>  JZ R_ADDM</p><p>  AJMP I_INT01</p><p>  R_ADDM: ACALL CLR_H

65、</p><p>  MOV R0,#63H</p><p>  ACALL ADD_1</p><p>  MOV A,R3</p><p><b>  CLR C</b></p><p>  CJNE A,#60H,R_ADDH</p><p>  R_A

66、DDH: JC I_INT01</p><p>  LCALL CLR_H</p><p>  MOV R0,#65H</p><p>  ACALL ADD_1</p><p>  I_INT01: POP PSW</p><p><b>  POP ACC</b><

67、;/p><p><b>  RETI</b></p><p>  ADD_1: MOV A,@R0</p><p><b>  DEC R0</b></p><p><b>  SWAP A</b></p><p>  ORL A,@R0

68、</p><p>  ADD A,#01H</p><p><b>  DA A</b></p><p>  MOV R3,A</p><p>  ANL A,#0FH</p><p>  MOV @R0,A</p><p>  MOV A,R3&

69、lt;/p><p><b>  INC R0</b></p><p><b>  SWAP A</b></p><p>  ANL A,#0FH</p><p>  MOV @R0,A</p><p><b>  RET</b></p&g

70、t;<p>  SUB_M: MOV A,@R0</p><p><b>  DEC R0</b></p><p><b>  SWAP A</b></p><p>  ORL A,@R0</p><p>  JZ SUB_M1</p><

71、p><b>  DEC A</b></p><p>  SUB_M11: MOV 3,A</p><p>  ANL A,#0FH</p><p><b>  CLR C</b></p><p>  SUBB A,#0AH</p><p>  SUB

72、_M111: JC SUB_M110</p><p>  MOV @R0,#09H</p><p>  SUB_M10: MOV A,R3</p><p><b>  INC R0</b></p><p><b>  SWAP A</b></p><p>

73、;  ANL A,#0FH</p><p>  MOV @R0,A</p><p><b>  RET</b></p><p>  SUB_M1: MOV A,#59H</p><p>  AJMP SUB_M11</p><p>  SUB_M110: MOV A,R3&l

74、t;/p><p>  ANL A,#0FH</p><p>  MOV @R0,A</p><p>  AJMP SUB_M10</p><p>  SUB_H: MOV A,@R0</p><p><b>  DEC R0</b></p><p>&l

75、t;b>  SWAP A</b></p><p>  ORL A,@R0</p><p>  JZ SUB_H1</p><p><b>  DEC A</b></p><p>  SUB_H11: MOV R3,A</p><p>  ANL A,#0

76、FH</p><p><b>  CLR C</b></p><p>  SUBB A,#0AH</p><p>  SUB_H111: JC SUB_H110</p><p>  MOV @R0,#09H</p><p>  SUB_H10: MOV A,R3</p&

77、gt;<p><b>  INC R0</b></p><p><b>  SWAP A</b></p><p>  ANL A,#0FH</p><p>  MOV @R0,A</p><p><b>  RET</b></p>&l

78、t;p>  SUB_H1: MOV A,#23H</p><p>  AJMP SUB_H11</p><p>  SUB_H110: MOV A,R3</p><p>  ANL A,#0FH</p><p>  MOV @R0,A</p><p>  AJMP SUB_H10</

79、p><p>  CLR_H: CLR A</p><p>  MOV @R0,A</p><p><b>  DEC R0</b></p><p>  MOV @R0,A</p><p><b>  RET</b></p><p> 

80、 R_SETTIM: CLR ET0</p><p><b>  CLR TR0</b></p><p>  LCALL DL_LOOPS</p><p>  LCALL DLY20M</p><p>  JB P1.0,SLEEP</p><p>  MOV R2,#06H&l

81、t;/p><p>  MOV 70H,#00H</p><p>  MOV 71H,#00H</p><p><b>  SETB ET1</b></p><p><b>  SETB TR1</b></p><p>  SET_2: JNB P1.0,SE

82、T_1</p><p><b>  SETB 00H</b></p><p>  SET_4: JB P1.0,SET_3</p><p>  LCALL DL05S</p><p>  LCALL DLY20M</p><p>  JNB P1.0,R_SETHH</p&

83、gt;<p>  MOV R0,#77H</p><p>  LCALL ADD_1</p><p>  MOV A,R3</p><p><b>  CLR C</b></p><p>  CJNE A,#60H,SET_LOOP</p><p>  SET_LOOP

84、: JC SET_4</p><p>  LCALL CLR_H</p><p><b>  CLR C</b></p><p>  AJMP SET_4</p><p>  SLEEP: SETB ET0</p><p><b>  SETB TR0</b&

85、gt;</p><p>  SET_LOOP1:JB P1.0,SET_LOOP1</p><p>  LCALL DLY20M</p><p>  JB P1.0,SET_LOOP1</p><p>  SET_LOOP2:JNB P1.0,SET_LOOP2</p><p>  LJMP MLOO

86、P1</p><p>  R_SETHH: CLR 00H</p><p><b>  SETB 01H</b></p><p>  SET_LOOP3:JNB P1.0,SET_5</p><p>  SET_6: JB P1.0,SET_7</p><p>  LCAL

87、L DL05S</p><p>  LCALL DLY20M</p><p>  JNB P1.0,STOP</p><p>  MOV R0,#79H</p><p>  LCALL ADD_1</p><p>  MOV A,R3</p><p><b>  CLR

88、 C</b></p><p>  CJNE A,#24H,C_YHH</p><p>  C_YHH: JC SET_6</p><p>  LCALL CLR_H</p><p>  AJMP SET_6</p><p>  STOP: JNB P1.0,STOP1</p

89、><p>  LCALL DLY20M</p><p>  JNB P1.0,STOP</p><p><b>  CLR 01H</b></p><p><b>  CLR 00H</b></p><p><b>  CLR 02H</b>

90、</p><p><b>  CLR TR1</b></p><p><b>  CLR ET1</b></p><p><b>  SETB TR0</b></p><p><b>  SETB ET0</b></p><

91、p>  LJMP MLOOP1</p><p>  SET_1: LCALL D_II_PLAY</p><p>  AJMP SET_2</p><p>  SET_3: LCALL D_II_PLAY</p><p>  JNB P1.1,DLY7</p><p>  AJMP SET_

92、4</p><p>  SET_5: LCALL D_II_PLAY</p><p>  AJMP SET_LOOP3</p><p>  SET_7: LCALL D_II_PLAY</p><p>  JNB P1.1,DLY7B</p><p>  AJMP SET_6</p>

93、<p>  STOP1: LCALL D_II_PLAY</p><p>  AJMP STOP</p><p>  DLY7: LCALL DLY20M</p><p>  JB P1.1,SET_41</p><p>  DLY7_M: JNB P1.1,DLY7_M</p><

94、p>  MOV R0,#77H</p><p>  LCALL SUB_M</p><p>  LJMP SET_4</p><p>  SET_41: LJMP SET_4</p><p>  DLY7B: LCALL DLY20M</p><p>  JB P1.1,SET_61<

95、;/p><p>  DLY7_H: JNB P1.1,DLY7_H</p><p>  MOV R0,#79H</p><p>  LCALL SUB_H</p><p>  LJMP SET_6</p><p>  SET_61: LJMP SET_6</p><p>  D_

96、II_PLAY:MOV R1,DISBEG</p><p>  MOV R5,#0FEH</p><p>  PLAY: MOV A,R5</p><p>  MOV P2,A</p><p>  MOV A,@R1</p><p>  MOV DPTR,#TAB</p>

97、<p>  MOVC A,@A+DPTR</p><p>  MOV P0,A</p><p>  MOV A,R5</p><p>  JB ACC.2,D_LOOP</p><p>  CLR P0.7</p><p>  D_LOOP: JB ACC.4,D_LOOP1&l

98、t;/p><p>  CLR P0.7</p><p>  D_LOOP1: LCALL DLY1M</p><p><b>  INC R1</b></p><p>  MOV A,R5</p><p>  JNB ACC.5,CLOSE</p><p>&

99、lt;b>  RL A</b></p><p>  MOV R5,A</p><p>  MOV P0,#0FFH</p><p>  AJMP PLAY</p><p>  CLOSE: MOV P2,#0FFH</p><p>  MOV P0,#0FFH</p

100、><p><b>  RET</b></p><p>  SD_II_PLAY:MOV R1,DISBEG</p><p>  MOV R5,#0FEH</p><p>  I_PLAY: MOV A,R5</p><p>  MOV P2,A</p><p>

101、;  MOV A,@R1</p><p>  MOV DPTR,#I_TAB</p><p>  MOVC A,@A+DPTR</p><p>  MOV P0,A</p><p>  MOV A,R5</p><p>  LCALL DLY1M</p><p><b&g

102、t;  INC R1</b></p><p>  MOV A,R5</p><p>  JNB ACC.5,CLOSES</p><p><b>  RL A</b></p><p>  MOV R5,A</p><p>  AJMP I_PLAY</p&

103、gt;<p>  CLOSES: MOV P2,#0FFH</p><p>  MOV P0,#0FFH</p><p><b>  RET</b></p><p>  ;ST: MOV R0,#40H</p><p>  ; MOV R2,#20H</

104、p><p>  ; MOV R3,#00H</p><p>  ; CLR A</p><p>  ; MOV DPTR,#STAB</p><p>  S_LOOP: MOVC A,@A+DPTR</p><p>  MOV @R0,A</p>&l

105、t;p>  MOV A,R3</p><p><b>  INC A</b></p><p>  MOV R3,A</p><p><b>  INC R0</b></p><p>  DJNZ R2,S_LOOP</p><p>  MOV DI

106、SBEG,#40</p><p>  SS_LOOP: MOV R2,#50</p><p>  SS_LOOP1: LCALL SD_II_PLAY</p><p>  DJNZ R2,SS_LOOP1</p><p>  INC DISBEG</p><p>  MOV A,DISBEG</p

107、><p>  CJNE A,#5AH,SS_LOOP</p><p>  MOV DISBEG,#5AH</p><p>  MOV R3,#1BH</p><p>  SS_LOOP2: MOV R2,#32H</p><p>  SS_LOOP12:LCALL SD_II_PLAY</p>

108、<p>  DJNZ R2,SS_LOOP12</p><p>  DEC DISBEG</p><p>  DJNZ R3,SS_LOOP2</p><p><b>  RET</b></p><p>  DLY8: LCALL D_II_PLAY</p><p>  

109、JNB P1.3,DLY8</p><p>  MOV 50H,#0AH</p><p>  MOV 51H,#0CH</p><p>  R_BTIM: SETB EA</p><p>  LCALL D_II_PLAY</p><p>  JNB P1.2,DLY12</p>&

110、lt;p>  JNB P1.0,DLY14</p><p>  JNB P1.3,DLY9</p><p>  JNB P1.1,DLY10</p><p>  AJMP R_BTIM</p><p>  DLY9: LCALL DLY20M</p><p>  JB P1.3,R_B

111、TIM</p><p>  DLY8M: LCALL D_II_PLAY</p><p>  JNB P1.3,DLY8M</p><p>  MOV DISBEG,#70H</p><p>  LJMP MLOOP1</p><p>  DLY10: LCALL DLY20M</p>

112、<p>  JB P1.1,R_BTIM</p><p>  DLY11: LCALL D_II_PLAY</p><p>  JNB P1.1,DLY11</p><p><b>  CPL 05H</b></p><p>  JNB 05H,R_BTIM11</p>

113、<p>  MOV 50H,#00H</p><p>  AJMP R_BTIM</p><p>  R_BTIM11: MOV 50H,#0AH</p><p>  AJMP R_BTIM</p><p>  DLY12: LCALL DLY20M</p><p>  JB P1.

114、2,R_BTIM</p><p>  DLY13: LCALL D_II_PLAY</p><p>  JNB P1.2,DLY13</p><p><b>  CLR EA</b></p><p>  MOV R0,#55H</p><p>  LCALL ADD_1</

115、p><p>  MOV A,R3</p><p><b>  CLR C</b></p><p>  CJNE A,#24H,A_DDH33N</p><p>  A_DDH33N: JC R_BTIM</p><p>  ACALL CLR_H</p><p>

116、;  AJMP R_BTIM</p><p>  DLY14: LCALL DLY20M</p><p>  JB P1.0,R_BTIM</p><p>  DLY15: LCALL D_II_PLAY</p><p>  JNB P1.0,DLY15</p><p><b>  C

117、LR EA</b></p><p>  MOV R0,#55H</p><p>  LCALL SUB_H</p><p>  LJMP R_BTIM</p><p>  BELL: JNB 05H,BBELL</p><p>  MOV A,79H</p><

118、p>  CJNE A,55H,BBELL</p><p>  MOV A,78H</p><p><b>  CLR C</b></p><p>  BELL_1: CJNE A,54H,BBELL</p><p>  MOV A,77H</p><p><b>

119、;  CLR C</b></p><p>  CJNE A,53H,BBELL</p><p>  MOV A,76H</p><p><b>  CLR C</b></p><p>  BELL_2: CJNE A,52H,BBELL</p><p>  JNB

120、 07H,BBELL</p><p>  CLR CALB</p><p><b>  RET</b></p><p>  BBELL: SETB CALB</p><p><b>  RET</b></p><p><b>  END</b&g

溫馨提示

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

評論

0/150

提交評論