AT89S51多外部中断源系统设计
AT89S51为用户提供两个外部中断请求输入端INT0(的反)和INT1(的反),实际的应用系统中,两个外部中断请求源往往不够用,需对外部中断源进行扩充 。下面介绍一种扩充外部中断源的方法 。
如下图所示,若系统中有5个外部中断请求源IR0~IR4,它们均为高电平请求有效,这时可按中断请求的轻重缓急进行排队,把其中最高级别的中断请求源IR0直接接到AT89S51的一个外部中断请求源IR0输入端INT0,其余的4个中断请求源IR1~IR4按下图所示的方法通过各自的OC门(集电极开路门)连到AT89S51的另一个外中断源输入端INT1,同时还连到P1口的P1.0~P1.3脚,供AT89S51查询 。各外部中断请求源的中断请求由外部设备的硬件电路产生 。采用如下图所示的电路,除了IR0的中断优先权级别最高外,其余4个外部中断源的中断优先权取决于查询顺序,这里假设查询顺序为P1.0~P1.3,因此,中断优先权由高到低的顺序依次为IR1,…,IR4 。中断优先权的高、低取决于查询顺序 。
假设上图的4个外部设备中有一个外部设备提出为高电平有效的中断请求信号,则中断请求通过4个集电极开路OC门的输出公共点,即INT1脚的电平就会变低 。那么究竟是哪个外部设备提出的中断请求,还要通过程序查询P1.0~P1.3引脚上的逻辑电平来确定 。本例假设某一时刻只能有一个外部设备提出中断请求,并设IR1~IR4这4个中断请求源的高电平可由相应的中断服务子程序清0,则处理INT1的中断服务子程序如下:
【AT89S51多外部中断源系统设计】查询法扩展外部中断源比较简单,但是扩展的外部中断源个数较多时,查询时间稍长 。
推荐阅读
- AT89S51中断服务子程序的设计
- AT89S51定时器/计数器的结构
- AT89S51单片机与82C55的接口设计编程
- 气候变化 木桶浴缸需多多保养
- 成婚多年后夫妻感情淡了,婚姻决裂怎么抢救?
- 多吃盐会引起水肿吗,哪些技巧可以减少盐摄入量
- RoboBee的折纸启发式制造工艺是否可以用于构建多种规模的机器人?
- 分手后,十二星座能与上一任复合的几率是多少,天蝎打死不回头
- 开放式厨房清洁保养诀窍
- 科宝橱柜产品品质详细解析