En anteriores ejemplitos he utilizado alegremente una conexión con mi PC vía RS232, dando por supuesto que todos teníais el hardware y los conocimientos necesarios para ello.
Y no tiene por qué ser así. Por lo tanto quí tenéis los estrictamente necesario para conectar vuestro PIC 16F876A a un PC vía RS232. Para ello vamos a necesitar un circuito integrado MAX232 (o similar) que es el encargado de convertir la señal serie 0V/+5V a +12V/-12V, que es la que se usa en este tipo de conexión.
Datasheet del MAX232El hardware mínimo que hay que montar para establecer esta conexión se muestra en el siguiente esquema:
Aquí os pego una imagen del MAX232 ya montado en una placa de taladros y listo para recibir y enviar bytes:
Y por último el pequeño programa CCS que lo único que hace es presentarse como es debido, y posteriormente se pone a devolver, como eco, cualquier carácter que reciba por el puerto serie.
Codigo:
/************************************************************
Propósito: Testea la UART a 9600 baudios
Procesador: PIC16F876A con un crital de 4 MHz
Hardware: MAX232
Software: CCS PCM
************************************************************/
#include <16F876a.h>
#fuses XT,NOWDT,NOPROTECT,NOLVP,PUT,BROWNOUT
#use delay(clock=4000000)
#use rs232(baud=9600, xmit=pin_C6, rcv=pin_C7)
main() {
printf("PIC16F876A a la espera" ); // Envío mensaje de "estoy vivo"
while(true) {
putc(getc()); // eco de lo que recibo
}
}
Para establecer la comunicación con el PC podéis usar el Hyperterminal de Wyndows.
¡Ah! y no olvidéis configurar los parámetros del puerto COM tal como muestra la imagen inferior:
Con esto el PIC y vuestro PC hablarán hasta por los codos.
Hasta la próxima.