大家好
我使用了 CC2640的 UART。 下面是我对 UART 的初始化。
空 UART_Send_Init (空)
{
UART_PARAMS_INIT (&UART_Test_params);
UART_Test_params.波特 率= UART_BAUD_RATE;
UART_Test_params.readMode = UART_MODE_callback;
UART_Test_params.readDataMode = UART_DATA_Binary;
UART_Test_params.writeDataMode = UART_DATA_binary;
UART_Test_params.readCallback = UART_READ_CALLBACK;
UART_Test_params.dataLength = UART_LEN_8;
UART_Test_params.stopbits = UART_STOP_ONE;
UART_Test_params.readEcho = UART_ECHO_OFF;
UART_Test_Handle = UART_open (Board_UART、&UART_Test_params);
wantedRxBytes=1;
UART_READ (UART_Test_Handle、rxBuf、wanedRxBytes);
}
当我使用以下代码关闭 UART 时、CC2640的电流约为6uA、可满足系统要求。
admin_status_mode = 0;
GAPRole_TerminateConnection();
APP_Adv_Set (false);
UART_Send_String ("+sleep\r\n");
UartClose_GpioOpen ();
如果我只在 上面的代码中注释 UART_Send_String ("+sleep\r\n")。 电流将增加至1mA。
如果我 在初始状态下对 UART_Read (UART_Test_Handle、rxBuf、wanedRxBytes)进行注释、并对 UART_Send_String ("+sleep\r\n")进行注释。 电流 大约为6uA。
那么、为什么在使用"UartClose (GpioOpen)"之前未发送某些数据时无法关闭 UART?
谢谢你
维克多