Hi Isaac,
Please find the attachment UART waveform capture. Below is the code snippet used for UART initialization.
#define BLE_UART_INSTANCE 1
void configure_uart_pins(uint32_t instance)
{
switch(instance) {
case 1:
PORT_HAL_SetMuxMode(PORTE,00u,kPortMuxAlt3); // UART1_TX
PORT_HAL_SetMuxMode(PORTE,01u,kPortMuxAlt3); // UART1_RX
PORT_HAL_SetMuxMode(PORTE,02u,kPortMuxAlt3); // UART1_CTS
PORT_HAL_SetMuxMode(PORTE,03u,kPortMuxAlt3); // UART1_RTS
break;
default:
break;
}
}
static void ble_configure_pins_mux (void)
{
// Configure respective RS232 for BLE communication.
// PTE 0, 1, 2 & 3 as TX, RX, CTS & RTS respectively
configure_uart_pins (BLE_UART_INSTANCE);
}
uart_status_t ble_comm_init (uint32 u32_baudRate)
{
uart_user_config_t BleUartConfig;
UART_Type * const BaseAddr = g_uartBase[BLE_UART_INSTANCE];
uart_status_t RetVal =
ble_configure_pins_mux();
BleUartConfig.baudRate = u32_baudRate;
BleUartConfig.bitCountPerChar = kUart8BitsPerChar;
BleUartConfig.parityMode = kUartParityDisabled;
BleUartConfig.stopBitCount = kUartOneStopBit;
// Initialize the UART
RetVal = UART_DRV_Init(BLE_UART_INSTANCE, &BleUartState, &BleUartConfig);
// Enable RTS
UART_HAL_SetReceiverRtsCmd(BaseAddr, 1);
// Enable CTS
UART_HAL_SetTransmitterCtsCmd(BaseAddr, 1);
return RetVal;
}
int32 main()
{
uart_status_t RetVal = ble_comm_init(115200);
uint08 u08_data[10];
if (RetVal == 0)
{
UART_DRV_SendData(BLE_UART_INSTANCE, u08_data, sizeof(u08_data));
}
return 0;
}
Thanks & Regards,
Praveen Kajjam
