// // // Base user terminal UART functions // // #include "base.h" //is data available in RX buffer? //#define UART1RXRdy() U1STAbits.URXDA unsigned char UART1RXRdy(void){ return U1STAbits.URXDA; } //get a byte from UART unsigned char UART1RX(void){ while(U1STAbits.URXDA == 0); return U1RXREG; } //add byte to buffer, pause if full //uses PIC 4 byte UART FIFO buffer void UART1TX(char c){ while(U1STAbits.UTXBF == 1); //if buffer is full, wait U1TXREG = c; } //Initialize the terminal UART void InitializeUART1(void){ //setup UART U1BRG = 34;//34@32mhz=115200 U1MODE = 0; U1MODEbits.BRGH = 1; U1STA = 0; U1MODEbits.UARTEN = 1; U1STAbits.UTXEN = 1; IFS0bits.U1RXIF = 0; }