打印
[疑难问答]

四种简略的拓宽51单片机中断的妙招

[复制链接]
楼主: mickit
手机看帖
扫描二维码
随时随地手机跟帖
21
yeates333| | 2024-9-21 12:03 | 只看该作者 回帖奖励 |倒序浏览
如果单片机支持中断嵌套(即在一个中断服务程序中可以响应另一个中断),那么可以利用这个特性来实现多级中断。

使用特权

评论回复
22
primojones| | 2024-9-21 15:38 | 只看该作者
中断源数量不多且对响应时间要求不是特别高的场合。

使用特权

评论回复
23
pixhw| | 2024-9-22 12:25 | 只看该作者
这些芯片可以管理多个中断请求,并将其合并为一个或几个中断信号,供单片机处理。这种方法可以提供更多的中断源,并且具有较好的优先级管理功能。

使用特权

评论回复
24
youtome| | 2024-9-22 16:57 | 只看该作者
有些单片机型号 具有更多的外部中断源输入端,可以通过硬件连接将多个外部中断源接入这些输入端,从而实现中断的扩展。

使用特权

评论回复
25
burgessmaggie| | 2024-9-22 18:54 | 只看该作者
使用8259A可编程中断控制接口,可以级联多个芯片以扩展中断源。

使用特权

评论回复
26
gygp| | 2024-9-23 09:33 | 只看该作者
通过设置定时器的周期,使其在预期的外部事件发生时间内产生中断。在中断服务程序中,检查外部事件的状态,并执行相应的操作。

使用特权

评论回复
27
abotomson| | 2024-9-23 10:12 | 只看该作者
不是所有的51单片机都支持中断嵌套,而且即使支持,也可能受到一些限制,比如嵌套深度的限制。

使用特权

评论回复
28
jtracy3| | 2024-9-23 11:11 | 只看该作者
通过硬件逻辑门(如“或非”门或“与”门)将多个中断源合并到单片机的一个外部中断输入端。硬件逻辑门可以选择CD4002等芯片来实现。当检测到中断请求时,程序通过查询特定的输入/输出端口来确定是哪个中断源发起的请求,并执行相应的中断服务程序。

使用特权

评论回复
29
belindagraham| | 2024-9-23 12:48 | 只看该作者
利用单片机内部的定时器/计数器作为外部中断源。将外部中断信号输入到P3口的特定引脚,并将定时器/计数器设置为计数模式。当计数器溢出时,即产生一个中断信号。需要精心设计定时器的初始值和计数模式,以确保在适当的时候产生中断请求。

使用特权

评论回复
30
mmbs| | 2024-9-23 13:08 | 只看该作者
配置定时器产生周期性中断。
在定时器中断服务程序中,检查各个设备的状态。

使用特权

评论回复
31
everyrobin| | 2024-9-23 16:01 | 只看该作者
可以利用串口中断来实现一些特殊的中断功能。

使用特权

评论回复
32
geraldbetty| | 2024-9-23 19:33 | 只看该作者
使用一个与门,当多个设备中的任何一个产生低电平信号时,与门输出低电平,触发单片机的外部中断。这样就可以通过一个中断处理多个外部设备的事件。

使用特权

评论回复
33
51xlf| | 2024-9-25 11:20 | 只看该作者
可以使用专门的中断扩展芯片,如8259A,来扩展更多的中断源。8259A可以管理8个中断源,并且可以级联多个8259A来进一步扩展中断源。

使用特权

评论回复
34
modesty3jonah| | 2024-9-25 11:39 | 只看该作者
采用专用的中断扩展芯片,如8259A,将单片机的单个外部中断引脚扩展为多个中断源。

使用特权

评论回复
35
earlmax| | 2024-9-25 12:02 | 只看该作者
将各个中断源通过硬件“或非”门引入到单片机外部中断源输入端(INT0或INT1),同时再把外部中断源送到单片机的某个输入输出端口。当外部中断时,通过“或非”门引起单片机中断,在中断服务程序中再通过软件查询,进而转相应的中断服务程序。

使用特权

评论回复
36
wangdezhi| | 2024-9-25 12:25 | 只看该作者
软件模拟中断              

使用特权

评论回复
37
tifmill| | 2024-9-25 13:09 | 只看该作者
利用普通二极管构建一个中断选择电路,将多个外部中断源分别通过二极管连接至单片机的外部中断输入端。当某个中断源向单片机发出中断请求时,输出低电平信号,通过二极管接地,使得单片机响应外部中断请求。在中断服务程序中,通过查询单片机的输入输出端口来识别中断源。

使用特权

评论回复
38
saservice| | 2024-9-25 13:34 | 只看该作者
将外部中断源连接到定时器/计数器的计数输入端,利用计数溢出触发中断。

使用特权

评论回复
39
robertesth| | 2024-9-25 14:02 | 只看该作者
使用一些简单的逻辑门电路(如与门、或门、异或门等)来创建组合逻辑,从而将多个信号组合起来作为单一的中断请求信号。

使用特权

评论回复
40
mollylawrence| | 2024-9-25 14:16 | 只看该作者
利用定时器中断作为主中断源,然后在定时器中断服务程序中通过查询或轮询的方式判断具体的中断事件。这种方法可以模拟出多个中断的效果,但会牺牲一定的实时性。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则