Interfaz rs232 - pic16f873

Hola leo, necesito tu ayuda: estoy empezando esto de la programación pic, y para comenzar logre hacer que se me prendan los leds (lo básico). Bueno, la cosa es que quise adaptar ese programa pero para poder prender/apagar pero vía com, usando el hiperterminal.
Pregunta: si no es con el hiperterminal, que otra cosa puedo usar para mandarle simplemente un "1" o un "0" al pic, y así prender, apagar..
Otra pregunta, para envío y recepción de datos, ¿hay qué setear demasiados registros en el pic? Lo que hago, es (para recepción en pic) verificar el rcif que este en 0, y luego leer el rcreg, nada más.. Bueno, en fin, ayudame como sea,
gracias
florencia

1 Respuesta

Respuesta
1
Es poco lo que tienes que setear en el PIC para hacer funcionar el Puerto serie, simplemente habilitas el Puerto con sus correspondiente patas (RX y TX que son los pines PORTC, 6 Y PORTC, 7) y especificas la velocidad en Baudios, esto es el registro "SPBRG", fíjate que en la hoja de datos del PIC hay una tabla en la que te dice el numero que le tienes que poner para la velocidad de trabajo dependiendo del cristal que tengas en el PIC, por ejemplo par una cristal de 20MHz y 9600 baudios se coloca "0X81"
Los registro de control de transmisión están en TXSTA y los de recepción en RCSTA, luego de esto ya esta preparado para enviar o recibir.
Para ver si ha recibido algo tienes que ver el bit PIR1, RCIF este se pone en "1" cuando recibes algo, es importante leer seguido esto ya que si te llegan más datos de los que lees por programa se te genera una error de Frame y esto hace que pare el receptor, fíjate de estar atento a los errores (RCSTA, FERR) y limpiar el registro CREN esto es así:
BCF RCSTA, CREN
BSF RCSTA, CREN
Sabrás que para enviar solo cargas con algo el registro TXREG, la transmisión es automática y para verificar si finalizo puedes leer el bit TXSTA, TRMT este se pone en "1" cuándo esta listo para enviar.
El tema del software para PC, si manejas algo de Visual basic, podrías hacer algo sencillo, este tiene soporte para trabajar con el puerto seria sin problemas.
Cualquier cosa me consultas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas