实验二 外部中断实验
一、实验目的
1. 学会使用Keil μVision3和Proteus软件进行单片机汇编语言
和C语言程序设计与开发。
2. 了解和掌握MCS-51单片机的中断组成、中断控制工作原理、中
断处理过程、外部中断的中断触发方式,掌握中断功能的编程方法。
二、实验内容
1. 单片机的P1.0引脚连接LED指示灯D0。
2. 单片机的P3.2引脚(INT0)连接按键开关K,作为中断源,每次
按键都会触发INT0中断。
3. 在INT0中断服务程序中将P1.0端口的信号取反,使LED指示灯
D0在点亮和熄灭两种状态间切换,产生LED指示灯由按键开关K控制的效果。
三、实验程序
ORG 0000H ;MCS-51复位入口
AJMP MAIN ;转入主程序
ORG 0003H ;INTO中断入口
AJMP EX_INTO ;转入中断服务程序
ORG 0100H ;主程序入口
MAIN: MOV SP,#40H ;中断初始化设置堆栈
SETB IT0 ;中断请求信号设置为边沿触发方式
SETB EA ;开放总中断
SETB EX0 ;允许INTO中断
HERE: SJMP HERE ;原地踏步(处理其他事务)等待
中断到来
ORG 0200H ;中断服务程序
EX_INTO:CPL P1.0 ;改变指示灯状态
RETI ;中断返回
END
四、实验原理图
五、实验仿真及结果
当开关断开时,LED指示灯D1熄灭,如图1所示:
图1
当按键开关接通时,LED指示灯D1点亮,如图2所示:
图2
六、实验总结
通过本次实验,进一步熟悉了对Keil μVision3软件的操作,另外还接触到了Proteus软件。掌握了中断功能的编程方法,加上两个上述软件,使得单片机汇编语言得以仿真。进一步深化了解和掌握MCS-51单片机的中断的相关知识,包括中断的组成、工作原理、处理过程以及外部中断的中断触发方式。
实验二 外部中断实验
一、实验目的
1. 学会使用Keil μVision3和Proteus软件进行单片机汇编语言
和C语言程序设计与开发。
2. 了解和掌握MCS-51单片机的中断组成、中断控制工作原理、中
断处理过程、外部中断的中断触发方式,掌握中断功能的编程方法。
二、实验内容
1. 单片机的P1.0引脚连接LED指示灯D0。
2. 单片机的P3.2引脚(INT0)连接按键开关K,作为中断源,每次
按键都会触发INT0中断。
3. 在INT0中断服务程序中将P1.0端口的信号取反,使LED指示灯
D0在点亮和熄灭两种状态间切换,产生LED指示灯由按键开关K控制的效果。
三、实验程序
ORG 0000H ;MCS-51复位入口
AJMP MAIN ;转入主程序
ORG 0003H ;INTO中断入口
AJMP EX_INTO ;转入中断服务程序
ORG 0100H ;主程序入口
MAIN: MOV SP,#40H ;中断初始化设置堆栈
SETB IT0 ;中断请求信号设置为边沿触发方式
SETB EA ;开放总中断
SETB EX0 ;允许INTO中断
HERE: SJMP HERE ;原地踏步(处理其他事务)等待
中断到来
ORG 0200H ;中断服务程序
EX_INTO:CPL P1.0 ;改变指示灯状态
RETI ;中断返回
END
四、实验原理图
五、实验仿真及结果
当开关断开时,LED指示灯D1熄灭,如图1所示:
图1
当按键开关接通时,LED指示灯D1点亮,如图2所示:
图2
六、实验总结
通过本次实验,进一步熟悉了对Keil μVision3软件的操作,另外还接触到了Proteus软件。掌握了中断功能的编程方法,加上两个上述软件,使得单片机汇编语言得以仿真。进一步深化了解和掌握MCS-51单片机的中断的相关知识,包括中断的组成、工作原理、处理过程以及外部中断的中断触发方式。