搜索
bottom↓
回复: 16

请问外部低电平开时,一开中断(边沿触发)是否就会触发中断?

[复制链接]

出0入0汤圆

发表于 2012-3-29 08:42:34 | 显示全部楼层 |阅读模式
本帖最后由 chinky 于 2012-3-29 08:58 编辑

请问51CPU当外部中断脚是低电平时,是否会一开外部中断(下降沿触发) 就触发一次中断?

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

发表于 2012-3-29 08:48:20 | 显示全部楼层
下降沿触发:高电平向低电平跳变触发一次中断

出0入0汤圆

发表于 2012-3-29 08:50:09 | 显示全部楼层
C51的外部中断引脚,有两触发中断的方式
你配置了下降沿触发,
如果有下降沿到来,且下降沿至少要维持一个机器周期才能触发中断

出0入0汤圆

 楼主| 发表于 2012-3-29 08:52:50 | 显示全部楼层
yanjs1016 发表于 2012-3-29 08:50
C51的外部中断引脚,有两触发中断的方式
你配置了下降沿触发,
如果有下降沿到来,且下降沿至少要维持一个 ...

我说的情况是,开中断前已经是低电平的情况.普通情况下,我是清楚的

出0入0汤圆

发表于 2012-3-29 08:57:18 | 显示全部楼层
可能是你之前就触发了。试试 再你开外部中断之前,清一下标志位。

出0入0汤圆

 楼主| 发表于 2012-3-29 08:59:55 | 显示全部楼层
dianzimingong 发表于 2012-3-29 08:57
可能是你之前就触发了。试试 再你开外部中断之前,清一下标志位。

我也不知是否会发生.我是想知这种情况是否会出现

出0入0汤圆

发表于 2012-3-29 09:00:51 | 显示全部楼层
chinky 发表于 2012-3-29 08:52
我说的情况是,开中断前已经是低电平的情况.普通情况下,我是清楚的

如果开启中断,上一个机器周期检测如果是高电平,下个机器周期检测是低电平,

将置位中断标志位。

出0入10汤圆

发表于 2012-3-29 09:07:45 | 显示全部楼层
为保安全,在开中断前,先清一下中断标志是最好的。

出0入0汤圆

发表于 2012-3-29 09:10:27 | 显示全部楼层
下降沿触发 就是要一个下降沿,你一直都是低电平的话 就不是下降沿,所以不会中断。

出0入0汤圆

 楼主| 发表于 2012-3-29 09:20:07 | 显示全部楼层
本帖最后由 chinky 于 2012-3-29 09:21 编辑
anvy178 发表于 2012-3-29 09:10
下降沿触发 就是要一个下降沿,你一直都是低电平的话 就不是下降沿,所以不会中断。 ...


我就担心这种情况会发生.
因为我使用INT0作为掉电检测,且使用了Small RTOS51,该OS会间断性的关中断,所以我担心关中断后重开中断是否会错过掉电检测.

出0入0汤圆

发表于 2012-3-29 09:51:29 | 显示全部楼层
可以设电平或是边沿触发的

出0入0汤圆

 楼主| 发表于 2012-3-29 09:59:25 | 显示全部楼层
ourdev850725 发表于 2012-3-29 09:51
可以设电平或是边沿触发的

电平触发会一直触发的,这不是我所想的.看来要找时间实物验证一下了

出0入0汤圆

发表于 2012-3-29 10:04:55 | 显示全部楼层
chinky 发表于 2012-3-29 09:20
我就担心这种情况会发生.
因为我使用INT0作为掉电检测,且使用了Small RTOS51,该OS会间断性的关中断,所以 ...

虽然你关了中断,但是那个外部中断标志还没有清除,如果你来得及在下一次下降沿来之前开中断,应该能读到这一次的有效信号,你可以写个简单的程序测试一下,就是关了中断,然后给一个下降沿给INT0,然后再开中断,看会不会响应你的中断。(没有仿真器的话,用LED模拟看,INTO设置好后,关中断 然后亮灯,反正是测试 你就搞个几秒的延时,时间长点是为了让你加触发信号,几秒延时完后开中断 如果响应中断就灭灯,这样就可以测出来了)

出0入0汤圆

发表于 2012-3-29 10:09:38 | 显示全部楼层
chinky 发表于 2012-3-29 09:59
电平触发会一直触发的,这不是我所想的.看来要找时间实物验证一下了

如果是设的边沿触发,就必须是在信号跳变的时候才会发生中断,一直是低电平是不会触发进中断的(除非是设的低电平触发),这就是电平触发和边沿触发的区别

出0入0汤圆

发表于 2012-3-29 14:32:42 | 显示全部楼层
下降沿触发是要有高电平向低电平跳变的时候产生,一直低电平是不能触发中断的!要外部从一直的低变高再次变为低的时候才能触发这个中断!

出0入0汤圆

发表于 2012-3-29 14:38:36 | 显示全部楼层
chinky 发表于 2012-3-29 08:52
我说的情况是,开中断前已经是低电平的情况.普通情况下,我是清楚的

你在初始化的时候,中断还没使能的时候,把对应的引脚拉高后再中断使能啊

出0入0汤圆

 楼主| 发表于 2012-3-30 08:44:52 | 显示全部楼层
经过在STC MCU上验证,当外部中断脚是低电平时,一开外部中断(下降沿触发) 就会触发一次中断
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-24 02:29

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表