void InitApp(void)
{
/* Setup analog functionality and port direction */
PORTA = 0x0000;
LATA = 0x0000;
TRISA = 0x0000;
PORTB = 0x0000;
LATB = 0x0000;
TRISB = 0x0000;
PORTC = 0x0000;
LATC = 0x0000;
TRISC = 0x0000;
PORTD = 0x0000;
LATD = 0x0000;
TRISD = 0x0000;
ADPCFG = 0xFFFF; // Todos digitales
// UART1
// 115200bd
// TRANSMISIÓN
U1MODEbits.USIDL = 1; // Descontinua en modo idle
U1MODEbits.ALTIO = 0; // UXTX
U1MODEbits.WAKE = 0; // Wakeup disabled
U1MODEbits.LPBACK = 0; // ---------------
U1MODEbits.ABAUD = 0; // Detección baudios por el RX
U1MODEbits.PDSEL = 0; // 8bits sin paridad
U1MODEbits.STSEL = 0; // 1bit de parada
// RECEPCIÓN
U1STAbits.UTXISEL = 0; // Deshabilita interrupciones en el envio datos
U1STAbits.URXISEL = 0b00; // Interrupción cuando se recibe un caracter completo
U1BRG = 10; // 115200
IPC2bits.U1RXIP = 7; // Máxima prioridad
U1MODEbits.UARTEN = 1; // Habilita UART
U1STAbits.UTXEN = 1; // Habilita la transmisión
//IFS0bits.u1
// INTERRUPCIONES
INTCON1bits.NSTDIS = 1; // Habilitamos el anidamiento de interrupciones
}