Kablosuz 1 bit veri gönderme PIC Programlama YARDIM.

Başlatan wolfbey, 31 Aralık 2013, 17:05:11

wolfbey

Arkadaşlar merhaba. Bilgisayar Mühendisliği 4. sınıf öğrenciyim. Şuan RF ile Kablosuz alıcı - verici projesi yapıyorum. PIC programlamayı bilmiyorum. C#'da app için arayüzünü yazdım. Sadece PIC kodlarının mikroişlemciye atılması kaldı ama programı yazamıyorum.

Program şöyle; Metin kutusuna SADECE 1 harf girilecek. yani 1 byte'lık veri girilecek. Gönder butonuna basılacak. Verici devre kartım bunu Seri port ile Bilgisayardan Okuyup, Alıcı Devre kartına gönderecek.

Alıcı Devre için kullandığım Mikrodenetleyici "PIC16F628A",
Verici Devre için kullandığım Mikrodenetleyici "ICL232CPE".

Mikrodenetleyicilerin yapması gereken; PC'den bu bilgileri alan verici kartı, 1 byte'lık veriyi Hexadecimal'e çevirip alıcıya gönderecek. Alıcı da bunu okuyup, Hexadecimal'in değerini LED yakarak gösterecek.

Devre hazır. C# arayüz hazır. Sadece PIC'e atılacak .hex kodları lazım. Yardımcı olabilecek varsa çok memnun olurum.

atioky_216

Yanliz icl232 entegresi bildigin rs232 donusturucu gibi duruyor. Senun bu entegreye degil rf haberlesme icin kullanilacak entegreye ihtiyacin var. Udea yada bluetooth entegresi hc-5 mi idi emin degilim, bunlari kullanacak olursan burada onlaru kullanan cok kisi cok fazla.

LukeSkywalker

Devre şemanızı ve C# kodlarınızı görmeden yardım etmek zor. Çünkü kodlar devre şemanıza göre yazılacak ve gerekirse c# programınızda da değişiklik yapılacak. RF modül olarak ne kullandınız?

wolfbey

ALICI DEVRE ŞEMASI


VERİCİ DEVRE ŞEMASI




RF Modülüm:


kudretuzuner

Merhaba,
Data iletimi bit olarak değil byte olarak veya bytelar gurubu(string) şeklinde olur. RF ile de iletim yapacağınıza göre esas data sinyali dışında uyandırma sinyallerini de ihmal etmemeniz gerekecek.Konuya hakim arkadaşlar daha geniş bilgi vereceklerdir.Kolay gelsin.
Amatör

LukeSkywalker

Verici alıcı çifti 434MHz'lik ASK rf modüllerden. Korkarım C# programı da baştan yazılacak. Çünkü kesik kesik tek byte veri gönderebilmek için her seferinde toplam 16 byte veri göndermek (preamble+senkron+veri) gerekiyor. Ayrıca ledlerde hex değerin gösterileceğinden bahsetmişsiniz ama 4 led var. Nasıl gösterilecek acaba hex değeri 4 ledle? Çünkü her harf 8 bittir ve bu ledlerle hex olarak değilde binary olarak gösterilebilir. Ama 4 ledle arka arkaya yakılarak gösterilebilir. İlk önce yüksek değerli 4 bit, daha sonra düşük değerli 4 bit gösterilebilir.

wolfbey

Program parçacığı hakkında ne yapacağım ? diğer sorunları bi şekilde hallederim ama Mikrodenetleyici programlama en büyük sorunum şuan :(

ehliseyf

Alıntı yapılan: LukeSkywalker - 01 Ocak 2014, 23:03:00
Nasıl gösterilecek acaba hex değeri 4 ledle? Çünkü her harf 8 bittir ve bu ledlerle hex olarak değilde binary olarak gösterilebilir. Ama 4 ledle arka arkaya yakılarak gösterilebilir. İlk önce yüksek değerli 4 bit, daha sonra düşük değerli 4 bit gösterilebilir.

tahminimce maskeleme yapılarak kullanılabilir. büyük yada küçükleri 0 ile AND işlemi yaparsa kalanlar değersiz bilgi gibi olur.
Code'm mu oturturum !

bg29

Aynı olay üzerinde çalışıyorum bende fakat atx arx kullanıyorum.
Verici ve pic ile veri göndermeden önce 5 adet 0xAA (veya 0x55 ) sonra 5 tane 0x00 gönderiyor. Bundan sonra göndermek istediğimiz verinin gönderilmesi gerekiyormuş.
Yani uyandırılması gerekiyormuş RF modüllerinin. Ayrıca kimiside tek bitlik veri için uyandırmaya gerek yok diyor. Bende sizin gibi tek bitlik veri gönderecem devremi kurdum assembly dilinde kodumu yazdım uyandırma işlemi yapmadan veriyi gönderdim başarıya ulaşamadım şimdi ise uyandırma ile deniyecem.
Bununla ilgili araştırdım hatta sitede yardım için konuda açtım. Ama sonuca ulaşamadım zor bir olay kolay gelsin.