小弟使用的是STM8S208RB芯片。在使用过程中,STM8 总中断关断后,但仍进入TIMER 1捕捉中断,TIMER4计时中断(另的中断不知道)。
出现的概率不是很高,出现后就连续出现。
大家有没有出现过这种状况?
请教二姨家的大神,有东东会引起这种状况呢?又该怎么解决?
怎么关断总中断的?
关断总中断后多长时间又有中断?
IAR的编译器
sim();函数关中断, rim();开中断
中间的时间有30-50MS,若未关断成功则中间时间会被拉长20%
不敢相信你说的事情,这是不可能的!
请检查CC寄存器的I0和I1标志位。
关中断后我执行 发码动作约30-50MS(时间与码的长度有关);
若关全局中断没有成功,则发码动作中发生中断 拉长发码时间 ,拉长了20%的时间
CC 寄存器看看什么 ?
?位5,3
I[1:0] :软件中断优先级位 这两位表明当前中断请求的优先级。当一个中断请求发生时,相应的中断向量 的软件优先级自动从(ITC_SPRx) 载入I[1:0]。 I[1:0] 可以通过RIM,SIM,HALT,WFI,IRET 或者PUSH/POP等指令来软件置位和清零。(参见图20)
I1
I0
优先级
级别
1
0
0级(主程序)
低 ↓ 高
0
1
级别1
0
0
级别2
1
1
3级(=禁用软件优先级)
CC寄存器的另几位是什么含义???
看这个TI TO有什么意义,我的TIMER1捕捉中断是最高优先级!
...
5L
STM8S技术参考手册V4 中关于CC Register 描述
问一下版主 你要我看CC Register,看它做什么?
它跟中断有什么关系???
有没有可能是设置可能让SIM()失效,或者有可能 普通外设中断设置成不可屏蔽的中断
1)关于CC Register 描述就已经介绍了CC寄存器的另几位是什么含义。
2)如果I1=1同时I0=1则表示全局中断已被关闭,察看这2位就可以知道目前全局中断的状况。