MikroC Uart Sorunu

Başlatan muratelbeyli, 15 Eylül 2014, 20:59:24

muratelbeyli

Merhaba arkadaşlar iki pic arasında şifreli uart haberleşme yapmak istiyorum fakat kodları defalarca incelememe rağmen çalıştıramadım yardımcı olursanız çok sevinirim. Picler pic16f628a

**************************************************************Verici

char i=0,k=0,l=0;
char yak1[3]={'y','a','k'};
char yak2[3]={'y','a','g'};

void kurulum(){
UART1_Init(2400);
trisb.f0=1;
trisb.f3=1;
portb.f0=0;
portb.f3=0;
delay_ms(100);

}

void main()
{
kurulum();

while(1)
         {
if (portb.f0==1){
for(i=0;i<10;i++){
for(k=0;k<3;k++){
while(uart1_tx_idle()==1)
uart1_write(yak1[k]);
}
}
   }
if (portb.f3==1){
for(i=0;i<10;i++){
for(k=0;k<3;k++){
while(uart1_tx_idle()==1)
uart1_write(yak2[k]);

}
}
   }
         }
}

********************************************************************alıcı

char data1,led1=5,led2=6,i=0;
char msg1[3];

void kurulum()
{
UART1_Init(2400);
trisb.f0=0;
trisb.f3=0;
portb=0;
Delay_ms(100);

}

void main()
{
char data1,led1=5,led2=6,i=0;
char msg1[3];
kurulum();
while(1)
       {
        if(Uart1_data_ready()==1){
         msg1=uart1_read();
         if(msg1[0]=='y'){
         i++;
         }
       }
       if(i==3) {
       i=0;
       if(msg1[0]=='y' && msg1[1]=='a' && msg1[2]=='k'){
       portb.f0=1;
       delay_ms(100);
       portb.f0=0;
       }
       if(msg1[0]=='y' && msg1[1]=='a' && msg1[2]=='g'){
       portb.f3=1;
       delay_ms(100);
       portb.f3=0;
       }
       
       
       }
       }
       }