产品概述

单片机中断 应用 4个中断应用实例讲解

小编 2024-10-06 产品概述 23 0

4个中断应用实例讲解

【例1】 利用单片机的外部中断0响应按键开关的按键信号,当有按键按下时,单片机响应中断,并使内部某变量加1,硬件电路如图4-4所示。

图4-4 单片机外部中断检测按键电路图

C51源程序如下:

提示

将按键电路改为其他传感器电路,如光电传感器检测电路,霍尔传感器检测电路,热释电传感器检测电路等即可实现不同的检测控制功能。

【例2】 2个按健中断控制流水等灯的速度,按健K0用以减慢速度控制,按健K1用以加快速度控制,硬件电路如图4-5所示。

图4-5 流水灯控制电路图

C51源程序如下:

【例3】 利用单片机外部中断即时实现不同方式的流水灯控制,L2开关实现2只灯循环亮,L1开关实现1只灯循环亮,两个控制开关具有不同的优先级别,L2比L1具有更高的优先级。硬件电路如图4-6所示。

C51源程序如下:

图4-6 不同优先级别控制流水灯电路图

【例4】 利用单片机外部中断实现遥控解码。具体功能:通过电视机遥控器向单片机系统板上的一体化红外线接收头发射红外遥控编码信号,由于一体化红外线接收头的输出端与单片机的外部中断0相连,从而触发单片机产生中断,单片机根据红外遥控信号的组成对功能码进行识别,并通过P1口的发光二极管显示该功能码。

单片机与一体化红外接收头HS0038的引脚连接如图4-7所示,单片机与发光二极管的连接可以参照本章之前案例中的硬件电路图,这里省略未画出。

图4-7 HS0038引脚连接图

系统分析如下:

遥控编码脉冲信号通常由引导码、系统码、系统反码、功能码和功能反码组成。引导码由宽度为9ms的高电平和宽度为4.5ms的低电平组成。8位的系统码又称为识别码,主要是为了区分不同的控制系统,防止误动作。8位功能码也称为数据码,其代表相应的控制功能。8位的系统反码和功能反码的加入是为了校对传输过程中产生的差错提高抗干扰性能,遥控编码脉冲信号组成如图4-8所示。

图4-8 遥控编码脉冲信号的组成图

当遥控器上任意一个按键按下超过36ms时,LC7461芯片的振荡器使芯片激活,将发射一个特定的同步码头,对于接收端而言就是一个9ms的低电平,和一个4.5ms的高电平,这个同步码头可以使程序知道从这个同步码头以后可以开始接收数据。

解码的关键是如何识别“0”和“1”,采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”。其串行码波形如图4-9所示。

图4-9 0和1的构成串行码波形图

从上图中可以发现,位“0”、“1”均以0.565ms的高电平开始,不同的是低电平的宽度不同,“0”为0.56ms,“1”为1.685ms,所以可以根据低电平的宽度区别“0”和“1”。如果从0.565ms高电平过后,开始延时,0.56ms以后,若读到的电平为高,说明该位为“0”,反之则为“1”,为了可靠起见,延时必须比0.56ms长些,但又不能超过1.125ms,否则如果该位为“0”,读到的已是下一位的低电平,因此一般取(1.125ms+0.56ms)/2≈0.84ms。

C51源程序如下:

实例讲解,单片机常用中断控制子程序

单片机系统中,应用最多的中断方式是中断I/O方式。中断I/O方式提供了5个中断源,即两个外部输入中断源INT0(P3.2或称为外部中断源0)和INT1(P3.3或称为外部中断源1),两个片内定时器T0和T1的溢出中断源TF0和TF1,一个片内串行口发送或接收中断源TI或RI。

中断由中断控制寄存器控制,不论哪个中断,都必须进行初始化,中断响应必须有中断响应程序。5个中断的控制编程如下。

相关问答

c51 单片机中断 系统 应用 介绍?

c51单片机中断系统就是打断当前要做的事,转而去执行别的事情。单片机中断就是当单片机正在执行程序的时候,突然某个按键按下了(产生外部中断),单片机就必须...

51 单片机 如何用外部 中断 来停止定时器的工作,然后再用此中断程序来实现中断返回?

利用一个变量做标志来做处理,外部中断出发后将这个标志置1,然后在主函数里面判断这个变量,如果标志为1,那么TR0或者TR1就等于1(运行定时器),再次出发外部...

51 单片机中断 系统的组成?

MCS51单片机的中断系统由中断源、中断允许控制、中断优先级控制和中断向量组成。中断源的意思是哪些事件可以触发中断,比方说,外部中断、定时器中断、通讯中...

单片机中断 和暂停的区别?

在于:中断是实时处理系统内部事件,比如外部设备信号、定时器溢出等。当这些事件发生时,单片机会停止当前的程序执行,保存现场,跳转到指定的中断服务程序(IS...

51 单片机 中断 源怎样控制开放或禁止 中断 ?

使用中断使能控制寄存器ea,置以1就是允许中断。使用中断使能控制寄存器ea,置以1就是允许中断。

什么是 单片机 中断 ?

单片机的中断是一种特殊的事件处理机制,它允许在程序执行过程中,当发生某个特定的事件时,暂停当前的任务,转而执行一个预定义的中断服务程序。中断可以是外...

单片机 技术中, 中断 是一种()A、资源共享技术B、数据转换技...

[最佳回答]中断是一种(D)

单片机 中断 和定时怎么延时?

3.操作系统中,都有个硬件延时,和定时中断,可以看ucosii中的源码,节拍时钟,和汇编语言实现的定时中断。4.硬件延时,要占用一个定时器/计数器硬件资源。在10m...

51 单片机 汇编如何用外部 中断 实现暂停?

问题是:一个程序暂停,还有其它程序在执行吗?主循环程序也暂停吗?那就设置一个标志位,中断后,标志为1,再次中断,又恢复为0。回主循环程序,如果标志...问题...

51 单片机 如何实现用按键 中断 响应及处理?

在51单片机中,可以通过外部中断来实现按键的响应和处理。下面是一个基本的示例代码,演示了如何使用按键中断来检测按键的状态并进行相应的处理:首先,需要定...

猜你喜欢