登录体验更流畅的互动沟通
检举 |2022/09/07 15:12
ADC采样前会进行页切换,当页切换后正好有I2C中断产生,导致中断里操作寄存器时页是不对的。处理方法有两种:
1、在ADC采样的页切换前关中断EA=0;
2、进入中断处理函数时让SFRS入栈
void PinInterrupt_ISR (void) interrupt 7
{
_push_(SFRS);
BIT_TMP=EA;EA=0;TA=0xAA;TA=0x55;SFRS=1;EA=BIT_TMP;
...
_pop_(SFRS);
}
nuvoton2022