此帖出自stm32/stm8论坛
最新回复
这样子做。
不知道你参考过什么例程。 一般来说,像我看到的这个是这样写的 disableInterrupts(); if ((GPIOC->IDR & GPIO_Pin_1) == 0x0)
{ i++;
if(i % 2)
GPIO_Init( LD4_GPIO_PORT, LD4, GPIO_Mode_Out_PP_High_Fast); else
GPIO_Init( LD4_GPIO_PORT, LD4, GPIO_Mode_Out_PP_Low_Fast); } EXTI_ClearITPendingBit(EXTI_IT_Pin1); while(mode--); enableInterrupts();复制代码 这是我自己写的一个点亮熄灭LED的小例程,头尾有一句 使能 和 禁止 中断。
在你说的问题里,最简单的解决方法是,如同这个例程段所示
在进中断以后,立马禁止中断再次发生。
然后等执行完出去以前,再打开中断使能。
当然,因为刚开始玩,我还不清楚这一句是控制所有中断,还是只控制这一句。
如果是控制所有,应该是可以有相应的选择屏蔽函数的,这个就要再研究了。
[ 本帖最后由 辛昕 于 2012-3-27 23:54 编辑 ]
详情
回复
发表于 2012-3-27 23:52
| ||
|
||
| |
|
|
此帖出自stm32/stm8论坛
| ||
|
||
回复 板凳 w9190040 的帖子
此帖出自stm32/stm8论坛
| ||
个人签名
强者为尊,弱者,死无葬身之地 |
||
浏览过的版块 |
曾经的版主且威望大于2000,或对EEWORLD论坛有突出贡献的坛友
EEWorld Datasheet 技术支持