麻烦请教大神们一个问题,
所用的芯片为ARM7的LPC2138;
编写了一个串口接收中断函数,将接收到的数据保存到一个全局变量中,经测试可以正常接收,接收完后可以回到主程序。
在主函数中,会调用一个void test1(void)函数;
出现的问题是,程序开始,调用void test1(void)函数,在执行void test1(void)函数的过程之中,向串口发送数据,触发串口中断,中断执行完后,会继续执行void test1(void)函数,但在执行完void test1(void)函数后,就不能正常回到主函数继续执行,在这时再向串口发送数据,仍然能正常触发接收中断,但就是回不到主函数。
如果在执行void test1(void)函数的过程中,不触发接收中断,void test1(void)函数函数执行完后,可以正常回到主程序继续执行。
代码如下图所示:
接收串口中断服务函数
串口初始化函数:
void test1(void)函数
请问这个问题可能是哪里出了问题?