Hello there,
I met Hwi stackOverflow in UART_read function. When I watch by ROV, stackpeak is under 1000 in program running but somtimes suddenly occur stackoverflow
Here attach .cfg file, and uart initialize code
I use TMS320C6657 board and PDK_c665x_2_0_16, bios_6_76_03_01
I've already try changing 'Hwi.checkStackFlag = false'
and also my setting of System (Hwi and Swi) stack size is 8192. I think it is enough size to deal with because received data size is 256 bytes.
Could you help me firgure out this problem?
Best regards,
Nam
void UartTask::UART_Init()
{
Board_initCfg boardCfg;
// boardCfg = BOARD_INIT_PINMUX_CONFIG |
// BOARD_INIT_MODULE_CLOCK |
// BOARD_INIT_UART_STDIO;
boardCfg = BOARD_INIT_PINMUX_CONFIG |
BOARD_INIT_MODULE_CLOCK;
Board_init(boardCfg);
UART_HwAttrs attr;
UART_Params uparam = GetDefaultParams();
UART_socGetInitCfg(0, &attr);
UART_socSetInitCfg(0, &attr);
UART_init();
handle = UART_open(0, &uparam);
if(handle != NULL)
{
printf("UART Open\n");
}
}
UART_Params GetDefaultParams()
{
UART_Params param;
UART_Params_init(¶m);
param.baudRate = 115200;
param.readDataMode = UART_DATA_BINARY;
param.writeDataMode = UART_DATA_BINARY;
param.parityType = UART_PAR_NONE;
param.dataLength = UART_LEN_8;
param.stopBits = UART_STOP_ONE;
return param;
}