EDA365电子论坛网
标题:
怎么在定时器中断程序中把中断关上
[打印本页]
作者:
tryeverythingop
时间:
2021-3-1 15:36
标题:
怎么在定时器中断程序中把中断关上
如题,我需要在打开定时器5S后进入中断函数:
8 c( `9 K8 K$ M$ r& [( @
void interrupt LEDINT() //中断响应函数 大致是150000000为5秒左右 datasheet 30MHZ
* Y0 C5 W2 J9 }7 `$ L
{
; h% T+ r" i. T- i& q! a9 l8 b8 u
( e& r* A: h# f* W- P9 w
//CSR&= 0xfffe; // 关中断 GIE=0
" X3 @2 V1 `0 n
# _7 e% o+ H/ W% F: ?6 N
asm(" NOP 1 ");
' [# O3 ~! t0 E6 E
ICR = 0xFFF0;
8 S: o3 d- C! D0 }! {6 Y
ISR=0x0;
7 s. F$ {% k. L. ]; B' j) }3 ~& _% ?# \
printf("\nok");
- L' k0 u) h& H) h" a
TIMER0_INTCLSTAT=0x3; // 清除定时器中断标志
7 F: z# C3 l( n2 k1 a
asm(" NOP 1 ");
7 q& j, m0 \& K, i7 R
PWM_1_stop();
2 B, s8 Q/ v' r. q4 h" X
PWM_2_stop();
4 d$ P7 G. W- @* \6 F
PWM_3_stop();
+ c+ G: p1 a @, \0 n0 Z
PWM_4_stop();
& o( H; x9 B6 ?
PWM_5_stop();
# K9 h |+ X; z. i
CSR&= 0xfffe;
+ F% U4 P5 e2 Q9 Y6 c6 t: u
9 w$ c9 Y/ |/ l% ]4 O
}
I% W5 U& ]$ K6 A' I# o. X* q. O' R
但是我在最后加上一句关闭全局中断,还是会不断地进入终端函数,确定别的地方并没有再次打开,请问怎么办???
6 F2 y8 M6 Q) |- |
作者:
embnn
时间:
2021-3-1 16:13
禁止全局中断就行了 楼主 一般没有什么难度吧
作者:
qq666888qqw
时间:
2021-3-1 16:15
直接把定时器的中断停了
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2