xref: /btstack/port/archive/pic32-harmony/src/app_debug.c (revision bfc39f3e53bffb178d46475fc3f3e00a92502490)
1 //
2 // Minimal support for printf to USART
3 // - current version is just blocking
4 
5 #include "app.h"
6 #include "system_config.h"
7 #include "peripheral/usart/plib_usart.h"
8 #include "system/clk/sys_clk.h"
9 #include "system/ports/sys_ports.h"
10 
11 /// Debug Output ///
12 
13 // called by printf
_mon_putc(char c)14 void _mon_putc (char c)
15 {
16     while (!PLIB_USART_TransmitterIsEmpty(APP_DEBUG_USART_ID));
17     PLIB_USART_TransmitterByteSend(APP_DEBUG_USART_ID, c);;
18 }
19 
APP_Debug_Initialize(void)20 void APP_Debug_Initialize(void){
21 
22     // PPS Output Mapping:
23     PLIB_PORTS_RemapOutput(PORTS_ID_0, OUTPUT_FUNC_U1TX, OUTPUT_PIN_RPD3 );
24 
25     /* Initialize USART */
26     PLIB_USART_BaudRateSet(APP_DEBUG_USART_ID, SYS_CLK_PeripheralFrequencyGet(CLK_BUS_PERIPHERAL_1), APP_DEBUG_USART_BAUD);
27     PLIB_USART_HandshakeModeSelect(APP_DEBUG_USART_ID, USART_HANDSHAKE_MODE_FLOW_CONTROL);
28     PLIB_USART_OperationModeSelect(APP_DEBUG_USART_ID, USART_ENABLE_TX_RX_USED);
29     PLIB_USART_LineControlModeSelect(APP_DEBUG_USART_ID, USART_8N1);
30     PLIB_USART_TransmitterEnable(APP_DEBUG_USART_ID);
31 
32     PLIB_USART_Enable(APP_DEBUG_USART_ID);
33 }