El mplab trae una función para poder simular la USART del PIC que viene implementado en el hardware. Su configuración es muy sencilla y nos ahorrará varios dolores de cabeza para saber si está trabajando la USART de nuestro pic.
Para activar o desactivar, y para configurarlo, hay que ir a Debugger ----> Setting
Se nos abrirá una ventana con varias pestañas. Haremos click en USAT1 IO y vemos que la opción Enable usat1 IO está desactivada. Tanto sea para transmitir y/o recibir, debemos habilitarlo.
Para recibir datos en el usart, hay que crear antes de estos pasos, un archivo de texto común (txt) y escribir en él, los valores deseados a recibir en formato HEX, uno debajo del otro y sin espacio. Por ejemplo:
AA
FF
9FGuardamos los cambios, recomiendo hacerlo en donde tenemos guardado el proyecto y volvemos al MPLAB. Realizamos los pasos descriptos anteriormente y, en la parte donde dice INPUT, hacer click en Browse y elegir el archivo creado. Si solo se trabaja en modo RX de la usart, hacer click en aceptar y compilar de nuevo el proyecto para que los cambios surtan efectos.
Si deseamos transmitir datos de la USART, nos dirigimos a la siguiente opción Output ---> File. Hacemos click en Browser y elegimos el lugar donde se guarda el archivo (recomiendo en el mismo lugar donde tenemos guardado nuestro proyecto). Le damos el nombre al archivo y hacemos clicj en aceptar. Retornamos a la ventana anterior donde se configura y habilita o deshabilita el UART1 IO, hacemos click en aceptar y compilamos el proyecto para que surtan efecto.
Corremos el programa y en el archivo creado para transmitir por la usart, se van guardando los datos transmitidos. En el caso de recibir los datos en la USART, gracias al archivo creado con los valores deseados, se hiran cargando en el registro correspondiente a la recepción.
Cualquier duda, no duden en consultar.