me ha surgido un problemilla programando a ver si m podeis ayudar ...
el problema que tengo cuando simulo con proteus es que el master no envia nada, por lo tanto el esclavo toma valor aleatorio en la variable valor.
codigo master:
#include <16f876.h>
#use delay(clock=4000000)
#use fast_io(c)
#use rs232(baud=9600, xmit=pin_c6, rcv=pin_c7, bits=8)
#include <lcd.c>
#use standard_io(b)
void main(){
int valor;
port_b_pullups(true);
set_tris_b(0x00);
set_tris_c(0x80);
lcd_init();
while(1){
for (valor=0;valor<=10;valor++){
putc(valor);
printf(lcd_putc,"\fEnviando %1D",valor);
delay_ms(500);}
}
}
codigo slave:
#include <16f876.h>
#fuses xt,nowdt
#use delay(clock=4000000)
#use fast_io(c)
#use rs232(baud=9600, xmit=pin_c6, rcv=pin_c7, bits =8)
#include <lcd.c>
#use standard_io(b)
int valor;
#int_rda
rda_isr(){
valor=getc();
}
void main(){
port_b_pullups(true);
set_tris_b(0x00);
lcd_init();
enable_interrupts(int_rda);
enable_interrupts(global);
for(;
{
lcd_gotoxy(1,1);
printf(lcd_putc,"\fReciviendo %1d",valor);
}}