大家好
最近1310要低功耗,串口部分耗电比较多,我们这里串口不用的时候准备关闭串口,但是关闭串口后程序死机
串口初始化代码
UART_init();
UART_Params_init(&uart_params);
uart_params.readMode = UART_MODE_CALLBACK;
uart_params.readCallback = Uart_ReadCallback;
uart_params.writeDataMode = UART_DATA_BINARY;
uart_params.readDataMode = UART_DATA_BINARY;
uart_params.readReturnMode = UART_RETURN_FULL;
uart_params.readEcho = UART_ECHO_OFF;
uart_params.baudRate = baudrate;
uart0 = UART_open(Board_UART0, &uart_params);
if (uart0 == NULL)
{
System_abort("Error opening the UART");
}
串口关闭代码
if(uart0 != NULL)
{
UART_readCancel(uart0);
UART_close(uart0);
uart0 = NULL;
}
调试关闭串口后死机停止部分
谢谢各位了
Viki Shi:
0x1001bbd2这个地址应该是在ti_sysbios_family_arm_m3_Hwi_excHandler__I,怀疑是程序里堆栈定义的问题。参考下这边的方法: e2e.ti.com/…/555798
user4586837:
回复 Viki Shi:
谢谢您,
找到原因了,关闭read的时候也会进入回调,此时回调中还有串口打印在执行所以死机