TODOPIC
Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: kenniata en 24 de Julio de 2007, 15:18:42
-
Buenas a todos!
Estoy intentando hacer una comunicacion sincrona entre un 16f628 y una radio que tengo. Tengo el datasheet y veo los valores que tendria que modificar para configurar a USART a modo sincrono pero no hay manera, no se como se hace. Trabajo en C y todos los ejemplos que he encontrado por el foro estan o en basic o en assambler. Alguien tiene algun ejemplo en C para que me pueda guiar?
Muchas gracias de antemano :-)
-
Buenas a todos!
Estoy intentando hacer una comunicacion sincrona entre un 16f628 y una radio que tengo. Tengo el datasheet y veo los valores que tendria que modificar para configurar a USART a modo sincrono pero no hay manera, no se como se hace. Trabajo en C y todos los ejemplos que he encontrado por el foro estan o en basic o en assambler. Alguien tiene algun ejemplo en C para que me pueda guiar?
Muchas gracias de antemano :-)
¿Y puedes mostrarnos lo que has intentado?
-
Aqui está el código. Es simplemente una recepcion de los datos por 2 puertos distintos.
#include <16f628A.h> // Selecciona el PIC
#fuses XT,NOWDT,NOPROTECT,NOLVP,PUT,BROWNOUT // Opciones de configuración
#use delay(clock=4000000) // Velocidad del Cristal : 4 Mhz
#use rs232(baud=9600, xmit=PIN_B2, rcv=PIN_B1,stream=radio,uart1,sync_master) // Definición del RS232
#use rs232(baud=9600,xmit=PIN_B3, rcv=PIN_B4,stream=pc)
char rx_radio,rx_pc;
#int_rda
void serial_isr() {
if(kbhit(radio))
rx_radio=getc(radio);
}
void main() {
enable_interrupts(global);
enable_interrupts(int_rda);
do {
if (kbhit(pc))
rx_pc=getc(pc);
} while (TRUE);
}
La UART la configuro como maestra pero una vez ahí, no se como continuar. Los valores de BGRH, TX9, SREN... no se como cargarlos dentro del codigo y trabajar con ellos