TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: fiolin en 07 de Julio de 2007, 14:34:07

Título: Escribir un string
Publicado por: fiolin en 07 de Julio de 2007, 14:34:07
Mi problema surge en querer escribir un string de datos en la memoria del pic que entran por la usart cuando se produce la interrupción por el puerto serial, pero no los guarda en le memoria.
Desde ya muchas gracias
Lo que hago es lo siguiente:

#include <16F628A.h>
#fuses XT,NOWDT,PUT,BROWNOUT
#use rs232(baud=9600,parity=N,xmit=PIN_B2,rcv=PIN_B1)

#define BUFFER_SIZE 32 //tamaño del buffer
byte buffer[BUFFER_SIZE];

#int_rda   //interrupcion por datos serial
RDA_isr()   
{
char b;
b=getch();
buffer[buff+1]=b;
buff++;
}

void main() {

   set_tris_b(0b11111011);   
   setup_vref(FALSE);
   setup_comparator(FALSE);
   port_b_pullups(True);
     enable_interrupts(INT_RDA);
 enable_interrupts(GLOBAL);
while(TRUE);
}
Título: Re: Escribir un string
Publicado por: RedPic en 07 de Julio de 2007, 16:08:37
Dale un vistazo a Recibiendo del RS232 sobre un Buffer y procesandolo posteriormente. (http://www.todopic.com.ar/foros/index.php?topic=4573.0)
Título: Re: Escribir un string
Publicado por: fiolin en 08 de Julio de 2007, 12:18:53
Gracias REDPIC adapté a mi programa partes de tus códigos y funcionó muy bien.
Nuevamente gracias.
Alvaro.
Título: Re: Escribir un string
Publicado por: RedPic en 08 de Julio de 2007, 12:44:07
Me alegro de que te haya servido.  :mrgreen: