大家好、我正在运行一个具有5-6个线程的应用、并且器件运行正常、在某些情况下、如果发生电源故障、并且在一段时间后、如果为器件供电、则不会执行预期的操作。
我的主函数:
int main (空)
{
pthread_t thread =(pthread_t)空;
pthread_t gSpawn_thread =(pthread_t) NULL;
pthread_attr_t pAttrs、pAttrs_spawn;
struct sched_param primParam;
int retc;
int detachState;
/*呼叫板初始化函数*/
Board_initGeneral();
/*初始化连接到网络处理器和外设 SPI 的 SPI 接口(如果在板级配置文件中定义)*/
InitTerm();
LOG_OUT ("UART 已初始化\n");
spi_init();
GPIO_init();
I2C_init();
adc_init();
_wl_watchdog_timer_init();
wl_timer_init();
I2C_Initialization ();
…
…
}
InitTerm 是用于设置 USB 日志的函数:
UART_Handle InitTerm (void)
{
UART_Params uartParams;
UART_INIT();
UART_PARAMS_INIT (uartParams);
uartParams.writeDataMode = UART_DATA_TEXT;
uartParams.readDataMode = UART_DATA_TEXT;
uartParams.readReturnMode = UART_return_full;
uartParams.readEcho = UART_ECHO_OFF;
uartParams.baudrate = 115200;
uartHandle = UART_OPEN (Board_UART0、uartParams);
/*从 LPDS 依赖项中删除 UART 接收*/
UART_CONTROL (uartHandle、UART_CMD_RXDISABLE、空);
return (uartHandle);
}
一旦 调用 Board_initGeneral() 和 InitTerm (), 我就会打印日志,它运行正常,应用程序也运行正常, 但是、在重新插入电源的随机情况下、器件不会打印日志、因此应该出现故障、这是上述功能之一。 此问题我无法生成、它是在电源故障时随机发生的。
为此 原因,问题可能出在哪。
2.是否阻止要调用的主函数或上述任何函数阻止执行某项操作。
此致、
Chiranth H D.