请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:AM4379 工具/软件:TI-RTOS
您好!
PDK_AM437X_1_0_6
PRU-ICSS-HSR-PRP-DAN_01.00.02.00
BIOS_6_46_04_53
CCS7
请查看我的示例代码:
UART_PARAMS_INIT (params);
params.parityType = UART_PAR_ODD;
params.readEcho = UART_ECHO_OFF;
params.readTimeout = 1000;
Params.readReturnMode = UART_return_full;
params.readDataMode = UART_DATA_BINARY;
uartGPS_Handle = UART_OPEN (USART_GPS_INST、¶ms);
if (uartGPS_Handle = NULL){
UART_printf ("无法打开 UART GPS\n\r\n);
返回;
}
while (1){
memset (buf、0、sizeof (buf));
if (UART_READ (uartGPS_Handle、buf、10)){
UART_printf ("%s\n"、buf);
}
否则{
UART_printf ("超时\n");
}
}
问题症状:
我不断"超时"。 在将 UART 参数设置为 BIOS_WAIT_FOREVER 并且任务卡在 UART_READ 上之前。
如果我在 UART_READ 之前放置硬件断点、则会显示数据并将其打印到控制台。
我错过了什么? 奇怪的是,如果我在 while 中停止 CPU 的时间很短,代码就会起作用。。
此致、Mare