İki PIC arasında SPI haberleşme sorunu

_MeRKeZ_

Üye
Katılım
30 May 2011
Mesajlar
44
Puanları
1
Yaş
32
Merhaba Arkadaşlar,

İki adet PIC'in SPI üzerinden haberleşeceği bir uygulama geliştiriyorum. Uygulamanın çalışmasını deneme amacıyla da örnek olarak 8 bayt verinin iletimini yapmayı denedim. Sunucu her bir baytı yolladıktan sonra istemci de ona karşılık yine bir bayt yolluyor ancak ilk veri iletimi esnasında sorun çıkıyor. Sunucu veriyi doğru bir şekilde iletiyor ancak gelen değer 0 olması gerekirken 49 -yani 1 değerinin asci karşılığı dönüyor- Dönen verinin 49 olmasının sebebi ise, haberleşmeyi başlatacağım zaman sunucudan gönderdiğim '1' değeri. Bu durumu nasıl çözebilirim sizce?

Teşekkürler.

Sunucu

Kod:
            output_low(Istemci1);
            spi_write('1');
            output_high(Istemci1);
           
            for(i=0;i<8;i++)
            {
               if(denetim==1)
               {
                  denetim = 0;
                  gelenVeri = 0;
                  output_low(Istemci1);
                  spi_write(veri[i]);                  
                  while(!spi_data_is_in());
                  gelenVeri = spi_read();
                  output_high(Istemci1);
                  denetim= 1;
                  printf(lcd_putc,"\fVeri: %d",gelenVeri);
                  delay_ms(500);
               }
            }


İstemci

Kod:
         if(spi_data_is_in())
         {
         
            veri = spi_read();
            delay_ms(5);
           
            if(veri == '1')
            {
               for(i=0;i<8;i++)
                {    
                  while(!spi_data_is_in());
                  veri = spi_read();
                  delay_ms(5);
                  spi_write(i);
                }
             }
          }
 

Forum istatistikleri

Konular
129,689
Mesajlar
929,036
Kullanıcılar
452,395
Son üye
gkmeens

Yeni konular

Geri
Üst