• Sábado 21 de Diciembre de 2024, 11:22

Autor Tema:  Programar PIC 16F84a en C para comunicación serie ¿¿??  (Leído 2346 veces)

miniTania

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Programar PIC 16F84a en C para comunicación serie ¿¿??
« en: Viernes 7 de Mayo de 2010, 04:35 »
0
Hola, mi problema es que quiero programar un pic 16F84a para que reciba una señal serial de 8 bits y ponga un bit en cada pin que yo le señale, luego que me devuelva algun caracter, cadena o lo que sea a la PC.

Ya lo he hecho con ensamblador (copiando un ejemplo), pero el problema esq que no devuelve nada a la PC, y soy un ignorante total en ensamblador, por eso ahora lo quiero hacer en C y agregarle la función de que regrese algo a la PC.

Obviamente usaré un MAX232 como intermediario.

Ya tengo la parte de la PC, que es más o menos lo que está en codeproject en una liga que el foro no me deja poner, pero si buscan en google PicRS232 y codeproject de seguro sale.
 

Pero lo que nada más no encuentro por ningún lado es como programar el PIC en C, y creanme que tengo horas y horas buscando sin parar o.oU! y mi unica opción ahora es confiar en que alguien por aquí me ayude jeje.

Cabe mencionar que por la urgencia del proyecto no tengo tiempo ahora para aprender todas las bases para hacer esto (como leerme algun libro), así que si me pudieran decir como recibir la señal serie, mandarla a los pines que requiero y regresar algo a la PC sería más que suficiente.

 

PD. Creo que para mandar información a la PC encontré esto:


#include <16F84.H>

#define RS232_XMIT   PIN_A1
#define RS232_RCV   PIN_A0   // PIC line which receives PC transmission

#use delay(clock=4000000)   // 4 MHz OSC
#use rs232(baud=9600, xmit=RS232_XMIT, rcv=RS232_RCV)

main() {

 int i;
 
 while(1) {
   i = 65; // Recall ASCII 'A' is 65
   do {
     putc(i);
     delay_ms(1000); // send characters every 1 sec
     i++;
   } while (i<=122);     // Recall ASCII 'z' is 122
 }
} // end of main


Aunque igual no entiendo bien donde deciden qué pin hace qué...

 

Espero me puedan ayudar u__u...