avatar_ete

PIC Basic Ders-14 (RF haberleşme)

Başlatan ete, 28 Ağustos 2011, 16:27:17

ete

Menüden çıkışta, sonuna  TEMP=RCREG yazıver bakalım. Menüden çıkışta TX buffer'ı doluyorsa veri almayı keser.
Kesme bayrağıda aktif olup sıfırlanmamış ise yeniden kesmeye giremez. Bu şekilde oluyor ise TEMP=RCREG bu işin ilacı olur. Hem buffer'ı boşaltır hemde kesme bayrağını sıfırlamış olur.
Programda hem kesme kullanıp hemde Pause ler kullanmış isen buda sorun yaratır. Program olmayınca ancak müneccim vari yorumlar yapabiliyorum maalesef.

Ete


M.A.A

Program çok uzun (her biri 1500 satır civarında) o yüzden programı yazmadım. Ama program olmadan da bildiniz :) Menulerde tuşa art arda basılmasın diye pause komutu kullanmıştım, onları bekleme döngüsü ile değiştirine sorun düzeldi. Çok teşekkür ederim :))

Mucit23

Ete hocam Merhaba

Konu Assembly ile ilgili aslında ama PicBasic'in bana yardımcı olacağını umuyorum.

ASM ile RF haberleşme programı yazdım. USART haberleşmesinde felan sıkıntım yok. Sistem gerçektede çalışıyor fakat şöyle bir sıkıntı var.

RF alıcı Parazit sinyallerden çok etkileniyor. O kadar yoğunki çoğu zaman benim gönderdiğim datalar parazit sinyallerin arasında kayboluyor. Hatta parazit sinyaller alıcıda data göndermişim gibi algılanıp işleme koyulabiliyor

PicBasic'deki gibi güvenlik önlemi almam lazım.  Mesela PicBasic'de Seri porttan data gönderirken aşağıdaki gibi göndereceğimiz paketin başına başlıklar koyarız. Hatta uyandırma sinyalleri felan göndeririz.

SEROUT2 PORTA.0,396,["M","C","T",VERi]

Bunları Assembly'de nasıl uygularım?
Bir ulusu yok etmenin En iyi yolu o ulusun dilini yok etmektir.

www.arectron.com/

ete

Alma kısmını mı soruyorsun verme kısmı mı belli değil ama temel mantık aynı nasıl olsa.
Bana kalırsa her iki konumda da usart registerlerini kullanman gerekir. Verirken txreg (ismi yanlış hatırlıyor olabilirim) alırken de Rcreg üzerinden çalışırsan, sırası ile işaretçi datalarını bu registerler üzerinden hem yollayıp hemde geldimi diye kontrol edbilirsin.
Vermek her zaman kolaydır onun üzerinde durmuyorum. Alma kısmında  bir ksme olmuş ise rcıif set ediliyor biliyorsun. Kesmeye sebep olan bir parazit sinyali olabilir. Öncelikle işaretçinin ilk harfi gelmiş mi diye bakman gerekir. Onu alınca ikinciyi onuda alınca üçüncüyü alıp ardından geleni direk alman gerekir. Parazit olayı genelde bir veri gelmediği anlarda alıcının ürettiği analog sinyalden kaynaklanıyor. Veri gelmeye başladığı zaman ise veri sonuna kadar araya parazit gireceğini sanmıyorum. Bunu basicde çalıştırdığım programlardan kolaylıkla anlayabiliyorum.
Bu açıklama yeterlidir sanıyorum.

Ete

Mucit23

Gönderme kısmı pek problem değil. Alma kısmını halletmem gerekiyor. Biraz uğraşayım
Bir ulusu yok etmenin En iyi yolu o ulusun dilini yok etmektir.

www.arectron.com/

ozdenatabey

Hocam öncelikle herkese kolay gelsin. Foruma yeni üye oldum. Uzunda bir süre takip etmeyi planlıyorum. Belki doğru yere yazmıyorum ama böyle güzel bir çalışma hazırladığınız için ayrıca teşekkür etmeden geçemedim. Ellerinize sağlık..  :)

Acuf

Merhabalar. Ders 14 için ete'ye teşekkürler. Çoğu konu kafamda netleşti ancak şu konuda yardımınıza ihtiyacım var. Örn benim elimde 100 tane verici 1 tane alıcı var. Bu 100 tane vericiden birine basıldığında alıcı hangisine basıldığını anlamasını istiyorum. Yani her bir verici kendine özgü bir sinyal göndermeli ki alıcının oraya koyacağım pic ile bunu ayırt edip işlem yapabileyim. Bunu nasıl veya hangi malzemelerle yapabilirim? Veya ders 14 te anlatılan PT2262 ve PT2272 ile bunu yapabilir miyim?

ete

Her bir alıcının bir üye numarası (ID No) olması gerek. Verici bir emir yollarken emrin kime ait olduğunuda yollarsa sorunun çözülmüş olur. Emir,uye şeklinde 2 byte yollarsın ve sistemi normal seri iletişim kuracak şekilde tasarlarsın böylece dediğim şekilde sistem düzgün çalışır..

http://etepic.com/index.php/topic,57.0.html Konusunu incele benzer özellikler taşıyor mantık olarak tabiiki.

Ete

Powered by EzPortal