② 注释见源程序右边所述。
ORG 0000H
START: MOV SP,#20H
MOV 30H,#01H
MOV P1,#01H
MLP0: ACALL ,D50ms ;软件延时50 ms
MOV A,30H
CJNE A,#08H,MLPI ;判断表格中数据是否取完?
MOV A,#01H ;取完,从表头开始取
MOV DPTR,#ITAB ;表格首地址
MLP2: MOV 30H,A
MOVC A,@A+DPTR ;取表格中数据
MOV P1,A
SJMP MLP0
MLPI: INC A ;表格中数据未取完,准备取下一个
SJMP MLP2
ITAB:DB 0,1,2,4,8 ;表
DB 8,4,2,1
D50ms: ;软件延时50 ms子程序
RET
第5章 【单片机的中断系统原理及应用】
思考与练习题解析
【5—1】什么是中断?
【答】单片机在程序执行过程中,允许外部或内部“事件’’通过硬件打断程序的执行.,使其转向执行处理外部或内部“事件’’的中断服务子程序;而在完成中断服务子程序以后,继续执行原来被打断的程序,这种情况称为“中断",这样的过程称为“中断响应过程"。
【5—2】单片机的中断系统主要应该解决哪几个问题?
【答】单片机的中断系统主要应该解决3个问题,即: ‘
①当单片机内部或外部有中断申请时,能及时响应中断,中止正在执行的任务,转去处理中断服务子程序。中断服务处理以后,能正确回到原来的断点处继续处理原先的任务。 ②当有多个中断源同时申,请中断时,单片机应能首先响应优先级高的中断源,能实现中断优先级的控制。 ‘
③当低优先级中断源正在享用中断服务时,若这时优先级比它高的中断源也申请中断,则要求单片机能中止低优先级中断源的服务程序,转去执行更高优先级中断源的服务程序,实现中断嵌套,并能逐级正确返回原断点处,继续处理原先的任务。
【5—3】说明8 0 C5 1单片机的中断流程。