Bu uygulamanın amacı, basit bir RF alıcı-verici mantığını PIC16F628A ile pratik olarak göstermektir. Devre iki ayrı bölümden oluşur: verici bölümünde anahtar bilgisi okunur ve RF üzerinden gönderilir, alıcı bölümünde ise gelen veri çözülerek ilgili çıkış aktif edilir. Temel anlatım 4 kanal üzerinden yapılmış olsa da, kaynak yorumlarda kod mantığının 8 kanala da uyarlanabildiği özellikle belirtilmiştir.
Not: Bu çizim bir Proteus ISIS simülasyon şeması olduğu için bazı gerçek donanım ayrıntıları sadeleştirilmiştir. Besleme bağlantıları, RF modülünün tam pin yapısı, anten düzeni, bypass kondansatörleri ve uygulamaya göre gerekli koruma elemanları gerçek devrede ayrıca düşünülmelidir.
4 kanal mı 8 kanal mı?
İçerik
- 1 4 kanal mı 8 kanal mı?
- 2 Devrenin çalışma mantığı
- 3 Yazılım tarafında dikkat çeken noktalar
- 4 RA0 ve RA1 neden kullanılmış?
- 5 Proteus şemasında görünmeyen ama gerçek devrede düşünülmesi gerekenler
- 6 Menzil ve uygulama sınırları
- 7 Malzeme mantığı ve genişletme yapısı
- 8 Uygulama açısından dikkat edilmesi gerekenler
Devre 4 kanal olarak anlatılmıştır. Ancak kullanıcı yorumlarında, yapının aslında 8 kanal çalışmaya da elverişli olduğu ve kanal sayısının giriş/çıkış sayısı ile artırılabileceği açıklanmıştır.
Bu nedenle bu proje en doğru ifadeyle 4 kanal temel örnekten 8 kanala genişletilebilen PIC16F628A tabanlı RF alıcı-verici uygulaması olarak değerlendirilebilir.
Kanal artırma mantığı doğrudan RF modülünden değil, mikrodenetleyicinin kullandığı giriş ve çıkış sayısından gelir. Yani RF kit veri taşıyan bölümken, kaç kanal kullanılacağı esas olarak yazılım ve çıkış yapısı ile belirlenir. Çıkış sayısını artırmak isteyenler için yorumlarda 74HC595 önerisi de geçmektedir.

Devrenin çalışma mantığı
Verici tarafta PIC16F628A, dip switch veya butonlardan aldığı bilgiyi seri veri haline getirip RF verici hibritine yollar.
Alıcı tarafta ikinci PIC16F628A, RF alıcı hibritinden gelen veriyi okuyarak ilgili LED ya da çıkışı sürer.
Kaynak koddaki mantık çok basittir: verici, belirli bir başlık bilgisi ile birlikte PORTB durumunu gönderir; alıcı ise aynı başlığı yakaladıktan sonra gelen veriyi PORTB çıkışına yazar.
Bu yaklaşım, öğretici olması açısından güzeldir. Çünkü kullanıcı yalnızca RF modülünü değil, aynı zamanda veri paketleme, veri alma ve çıkış sürme mantığını da görmüş olur.
Hazır modül seçimi konusunda RF modüller hakkında genel bilgiler içeriği de faydalı olabilir.
Yazılım tarafında dikkat çeken noktalar
Kaynak kodda hem alıcı hem verici için INTRC_OSC_NOCLKOUT seçildiği görülüyor.
Yani bu yapı korunursa PIC16F628A dahili osilatör ile çalışır ve harici kristal zorunlu değildir.
Bu detay önemlidir; çünkü simülasyon şemasında kristal görünmemesi, gerçek devrenin eksik olduğu anlamına gelmez, doğrudan yazılım konfigürasyonu ile ilişkili olabilir.
Bir diğer önemli nokta, verici tarafında buton veya dip switch girişleri için PIC’in dahili pull-up yapısından yararlanılmasıdır.
OPTION_REG=7 ifadesi özellikle vurgulanmıştır. Bu nedenle dışarıdan her anahtar için ayrıca pull-up direnci konulmadan sade bir giriş yapısı elde edilebilir.
Not: Kaynak kod içindeki bazı yorum satırları ile gerçek ayarlar birebir örtüşmeyebilir.
Bu yüzden uygulamada yorum satırından çok, kullanılan konfigürasyon komutları ve PIC derleyici ayarları esas alınmalıdır.
RA0 ve RA1 neden kullanılmış?
Şemaya ve koda bakıldığında RF veri hattının doğrudan PIC16F628A’nın donanımsal RX/TX uçları yerine farklı I/O pinlerine bağlandığı görülüyor.
Bu, ilk bakışta kafa karıştırabilir. Ancak kaynak yorumlarda bu konu sorulmuş ve CMCON=7 ile ilgili pinlerin dijital giriş-çıkış olarak kullanılabildiği belirtilmiştir.
Burada esas amaç, donanımsal USART zorunluluğu olmadan basit seri veri alışverişini doğrudan seçilen pin üzerinden yürütmektir.
Bu yaklaşım her zaman en hızlı çözüm değildir ama basit RF veri taşıma denemeleri için yeterli olabilir. Benzer mantığı farklı projelerde görmek isteyenler için RF uzaktan kumanda uygulamaları da incelenebilir.
Proteus şemasında görünmeyen ama gerçek devrede düşünülmesi gerekenler
- PIC16F628A ve RF alıcı-verici modüller için kararlı +5V besleme gerekir.
- Her PIC’in besleme pinlerine yakın konumda 100nF bypass kondansatörü eklemek iyi olur.
- RF modülün veri pini, besleme pini ve GND bağlantısı kullanılan hibritin gerçek pin dizilimine göre bağlanmalıdır.
- Menzil yalnızca yazılım ile değil; modül kalitesi, anten yapısı, besleme temizliği ve ortam gürültüsü ile de doğrudan ilgilidir.
- Simülasyonda görünen mantık doğru olsa bile, gerçek kartta topraklama ve besleme düzeni ihmal edilirse kararsız çalışma görülebilir.
Menzil ve uygulama sınırları
Kaynak açıklamaya göre devre açık alanda yaklaşık 150 metre, kapalı alanda ise yaklaşık 50 metre sorunsuz denenmiştir.
Bu değerler laboratuvar şartı değil, pratik gözlem olarak değerlendirilmelidir.
Kullanılan RF hibritin frekansı, çıkış gücü, besleme düzeni ve anten yapısı menzili ciddi biçimde etkiler.
Not: Yorumlarda 433 MHz hazır RF kitlerle çalışılabildiği ve örnek olarak ATX34/ARX34 benzeri modüllerin adı geçtiği görülüyor.
Ancak ana simülasyon şemasında kesin modül modeli verilmediği için uygulamada kullanılacak alıcı-verici kitin veri pini seviyesi ve besleme uyumu ayrıca kontrol edilmelidir.
Malzeme mantığı ve genişletme yapısı
Temel örnekte iki adet PIC16F628A, kanal sayısı kadar LED, kanal sayısı kadar buton veya dip switch ve hazır RF alıcı-verici hibriti kullanılır.
Kanal sayısı arttırılmak istenirse giriş ve çıkış sayısı da aynı mantıkla artırılmalıdır.
Bu yüzden aynı yapı 4 kanal, 8 kanal hatta daha fazla kanal için yeniden düzenlenebilir.
Daha gelişmiş bir uzaktan kontrol mantığı görmek isteyenler için 8 kanallı uzaktan kontrol örnekleri de fikir verebilir.
Uygulama açısından dikkat edilmesi gerekenler
- Alıcı ve verici aynı beslemede çalışıyor ama farklı beslemelerde sorun çıkarıyorsa önce ortak topraklama mantığı, regülasyon kalitesi ve RF modül besleme temizliği kontrol edilmelidir.
- Başlangıçta LED’lerin yanık gelmesi, çıkışların aktif seviye mantığı ile ilgilidir. Uygulamaya göre LED bağlantı yönü veya lojik terslenebilir.
- RF hibrit yalnızca veri taşır; kanal sayısını belirleyen şey yazılım ve I/O yapısıdır.
- modedefs.bas özel proje dosyası değil, PicBasic içindeki seri haberleşme tanımlarını kullanan standart kütüphane mantığındadır.
Bu proje, PIC16F628A ile temel RF veri gönderme ve alma mantığını öğretmek için hazırlanmış sade ama faydalı bir uygulamadır.
Kaynak anlatım 4 kanal üzerinden yapılmış olsa da, yorumlar ve güncel simülasyon görseli yapının 8 kanala genişletilebildiğini göstermektedir.
En güçlü tarafı, karmaşık protokoller yerine doğrudan anlaşılır bir veri akışı sunmasıdır. En zayıf tarafı ise Proteus şemasının gerçek uygulamadaki tüm donanım ayrıntılarını göstermemesidir.
Bu yüzden projeyi gerçek kartta kurarken besleme, RF modül pinleri, anten, filtreleme ve çıkış lojik seviyesi ayrıca gözden geçirilmelidir.
PIC16F628 ile 4 kanal alıcı veri RF uygulamasına ait picbasic pro kod dosyaları ve proteus isis simülasyon dosyaları;
Selam , devre çok güzel olmuş , elinize sağlık.
çok güzel bir devre yapmayı düşünüyoruz ancak alıcı ve verici hibriti nedir nereden temin edilir yaklaşık fiyatı nedir
saygılar….
selam devre güzel olmuş elinize sağlık. ben bu devrenin 8 kanallısını yapmak istiyorum. 8 kanallı kiti nerede bulurum. fiyatı nedir?
hibrit; bir çok malzeme ile yapılmış karma bir devredir.
alıcı ve verici devresindede karma malzemeler; direnç,kondansatör,diyot,bobin… olduğundan dolayı kısacası bir paket halinde üretilmiş devreler olduğu için hibrit ismini almıştır.
fiyatı ise 10 tl alıcı ve verici kiti.Her elektronik parça satan yerlerde bulabilirsin.
Merhaba devre güzel hazırlanmış bir sorum olacak kanal sayısını artırmak istediğimizde yine PIC16F628 mi kullanmamız gerekli
Selamün Aleyküm usta eline sağlık güzel olmuş 🙂 bu yazılımdaki modedefs.bas dosyasının içeriği nedir.
Merhaba arkadaşlar;
Bir konuya burda deyineyim; Şimdi devremiz normalde 8 kanallı ama ben 4 kanal için devre oluşturdum yani 8 kanal için bu kodlar ile çalışmaya elverişli
@ramon ve @onur devrede kanal sayısı arttırmamız için giriş sayımızı ya da çıkış sayımızı arrtımamız gerekir burda 4 kanal denilmiş 4 kanal 4 giriş ve 4 çıkış demek oluyor örneğin sen 8 kanal yapacaksın o zaman 8 adet giriş ya da 8adet çıkış kullanman gerekecek.
RF kiti sadece veri yollamak ve almak için yanlış anlaşılmasın bu kit ile ister 10 kanal ister 33 kanal giriş ya da çıkışlı devre tasarlayabilirsin?
include “modedefs.bas” Bu dosya ise poyraz seri iletişim için bize baundrate, paritybit…. gibi gerekli seri iletişim ile ilgili tanımlamalar ve kod tablosuna eklememiz için tanımlama yapmamız gerekecektir.
include “modedefs.bas” bu dosya ile ayrıyaten tanımlama yapmamıza gerek yoktur;
Kısacası;
1 kanal ; 1 giriş ve 1 çıkıştan oluşmaktadır.
8 kanal ; 8 giriş ve 8 çıkıştan oluşmaktadır.
kanal sayısı için çıkış kanal sayısını arttırmak için 74hc595.
Kanal sayısını artırmak için “modedefs.bas” dosyasını içinde nasıl bir değişiklik yapmalıyız.
poyraz kanal sayısının modedefs.bas dosyası ile hiç alakası yoktur o dosya seri iletişim komutlarını özelliklerini kod içersine akuple eder.
Kanal sayısı giriş ya da çıkış sayısı ile alakalı.
aykut 54 istanbuldamı bu kitler. saha zahmet olmazsa hem senin hemde bu kitlerden satan yerlerin bilgilerini verirsen sevinirim.
mailleşelim. kafamızdaki sorulara cevapları daha detaylı sorabiliriz..
@aykut54 selam arkadaşım bizde senin yapmış olduğun projeyi yapacağız mödülü entegrenin neresine bağlıyacağız yardımcı olursan memnun olurum
Selamlar; benim merak ettiğim verici devrede mesafeyi belirleyen eleman nedir. Nedenim ise kablosuz klavyemin mesafesi sadece 1,5m. ve bu mesafeyi artırmak için elimden birşey gelmemesi. Anteni klavye içinde arka kısma koymak yerine öne konumlamışlar, yani F1-F12 tuşlarının orada olacağına Space tuşununda önünde dar bi alanda konumlanmış. Bana fikir verebilirmisiniz, bu mesafeyi 5-6m civarına çıkarabilirmiyim ?
Merhaba 🙂 Ben bu devreyi yapmak istiyorum fakat veriler yetersiz malzeme listesini bulamadım kondansatör,transistör,diyot felan kulllanmadınızmı devrede?
Devre sahibi ile irtibata geçebilirmiyiz acaba ?
kanal sayısı ile modedefs dosyasının alakası yok
modedefs dosyası seri iletişimi yani serin ve serout komutunu çalışması için dahil ediliyor(pic basic de)
kitler önemli değil arkadaşlar…
önemli olan kitlerin ferkansı
433 mhz olan bütün kitler çalışır.
örn:atx34- arx34 kiti olabilir.
pic basic te serin ve serout komutları 433mhz de çalışıyor…
tabiki baund hızı da önemli 9600 baund da çalışıyor.bunun terslenmiş ve terslenmemiş olarak da gönderilmesi ferk ediyor.ayrıntılı bilgi işin seri iletişimi okuyun
arkdaşlar bu devreyi yapmadım fakat daha gelişmişi üzerinde çalışıyorum şuanda.Malzeme listesi olarak baktığınızda pek bi malzemesei yok açık şemasında görüldüğü gibi 2 adet pic16f628a 4adet led 4 adet buton yada dıpswıtch 4 adet 330ohm direnç 2 adet 4mhz kristal ve rf alıcı verici kit bukadar yani.Modülü nereye bağlanacağı sorulmuş oda açıkca görülüyor piclerin 18 nolu pinleri modüllerin data pinlerine bağlanacaktır.Kolay gelsin.
@hasan decvrede kullanılan malzemeler isis şemasındakilerdir…. PİC işlemcisine +5v vermen gerekir birde alıcı ve verici rf hybrid devlerine….yüksek gerilim ya da ters gerilim verme anlamadığın yer varsa yardımcı olalım
2 Tane PIC16F628A(628 mi 628A mı?),kanal sayısı kadar direnç,led ve dipswitch öylemi ?
Herşeyi anladımda programı nasıl atacağımızı anlamadım dolu dosya var rarda ?
Hangi programı kullanarak hangi dosyaları alarak biraz açıklama yaparsanız bu konuda 🙂
Proteus dosyasını açamadım versiyon sorunu oluyor galiba. Hangi versiyonda yapmıştınız?
arkadaşlar devrenın tepkisi bazı uygulamalar için yavaş kalıyor. bunu nasıl hızlandırabiliriz ? yazılımda bi bekleme döngüsü yok. ama yine de yavaş nedenini anlayamadım.
Allah razı olsun
güzel paylaşım
selam arkadaşlar ben bu devreyi yapmak istiyorum.fakat aklıma takılan bi soru var.ben rf modülünü alıcı verici modülünü hazır olarak satın alıcam.rf alıcı 8 ayaklı verici ise dört ayaklı.bunların bağlantısını nasıl yapıcam.yardımıcı olanlara şimididen teşekkürler.devrenin baskı devre şemasını ares de verirseniz sevinirim.
Merhabalar,
Bu piclere +5 v girişi nereden yapılıyor? isis simulasyonunda ne güç kaynağı var nede osilator bağlanmış, ne direnç nede kondansatör var. sadece piclerle ledler arasında kablolar var. açıkçası bu devreyi gerçek hayatta nasıl gerçekleyeceğimi çözemedim. bu devreyi gerçekleştiren birisi cevaplarsa çok makbule geçicek.
Yazarla iletişime geçmemiz mümkünmü acaba,bu seri iletiçim dosyası ve modedefs.bas dosyası ile ilgili bilgi verebilirmisiniz .zip dosyasının içinde böyle bir dosya yok ve nasıl nereye eklenecek bilgi verirmisiniz lütfen
@2_parmak modedefs.bas picbasic derleyicisinin içinde var standart kütüphane özel değil
Lütfen biraz daha açarmısın yazıyorum ama siteye düşmüyor.yani ben bu projeyi yaparken hex dosyaları haricinde bunlarımıda atacağım pice pic basic kullanmadım hiç.
verici devresindeki pike RF verici.hex yüklenecek alıcı devresindeki pike RF alıcı.hex yüklenecek
Peki .bas dosyaları ne işe yarıyor birde sanırım özelden konuşamıyoruz bu konuyu kaçıncıya yazıyorum yönetim siliyor.
kaynak kod dosyası devrenin çalışma şeklini değiştirmek isteyen kişiler kaynak kod üzerinde değişiklik yapıp yeni hex dosyası oluşturur yükler
benim pic programlama konusunda bilgim yok yazar ile iletişime geçebilirsiniz yazının sorunda yazar bilgisi bölümünde link var
abi bana 12 kanallı rf alıcı verici 16f628a nın pıc programları lazım devre hazır ama programı bulamıyorum yardım ederseniz sevinirim.teşekkürler..
arkadaşlar devreyi kurdum çalıştırdım ama.ilk başlangıçta ledlerin tamamı yanıyor.butona bastığımda hangi butona bastıysam o led sönüyor bıraktığımda tekrar yanıyor.ben basınca yanmasını istiyorum fakat bir türlü yapamadım. bu arada usb ile programlama yapmıyorum.com çıkışı üzerinden ıc prog ile yapıyorum.
merhaba burdaki verilen kodlar 4 kanal için mi 8 kanal içinmi anlayamadım videoda 4 kanal yapılmış. birde verilen kodlar hangi programda yazılıp pic’e atlacak yardımcı olursanız sevinirim.
Görüntüde 4 kanallısı var ama, dosyalar 8 kanallısı için
sayın gevv;
bu projede piclerin tx rx bacağını kullanmak yerine picin vericide porta.1 ve alıcıda porta.0 bacağı kullanılmış acaba bu doğru mu?
yani ben onları analog çıkış biliyorum ve rf alıcı vericide dijital data alıp gönderdiği için bir sorun teşkil etmez mi?
veya rf alıcı verici olarak ne kullandınız?
teşekkürler…
CMCON=7 kodu ile PIC’in giriş çıkışları digital yapılmış, RX ve TX pinleri neden kullanılmamış ben de anlamadım.
Merhabalar,
ellerinize, emeğinize sağlık. Çok güzel bir çalışma olmuş.
RX modülünün Analog girişini mi kullandınız?
Rx-TX modüllerinin pinlerinin PIC’te girişleri nelerdir, söyleyebilir misiniz?
Şimdiden çok teşekkür ederim.
İyi çalışmalar.
Normal olarak 16F628A PIC’inin 7.pini RX, 8.pini TX olarak kullanılır. Ama burada 18. pinler kullanılmış.
Devrenin 8 kanallı olanını denedim ve çalıştığını gördüm. Ancak bir sorun var ki o da şudur, alıcı ve verici devreleri aynı kaynaktan beslendiği(aynı pil, aynı adaptör v.b) zaman çalışmakta; fakat farklı kaynaktan beslendikleri zaman çalışmamaktadır. Farklı kaynaktan beslendiği zaman neden çalışmamaktadır. Rf alıcı verici modüllerle farklı yerlerde çalışmaları, dolayısıyla farklı besleme kaynaklarından beslenmeleri lazım. Yardımcı olabilecek kişilere teşekkürler.
Selam ben bu devreyi gerçeklemeyi düşünüyorum da devre hakkında daha fazla bilgi verebilir misiniz acaba?
Merhabalar bu projenin mikro c ko dosyaları varmıdır? Yoksa yardım sever biri yazabilir mi ?
Hocam kullanmış oldugunuz RF modüller hakkında bilgi verirmisiniz.Bende yapmayı düşünüyorum ama hangi RF modül alacağımı bilmiyorum öneriniz varmıdır?
8 Kanalli RF baskı devresi bulunan paylaşabilir mi? İyi çalışmalar
merabalar devre yi kurdum test ettim yanlız verici ve alıcı kısım çalıştıgında pı in cıkışındaki 8 kanal led yanmaya başlıyor ben burdan butona bastıgımla bastıgım kanalın ledi sönüyor. Ben devreyi başlattıgımda leddlerin yanmamasını bilgi gönderince yanmasını istiyorum yardımcı olabilirmisiniz
Ledleri ters bağla, en kolay çözüm bu 😀
ben uzaktan kumandalı zil devresi yapıcam yanlız kumanda kapı önünde olucak zil ise oda içinde yardımcı olursanız sevinirim