栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

51 单片机 实战教程(八 外部中断扩展)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

51 单片机 实战教程(八 外部中断扩展)

       STC15系列单片机最多有4个外部中断,有时还是觉得不够用, 如我们用它做自动机的限位保护时就需要多个中断.例如点胶机三轴限位就要6个中断.加上点胶阀操控,上料控制共十几个也不算多。外部中断扩展大致有以下几种方法:

        1. 使用专用芯片,如8259A。

        2. 将内部定时/计数器做计数器使用,设置使其当计数值为1时即触发中断,就可当外部中断用.

        3. 用2的方法可将3路CCP/PCA当成外部中断使用。

        4. 外部中断端口二极管并接输入再加软件查询定位输入源法。由于这种方法占用资源比较少,本人比较喜欢使用,下面用一个实例来简单介绍一下。

        原理图如下:

     4 个I/O口外加一片CD4051与8只1开关二极管将INT0由一个扩展为八个。

    软件实现:首选使能中断及INT0中断,将INT0设置成下降沿触发中断,在中断函数中写出扫描触发中断源的代码,对不同的中断源,写出相应的响应代码。注意:方法4的实时性相对较差,因为输入源扫描,需要一些时间,要求高时,因谨慎选用。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/604821.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号