知道什么是中断就像知道如何打开门锁。
下一步是找到密钥。
在51个微控制器中,还有另外五个常见的中断源,即INT0,INT1,T0,T1和串行端口中断。
这五个中断就像五个键一样,为了让微控制器发挥应有的作用,我们必须熟练使用它们。
对于这五个中断源,最简单的中断源是INT0 / INT1。
他们两个只打断工作。
他们更现实。
与T0 / T1相比,它们的功能更强大,并且可以执行多项任务。
。
然后是串行端口中断,属于精神分裂症类型。
它包含两个中断以控制一个中断源。
但是,它仅进行通信,不关心其他人。
因此,如果柿子不得不捏一点,他们将首先执行INT0 / INT1。
我们之前讨论过一个生活中的案例,那就是看电视,然后水滚滚,关掉水,然后又回来看电视。
水流声是触发我们暂停电视的信号。
那么在程序中,我们要在什么条件下暂停主程序并输入中断信号?首先看一下微控制器的端口。
在端口上,您可以找到两个定义为INT0 / INT1的引脚。
在上图中,我们可以在一幅图中看到所有中断。
P3.0 / RXD为通讯写端口,内部对应为写中断RX,P3.1 / TXD为通讯发送端口,内部对应为发送中断TX。
,P3.2 / INT0,外部中断0,P3.3 / INT1,外部中断1,P3.4 / T0,中断0,P3.5 / T1,中断1显然有用。
从手册中我们可以知道,当P3.2 / INT0引脚为低电平时,它将触发INT0中断程序。
真的是这样吗?只有一个真理,那就是它有多简单。
尽管我们已经找到了触发端口,但是我们也可以给它一个低触发电位,但是程序响应仍然需要做很多工作。
这是中断的难点,需要配置中断。
就像我听到水沸腾了一样,但是如何使水停止沸腾需要先有人教我,否则我只能站在水壶旁看着它沸腾,无助。
那么我们如何使用这个中断呢?关于使用外部中断,必须遵循以下步骤,否则将不使用它。
首先讨论步骤,然后详细介绍每个步骤的设置方法。
使用INT0:1,打开总中断开关。
2.打开INT0中断开关。
3.配置INT0中断的触发模式。
4.设置中断响应程序。
开始之前,我们必须首先了解一些中断配置信息,这些信息必须基于数据手册。
可以通过STC官方网站直接下载89C52数据表。
如有必要,您还可以留言或私人留言,我将分别发送给您。
这与打扰的优先级有关,也就是说,当我们处理打扰时,要有一个顺序,否则,当水洒满时门铃响了,一个人又怎么能开门和关门?程序是一样的。
为了避免同时发生中断时的尴尬场面,请为每个中断设置优先级。
INT0和INT1同时触发中断,然后将首先处理INT0的程序,并在处理完灯泡后处理INT1的程序。
。
这样可以确保程序稳定有序。
这还不够。
首先,我们需要打开中断的主开关。
我们可以通过这种方式了解中断的操作过程。
让我用电路图来解释。
如果中断信号要触发中断程序,则需要首先打开主开关,打开INT0专用开关,设置触发模式,然后正确输入中断程序以完成中断。
如何设置总中断开关?查找表,您可以看到主交换机为EA,主交换机为EA = 1。
然后,打开外部中断0(INT0)的开关为EX0,EX0 = 1。
如果断开连接,则必须设置触发模式。
触发模式在另一个表中。
继续检查表。
查找表以了解需要设置IT0。
设置为0时,当引脚为低电平时,即电位变为0V时,将触发中断,并输入中断响应。
设置为1时,当引脚的输入电平从高电平变为低电平时,将触发中断。
为什么有两种方法?实际上,它们都是可能的,但是我们需要知道,当我们使用稳定的信号作为触发信号时,会出现这种情况,即,当高电势变为低电势时,