RF İletişim

Bu projede RF (Radio Frequency) sinyalleri kullanılarak RS232 protokolü ile verici devreden alıcı devreye veri aktarılmaktadır.



Alıcı ve verici devresinde Atmega8 kullanılmıştır, işlemcilere 12 Mhz kristal bağlanmıştır. 12 Mhz kristal ile 1200 baud data aktarımı için kusursuz zamanlama mümkündür. Kullanacağınız alıcı - verici modülünün gücüne ve kalitesine bağlı olarak açık havada 1km mesafeye kadar veri göndermek mümkündür.

Alıcı devrede C0,1,2,3 pinlerine 4 adet LED bağlıdır, verici devrede ise yine aynı pinlere bağlı 4'lü DIP switch bulunmaktadır. Verici devrede DIP swicthlerden biri ON yapıldığında, ilgili pin şasiye çekilir, bu bilgi RF ile alıcıya gönderilir, alıcı bu bilgiyi alınca aynı pine bağlı olan LED'i söndürür.

Önemli Noktalar

RF ile uzun süreli HIGH sinyal göndermek mümkün olmadığından, haberleşmenin "ters çevrilmesi" (invert) gerekir. Bunun için hem alıcı hem de verici devrede, BC547 ile yapılmış basit bir DEĞİL (not) kapısı kullanılmıştır (Resim 4,5). Transistörün değeri önemli değildir herhangi bir NPN tipi transistör kullanılabilir. Tersleme işleminin neden gerekli olduğunu öğrenmek için RS232 protokolünün detaylarına bakabilirsiniz.

while(1){
pp = PINC;
//alıcıyı alıştır 3+2 adet 0xAA gönder
UartPutChar(0xAA);
UartPutChar(0xAA);
UartPutChar(0xAA);
_delay_ms(SHORT_DELAY);

UartPutChar(0xAA);
UartPutChar(0xAA);
_delay_ms(SHORT_DELAY);

UartPutChar(0x55); //kontrol karakteri
_delay_ms(SHORT_DELAY);

UartPutChar(pp); //data
delay_ms(100);
}
}

Alıcının istikrarlı hale gelmesi için 4 adet 0xFF değeri ardından kısa bir bekleme ve 2 adet 0x00 değeri gönderilmektedir. Asıl veri gönderilmeden önce 0x55 değeri gönderilmektedir, alıcı 0x55 değerini aldıktan sonra gönderilen ilk byte'ın asıl veri olduğunu anlamaktadır.

Uzaktaki sensörlerden okunan verinin doğru okunmasının çok önemli olduğu hallerde, CRC gibi teknikler kullanılabilir.

Proje Dosyaları

Proje Dosyaları