我用两个示例程序,分别是串口中断程序(中断挂在INT5上,单独执行可进入中段函数),和vpif中断程序(中断挂在INT8上,单独执行也可进入中段函数),组成一个程序,含有以上两个终端,但奇怪的是每次都进入vpif中断,不能进入串口uart中断。vpif是16ms触发一次,uart是100ms发送一次,但是一次也不能进入uart中断。后来我把vpif中断函数 中的 刚进函数时 的 关全局中断 注释掉,也不能进入uart中断,很奇怪什么问题导致的?中断向量表中优先级INT5高于INT8,应该是进入uart中断的, 难道有其他地方可以修改中断优先级吗? 况且就算VPIF优先级高,但是16ms触发一次,中断函数很短,也应该轮到一次 uart中断才对,为什么uart一次都不能进入呢
xyz549040622:
怀疑还是你中断函数的问题,中断函数中操作什么东西了,你什么也不要操作。
Denny%20Yang99373:
可能某个中断函数里清了/关了 另一中断
Zhang Peng3:
回复 Denny%20Yang99373:
中断函数 全部注释掉 也不能进入uart中断。只有把vpif中断初始化 注释掉, 才能进入uart中断,好神奇。我只是将两个 示例中断程序合成一个,就不好用了
Denny%20Yang99373:
回复 Zhang Peng3:
仔细研究一下VPIF中断初始化,看看哪句导致这个问题?
估计是误操作