Hola necesito hacer una comunicacion semi duplex es decir que le mando algo a un segundo pic desde un pic y que este segundo me conteste, pero no logro hacerlo, desde ya muchas gracias a quien pueda ayudarme o hacerme notar mi error.
Los programas estan hechos en ccs.
Transmisor
receptor
De vuelta Gracias.
Los programas estan hechos en ccs.
Transmisor
Código:
#include <16f628a.h>
#fuses XT,NOWDT,NOMCLR
#use delay(clock=4mhz)
#use rs232(baud=9600, xmit=PIN_B0, rcv=PIN_B1)
#define LED_0 PIN_B4
#define LED_1 PIN_B5
int valor;
#int_rda
void rda_isr(){
valor=getc();
}
void main(){
enable_interrupts(int_rda);
enable_interrupts(global);
while(true){
output_low(LED_0);
if (input(PIN_A0)==0){
output_high(LED_0);
printf("a"); //ENVIAR CARACTER a
delay_ms(200);}
if (valor=="b"){
output_high(LED_1);
delay_ms(300);
output_low(LED_1);
}
}
}
receptor
Código:
#include <16f628a.h>
#fuses XT,NOWDT,NOMCLR
#use delay(clock=4mhz)
#use rs232(baud=9600, xmit=PIN_B0, rcv=PIN_B1)
#define LED_0 PIN_B4
int valor;
#int_rda
void rda_isr(){
valor=getc();
}
void main(){
enable_interrupts(int_rda);
enable_interrupts(global);
while(true){
output_low(LED_0);
if (valor=="a"){
output_high(LED_0);
delay_ms(300);
output_low(LED_0);
printf("b");}
}
}
De vuelta Gracias.