piyasada 433 mhz hazır alıcı verici moduller var.bunlardan bir takım alıp;
vericide diyelimki 8 bitlik(1 byte) data göndermek istiyorsun.
önce 20 ms high gönder
sonra 10 ms low gönder
arkasından gönderecegin datası her seferinde saga bir kaydır
eger kaydırma sonucu
0 ise:
1 ms high
3 ms low
1 ise:
3 ms high
1ms low
gönder ve bu islemi 8 kere tekrarla
butona basıldıgı sürece bu bilgileri tekrar tekrar gönder
şimdi alıcı kısmında gönderilen bilgiyi okumaya çalısacagız
alıcı kısmında
15 ms den daha büyük süre(15 ile 20ms arası) high gelip gelmedigini kontrol et
eger ilk bilgi dogru gelmisse asagıya dallan yok istenilen uzunlukta degilse basa dönüp dinlemeye devam etsin
daha sonra 5 ile 10ms arasında low bilgi gelmissse eger
daha sonra gelen high bilgilerin süresi 1.5ms den büyükse gelen data=1, 0.5 ile 1 ms arasında ise data=0
demektir.
bu dataları rx registerinin sıfırıncı bitine yaz ve her okuma işleminde rx registerini sola bir kaydır.
bu işlemi 8 kere tekrarladıgında gonderilen datayı okumus olacaksın.
okuma işleminin güvenligi için gönderilecek datayı 8 bit degilde 24 bit olacak sekilde yukarda yazdıklarıma benzer bir programla yaparak ilk iki bytnın senin önceden ayarladıgın bilgiyle aynı olup olmadıgını kontrol edip eger dogru ise 3.bytın gelen bilgi olduguna emin olabilirsin.
fikir vermesi açısından assembly dilinde yazılmıs ekde gönderdigim programı inceleyebilirsin.