《單片機彙編》期末考試、考研常見考題、習題,題型彙總(二十七)、玩轉單片機5箇中斷源,編程綜合題

題77(5箇中斷源綜合題)

編程綜合題,要求:(晶振頻率11.0592M)
1,佔空比可調,可調範圍0-100%
2,波形的頻率1K
3,數碼管顯示速度等級(開機、復位顯示F,速度等級0-A)
4,使用串口打印ASCII碼
5,使用外部中斷1控制LED

備註:PWM:脈衝寬度調製
電路圖:
在這裏插入圖片描述

程序源碼:


DutyRatioADD BIT P1.2
DutyRatioDEC BIT P1.1
DutyRatioRES BIT P1.0
DutyRatioSTA BIT P1.3
PULSE   BIT P1.7
LED     EQU P0
	ORG 0000H
	LJMP START
	ORG 0003H
	LJMP ADDRINT0
	ORG 000BH
	LJMP ADDRT0
	ORG 0013H
	LJMP ADDRINT1
	ORG 001BH
	LJMP ADDRT1
	ORG 0023H
	LJMP ADDRUART
	ORG 0030H
START:
	LCALL Init
LOOP:
	MOV SBUF,R5
	JNB F0,$
	CLR F0
	INC R5
	CJNE R5,#122,U1
	MOV R5,#30H
U1:
	SJMP LOOP
ADDRINT0:
	SETB PULSE
	JNB DutyRatioADD,L0
	JNB DutyRatioDEC,L1
	JNB DutyRatioRES,L2
	JNB DutyRatioSTA,L7
L7:
	SETB TR0
	MOV R7,#5
	AJMP RETURN0
L0:
	CJNE R7,#10,L9
	MOV R7,#10
	AJMP RETURN0
L9:
	INC R7
	AJMP RETURN0
L1:
	CJNE R7,#00H,T0L0
	MOV R7,#00H
	AJMP RETURN0
L2:
	MOV R7,#00H
	CLR TR0
	CLR PULSE
	MOV TL0,#9CH
	MOV TH0,#9CH;200US
	MOV P2,#0FH
	AJMP L10
RETURN0:
	MOV B,R7
	ANL B,#0FH
	MOV P2,B
L10:
	JNB DutyRatioADD,$
	JNB DutyRatioDEC,$
	JNB DutyRatioRES,$
	AJMP T0L1
T0L0:
	DEC R7
	AJMP RETURN0
T0L1:
	RETI

ADDRT0:	 ;decide DUTY
	INC A
	MOV 60H,R7
	CJNE A,60H,T1L0
	CLR PULSE
T1L0:
	CJNE A,#10,T1L1
	CLR A
	SETB PULSE
T1L1:
	RETI

ADDRT1:
	CPL P1.6
	RETI
Init:
	MOV SP,#88H
	CLR A
	MOV R4,#00H
	MOV R5,#30H
	MOV R7,#00H
	MOV IE,#9FH
	MOV TCON,#05H
	MOV TMOD,#22H
	MOV TL0,#9CH
	MOV TH0,#9CH;200US
	MOV TL1,#0F4H
	MOV TH1,#0F4H;100US
	CLR PULSE
	MOV SCON,#01010000B
	MOV PCON,#00H
	CLR TR0
	SETB P1.6
	SETB TR1
	MOV LED,#0AAH
	RET

ADDRINT1:
	INC R4
	MOV LED,R4
	CJNE R4,#255,L11
	MOV LED,#55H
	MOV R4,#00H
L11:
	RETI

ADDRUART:
	CLR TI
	SETB F0
	RETI
	END

將5箇中斷源進行綜合應用,通過此題加深對中斷源優先級的理解。

仿真視頻:

《單片機彙編》期末考試、考研常見考題、習題,題型彙總(二十七)、玩轉單片機5箇中斷源,編程綜合題

強化記憶:

單片機5箇中斷源中斷入口地址(8m+3,m=0-4)

中斷源            入口地址
外部中斷0         0003H
定時器0           000BH
外部中斷1         0013H
定時器1           001BH
串口中斷          0023H

默認優先級:外部中斷0 > 定時器0 > 外部中斷1 > 定時器1 > 串行口中斷

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章