FAQ 常见问答
- Microcontrollers /
- MCU功能應用 /
- SN8PCxx Series /
- Interrupt
-
.可以在Interrupt Service Routine内执行Call吗?
-
.程式不进入中断,需要检查哪些方面?
-
.SONIX单片机有没有中断优先顺序?如何设置?
-
.P00设置完全正确,为何无法进入中断?
-
.为什么芯片无法进入中断?
-
.为什么程序中清FP00IEN后,本来应该禁止外部中断INT0,但在程序运行时发现也可进入?
SONIX的8位MCU中断机制是一旦在P0.0口接受到中断条件,总会设置相应的中断标志位FP00IRQ,但能不能进入中断还要看FP00IEN是否允许(这样做是为了客户采用查询方式的需要)。但是一旦中断标志位FP00IRQ被外部中断条件设定后,又有其他中断产生,此时若中断程序处理不当,则可能造成错误进入INT0中断。解决办法:
1.若中断程序中不需要INT0中断,则中断程序中不要查FP00IRQ标志。
2.若中断程序中需要INT0中断,应该配合FP00IEN一起使用,如下:B0BTS1 FP00IEN ;P00中断是否打开 JMP EXIT ;没有P00中断,退出 B0BTS1 P00IRQ ;进一步查询中断请求标志 JMP NEXT : NEXT: ;P00中断服务程序 : EXIT: ;退出中断服务程序 RETI
- Microcontrollers /
- MCU功能應用 /
- SN8PCxx Series /
- Interrupt