搜索
bottom↓
回复: 10

为什么在中断服务程序里面不能屏蔽中断呢?

[复制链接]

出0入8汤圆

发表于 2019-1-22 16:04:24 | 显示全部楼层 |阅读模式
比如我在一个应用中用到了外部中断,假如我想让某一段时间内CPU只响应第一次触发中断的脉冲,那么我可以在第一个脉冲触发中断后进入中断服务程序立马就把外部中断屏蔽掉(类似于按键的消抖)等一段时间过去后再打开外部中断,为什么在实际应用中不行呢?总是多次进入中断

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

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2019-1-22 18:17:31 | 显示全部楼层
标志没有清除吧

出0入0汤圆

发表于 2019-1-22 18:49:38 | 显示全部楼层
有的单片机的引脚INT中断可以屏蔽,有的单片机不可以,只能见到它心别烦

出0入0汤圆

发表于 2019-1-22 18:52:18 | 显示全部楼层
你可以用中断优先级来达成这个效果啊,这个优先级比别的高就好了······

出0入0汤圆

发表于 2019-1-22 23:59:00 | 显示全部楼层
在第二次外部中断使能打开前,先把其中断标志位清除。

出0入59汤圆

发表于 2019-1-23 07:56:24 | 显示全部楼层
不同的cpu特性不同,楼主连用的什么cpu、使用的哪个中断都没说清楚。。。

出35入0汤圆

发表于 2019-1-23 08:58:15 | 显示全部楼层
可能是太快了,要一进中断就用asm关...

出0入0汤圆

发表于 2019-1-23 09:12:19 | 显示全部楼层
个人感觉应该是可以的吧,楼主要试试先关中断,然后再清中断标志的逻辑。关中断有两种方式:中断向量表寄存器中断使能关闭,也可以把外部中断的相关寄存器关闭,可以都试试吧。旁边没有工具验证,只能说说自己的想法。

出0入8汤圆

 楼主| 发表于 2019-1-24 21:29:01 | 显示全部楼层
dykwai1 发表于 2019-1-23 07:56
不同的cpu特性不同,楼主连用的什么cpu、使用的哪个中断都没说清楚。。。

你好 是C8051 单片机,我想用C8051单片机的PCA模块实现STM8单片机TIM8定时器的单脉冲效果但是C8051单片机没有单脉冲功能我只能在PCA定时器溢出中断中关掉PCA定时器并且清除中断标志位 但是我发现进入中断后关掉PCA定时器他仍然还能工作

出0入0汤圆

发表于 2019-1-25 09:55:36 | 显示全部楼层
STM8是可以的。

出0入0汤圆

发表于 2019-1-26 09:04:37 | 显示全部楼层
進中斷後  清除外部中斷始能位
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-3-29 09:26

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

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