TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: Franc749 en 08 de Marzo de 2007, 18:29:10
-
Hola Les consulto una duda que tengo en la progamacion de mi proyecto.
La idea es adquirir por el conversor analogico a digital del pic 16F873 y enviar este dato adquirido por puerto serie via una MAX RS232.
No entiendo bien que linea tengo que poner.
Estoy usando esta:
int posi;
posi=read_adc();
printf("%%f",posi);
Pero no se si envia lo que se adquirio y se guardo en posi o si envia string "posi" en ascii.
Estuve viendo lo que envia con el programa lookrs232, pero siempre envia lo mismo.
Alguna idea?
Salu2
-
Lo primero que debes hacer es declarar el uso del RS-232 mediante:
#use rs232(baud=9600, xmit=EM202_RX, rcv=EM202_TX)
Ahí le "dices al PIC" los pines que vas a usar para la transmisión y la velocidad que vas a usar. También puedes mirar si el PIC tiene USART para usar sus pines y disponer además de las interrupciones correspondientes.
Para mandar datos puedes usar los printf de forma normal o incluso puts, etc...
Mira en este mismo foro una sección de ejemplitos donde hay un post titulado: "lo mínimo para comunicarse por RS-232" y ahí tendrás un ejemplo muy sencillo y totalmente funcional.
Un saludo!!
-
Hola.
Si configure previamente el
#use rs232(baud=2400,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8)
Pero no puedo encontrar el post que decis. :(
-
Este es el post general de ejemplos donde hay varios ejemplos con RS-232:
http://www.todopic.com.ar/foros/index.php?topic=4530.0
Y este es el post al que me refería:
http://www.todopic.com.ar/foros/index.php?topic=4620.0
Espero que te sirvan de ayuda.