单片机中断系统的应用教案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
中断系统的应用
复习:
1、80C51单片机的中断源及入口地址;
2、与中断有关的SFR:中断允许寄存器IE、中断优先级寄存器IP、
定时器/计数器控制寄存器TCON;
3、中断与子程序调用的主要区别。
中断系统应用实例一:利用普通继电器制作断电延时型时间继电器
普通继电器在线圈电流通、断的时刻引起触点动作;断电延时型时间
继电器在线圈断电一段时间后触点动作;通电延时型时间继电器是在
线圈通电一段时间后触点才动作,时间继电器是电气控制系统中的常
用元件。
上电复位电路;X1、C2、
C3构成时钟电路;R3、V1
组成继电器KEM1的驱动
电路,VD1
轻触开关接在外中断0引
脚,开关闭合相当于时间继
电器线圈断电,R2为上拉
电阻。
编程要求:T0设定为模式1定时状态,定时时间为100毫秒,外中
断0为下降沿触发方式,继电器的延时时间为10秒。
器吸合、T0启动,10秒后继
电器释放。
程序清单:
ORG 0000H
LJMP START ;主程序入口
ORG 0003H
LJMP KEM ;外中断0入口
ORG 000BH
LJMP DL ;定时器/计数器0中断入口
ORG 0030H
START: CLR P1.0 ;I/O口初始化
MOV R7,#00H ;软件计数器初始化
MOV SP, #50H ;堆栈指针初始化
MOV TMOD, #01H ;T0方式1定时模式
MOV TL0, #0B0H
MOV TH0, #3CH ;100毫秒定时初值
SETB ET0 ;T0开中断
SETB IT0 ;外中断0下降沿触发方式
SETB EX0 ;外中断0开中断
SETB EA ;开总中断
MAIN: CJNE R7,#100,$ ;没到10秒继续等待
CLR P1.0 ;到10秒继电器释放
MOV R7,#00H ;重置软件计数器初值
CLR TR0 ;T0停止定时
ALMP MAIN
KEM: SETB P1.0 ;继电器吸合
SETB TR0 ;启动T0
RETI
DL: MOV TL0, #0B0H
MOV TH0, #3CH ;重置100毫秒定时初值
INC R7 ;100毫秒计数
RETI
END
程序录入及仿真调试。
中断系统应用实例二:利用普通继电器制作通电延时型时间继电器硬件及编程要求不变,由学生自行完成程序编制及仿真调试。
小结:
I/O口、定时器/计数器、中断、堆栈初始化方法;时序分析方法;编程思路。
(内容特色:根据专业特点选择电气控制系统中常用的时间继电器为模型,将单片机重点内容定时器/计数器、中断结合在一起,不见任何教材有此例)
(教学特色:针对具体硬件编程,硬件、时序分析透彻,与单片机产
品开发一致)