打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
51单片机外部中断使用注意事项

在使用单片机外部中断1时,可定义电平或者下降沿触发。

很多人在使用下降沿触发时,老是碰到这样的问题。同一个信号来触发时进入中断2次,或者多次进入中断函数。

造成这样的原因:第一、可能是中断信号有抖动,导致多次进入中断。第二、软件设计中,当进行中断响应处理时,关闭外部中断,当处理程序结束后,采用软件延时,再次请求中断。保证中断响应的不被再次中断请求打断。

 

1.对信号进行处理,估计是信号下降沿出现抖动
2.用单片机延时处理下降沿信号

 

2) 边沿触发方式时,中断标志寄存器锁存了中断请求。中断口线上一个从高到低的跳变将记录在标志寄存器中,直到CPU响应并转向该中断服务程序时,由硬件自动清除。因此当CPU正在执行同级中断(甚至是外部中断本身)或高级中断时,产生的外部中断(负跳变)同样将被记录在中断标志寄存器中。在该中断退出后,将被响应执行。如果你不希望这样,必须在中断退出之前,手工清除外部中断标志。

3) 中断标志可以手工清除。一个中断如果在没有得到响应之前就已经被手工清除,则该中断将被CPU忽略。就如同没有发生一样。

 

1.    进入中断,关闭中断
2.    把中断方式改为"电平"  !!!!
3.   在主程序中循环扫描了N次
4.   把中断方式改为"边缘"  !!!!
5.   开中断

中断标志位 是不能软件控制的, 以下方法可把中断标志位清零:

关中断 ---  电平 ---- 边缘

边缘: 下降沿触发方式  setb it0     |   setb it1  
电平: 低电平触发方式  clr    it0      |   clr    it1

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
外部中断:边沿触发与电平触发区别[ZT]
基于串口通信的单片机仿真和C语言开发(3/6)
51单片机的简介
单片机内部结构详解
第4章 中断
单片机_第5章 单片机的中断系统_单片机中断系统
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服