您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 交通运输 > 外部中断按键控制流水灯资料
任务导入大多数的单片机系统中都含有按键,就像PC用键盘作为输入设备一样,按键可以理解为单片机系统的输入设备。那么按键的具体结构是怎么样的?怎样在具体的单片机系统中使用它?怎样使之与单片机中断系统建立起联系?本任务将把这些疑问逐一解开。一什么是按键二按键设计知识学习一、什么是按键作为一种数据输入设备,按键在单片机的应用系统中使用比较广泛。按键有很多种外形,同时也有很多种内部结构。按键实物图按键内部结构图按键去抖动的硬件电路二、按键设计对于按键的使用一般有两种方式,即独立式和矩阵式(也称为行列式)。独立式:按键设计简单,但占用单片机的硬件资源较多。矩阵式:按键设计复杂,但却能从很大程度上节省单片机的硬件资源。独立式按键结构电路图任务实施一实现按键控制小灯二实现多路按键状态指示三实现按键控制流水灯一、实现按键控制小灯1.硬件电路一个LED控制电路2.程序设计按键控制小灯的程序框图具体程序如下:二、实现多路按键状态指示1.硬件电路4个LED控制电路2.程序设计多路按键状态显示的程序框图具体程序如下:三、实现按键控制流水灯1.硬件电路4个LED控制电路2.程序设计按键控制流水灯的程序框图具体程序如下:具体程序如下:具体程序如下:一单片机的中断系统二中断方式实现流水灯知识拓展一、单片机的中断系统1.MCS-51系列单片机的中断系统中断是通过硬件来改变CPU的运行方向。计算机在执行程序的过程中,当出现CPU以外的某种情况,由服务对象向CPU发出中断请求信号,要求CPU暂时中断当前程序的执行而转去执行相应的处理程序,待处理程序执行完毕后,再继续执行原来被中断的程序。这种程序在执行过程中由于外界的原因而被打断的情况称为“中断”。1)中断的概念引起CPU中断的根源,称为中断源。中断源向CPU提出的中断请求。CPU暂时中断原来的事务A,转去处理事件B。对事件B处理完毕后,再回到原来被中断的地方(即断点),称为中断返回。实现上述中断功能的部件称为中断系统(中断机构)。主程序A响应返回断点RETI……中断服务程序B2)其他概念3)中断的特点(1)分时操作(2)实时处理(3)故障处理随着计算机技术的应用,人们发现中断技术不仅解决了快速主机与慢速I/O设备的数据传送问题,而且还具有如下优点:分时操作。CPU可以分时为多个I/O设备服务,提高了计算机的利用率;实时响应。CPU能够及时处理应用系统的随机事件,系统的实时性大大增强;故障处理(可靠性高)。CPU具有处理设备故障及掉电等突发性事件能力,从而使系统可靠性提高。MCS-51系列单片机中断系统的结构框图4)MCS-51系列单片机中断系统的结构2.中断源和中断标志(5)RI/TI(1)INT1(3)T0(2)INT0(4)TI1)中断源2)中断标志(P3.2)可由IT0(TCON.0)选择其为低电平有效还是下降沿有效。当CPU检测到P3.2引脚上出现有效的中断信号时,中断标志IE0(TCON.1)置1,向CPU申请中断。同一优先级中的中断申请不止一个时,则有中断优先权排队问题。同一优先级的中断优先权排队,由中断系统硬件确定的自然优先级形成,其排列如所示:3.中断处理(2)(1)(3)•实现优先级排队•实现中断响应和中断返回•实现中断嵌套1)中断系统的功能MCS-51单片机的中断系统结构执行主程序主程序继续执行主程序断点中断请求中断响应执行中断处理程序中断返回中断响应条件中断源有中断请求;此中断源的中断允许位为1;CPU开中断(即EA=1)。以上三条同时满足时,CPU才有可能响应中断。中断源:8051的中断系统有5个中断源,2个优先级。80C51单片机的中断优先级有三条原则CPU同时接收到几个中断时,首先响应优先级别最高的中断请求。正在进行的中断过程不能被新的同级或低优先级的中断请求所中断。正在进行的低优先级中断服务,能被高优先级中断请求所中断。为了实现上述后两条原则,中断系统内部设有两个用户不能寻址的优先级状态触发器。其中一个置1,表示正在响应高优先级的中断,它将阻断后来所有的中断请求;另一个置1,表示正在响应低优先级中断,它将阻断后来所有的低优先级中断请求。中断嵌套流程图中断处理流程图2)中断处理过程一次中断过程的完整步骤1、中断请求:中断事件一旦发生,中断源就提交中断请求(将中断标志位置1),欲请求CPU暂时放下目前的工作转向为该中断作专项服务。2、中断使能:虽然中断源提交了中断请求,但是,能否得到CPU的响应,还要取决于该中断请求能否通过若干关卡送达CPU(中断使能位等于1,关卡放行),这些关卡有以下两类:此中断源的中断允许位;全局中断允许位。3、中断响应:如果一路放行,则CPU响应该中断请求,记录断点,跳转到中断服务程序。对于INT和TMR中断,中断响应时中断标志位会被硬件自动清零。4、中断处理:对中断源进行有针对性的服务。5、中断返回:返回到主程序断点处,继续执行主程序。1、3、5由硬件自动完成。2、4是用户编程完成。中断响应条件为1、2同时满足。Eye-CatchingVisual(1)定时器中断请求的撤除。(2)串行口中断请求的撤除。(3)外部中断请求的撤除。3)中断请求的撤除外部中断下降沿触发方式条件下,在产生中断请求时由硬件置位(置1)中断请求标记,当CPU响应中断时由硬件清除(清0)。电平触发方式条件下,中断请求标记由外部中断源控制。具体是:当CPU检测到INT引脚上出现低电平时,中断标志IE由硬件置位,INT引脚上出现高电平时,中断标志IE由硬件清除。中断响应时间是指从中断请求标志位置位到CPU开始执行中断服务程序的第一条指令所持续的时间。4)中断响应时间每个中断源的几个位优先级定义位:每个中断源可以选择中断优先权中断使能位:每个中断源均可使能(Enable)或使不能(Disable)中断请求标记位:每个中断源均有独立的中断请求标记(Flag)中断请求标记的产生:中断事件发生时,由硬件自动产生中断请求标记的清除:中断事件被响应时,由硬件自动清除全局中断使能位:EA:全局中断使能位(总允许位)。=0:全局中断禁止;=1:全局中断允许。中断服务函数中断函数的写法void函数名()interrupt中断编号{;}二、中断方式实现流水灯1.硬件电路中断方式实现流水灯的电路图2.程序设计实验:1、利用库函数、逻辑运算实现流水灯。2、根据51单片机电路,用4个独立按键控制对应的LED亮灭:K1控制LED3;K2控制LED2;K3控制LED1;K4控制LED0。(偶数学号)3、按下K1,四个灯全亮,按下K2,四个灯全灭,按下K3,只有奇数灯亮;按下K4,只有偶数灯亮。(奇数学号)4、利用外部中断0实现:主程序led奇数灯亮,外部中断0使得偶数led灯亮。(分别看下降沿触发和低电平触发的区别)
本文标题:外部中断按键控制流水灯资料
链接地址:https://www.777doc.com/doc-3430253 .html