標題: 單片機外部中斷匯編編程實驗 [打印本頁]

作者: gejiapeng    時間: 2018-7-16 14:12
標題: 單片機外部中斷匯編編程實驗
在工業(yè)控制中,常有按某種順序有規(guī)律的完成預(yù)定的動作,對這類繼續(xù)生產(chǎn)過程的控制稱順序控制,象注塑機工藝過程大致按“合模注射延時開模產(chǎn)伸產(chǎn)退”順序動作,用單片機最易實現(xiàn),F(xiàn)用8051的P1.0~P1.6控制七只發(fā)光二極管的點亮模擬注塑機的七道工序,低電平有效,設(shè)定每道工序時間轉(zhuǎn)換為延時,P3.7為開工啟動開關(guān),低電平動作。P3.3為外部故障輸入模擬開關(guān),低電平報警,P2.7為報警聲音輸出。

1、保護進入中斷時的狀態(tài),并在退出中斷之前恢復(fù)進入時的狀態(tài)。
2、必須在中斷程序中設(shè)定是否允許中斷重入,中斷程序進入時應(yīng)保護PSW,ACC以及中斷程序使用但非其專用的寄存器。另外中斷程序中涉及到關(guān)鍵數(shù)據(jù)的設(shè)置時應(yīng)關(guān)中斷,即設(shè)置時不允許重入。

單片機源程序如下:
  1. ORG 0000H
  2. AJMP MAIN
  3. ORG 0013H
  4. AJMP WAIT

  5. ORG 0040H

  6. MAIN:
  7.     CLR IT1
  8.     SETB EX1
  9.     SETB EA

  10. HOLD:  JB P3.7,HOLD

  11. START: MOV P1,#0FH
  12.        MOV A,#01H
  13.        CPL A
  14.        MOV R7, #06H
  15. NEXT:  MOV P1,A
  16.        ACALL DELAY
  17.        RL A
  18.        DJNZ R7,NEXT
  19.        SJMP START

  20. DELAY:
  21.        MOV R3,#04H
  22. DEL3:  MOV R4,#0FFH
  23. DEL2:  MOV R5,#0FFH
  24. DEL1:  DJNZ R5,DEL1
  25.        DJNZ R4,DEL2
  26.        DJNZ R3,DEL3
  27.        RET

  28. WAIT:
  29.        CLR P2.7
  30.        PUSH ACC
  31.        PUSH PSW
  32.        MOV R2,#0FFH
  33. DEL4:  DJNZ R2,DEL4
  34.        CPL P2.7
  35.        POP PSW
  36.        POP ACC
  37.        RETI
  38. END
復(fù)制代碼

所有資料51hei提供下載:
1.zip (397 Bytes, 下載次數(shù): 12)



作者: wdliming    時間: 2018-8-3 12:56
謝謝分享
作者: 1391148199    時間: 2021-6-11 08:52
您好 請問有c語言的嗎




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1