弱弱问一个关于51 的中断 嵌套问题,困扰一晚上了...

2020-01-30 14:17发布

RT,

CPU 用C8051

外设用到了 串口Uart0 和 SMBus总线口 SMBus0

查手册,串口优先级是4 SMBus优先级是7,因此串口优先级高于SMBus(硬件优先级)

然后我想实现:

串口监听指令,收到指令后经过判断 指令内容,然后执行相应的 I2C指令(SMBus)

我在串口中断中调用到了 I2C的发送指令,但是经测试貌似无法进入到 I2C的中断,即SMBUS的中断,,,

是否是因为SMBus的优先级较低而且串口的中断还没执行完毕,所以无法执行?

我通过软件修改优先级的方式 将串口优先级设为低, SMBUS设为高,,还是没反应



高手们,,能不能给我个思路~~谢谢!!!我承认关于中断嵌套我学的不够.....

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。