Haberler:

Foruma Resim Yükleme ve Boyut Sınırlaması ( ! )  https://bit.ly/2GMFb8H

Ana Menü

atx34 ve arx34 için yardım

Başlatan spooner, 05 Aralık 2007, 16:47:29

spooner

arkadaşlar udea dan aldığım ATX-34 ve ARX-34 alıcı verici modüller ile veri alış verişi yapmak istiyorum bana yardımcı olabilirmisiniz bir örnek program verebilecekmi varmı ilgilenen arkadaşlar için şimdiden tşk ederm

HT

Hocam iki pici seri haberleştirir gibi haberleştir, yeterli olacaktır. 2400 baudu geçmessen iyi olur :d

parda

udea nın sitesinde örnek kod vardı..
Bildiğim tek şey, hiç bir şey bilmediğimdir.

mustafa_cmbz

Alıntı yapılan: "parda"udea nın sitesinde örnek kod vardı..

siteyi biraz araştırın bolca örnek çıkacaktır....

yusuf3101

http://s2.dosya.tc/server25/m5Az2p/ARXveATXdeneme.rar.html

udanın ürettiği ATX ile ARX RF modülleri denemek için yazmıştım bu programı, konuyu yeni görecek olan arkadaşların işine yarayabilir diye upload ettim
saygılar

armsistem

Dosya paylaşan arkadaş keşke açık kodları paylaşsaydın.

mur@t

kabloyla yaptığınız  seri haberleşmeden farkı yok, sadece datadan önce eşzamanlama bilgisi göndermek gerekiyor.
http://skysdev.blogspot.com/2012/12/rf-alc-verici-moduller.html

yusuf3101

#7
Alıntı yapılan: armsistem - 26 Ocak 2013, 18:54:34
Dosya paylaşan arkadaş keşke açık kodları paylaşsaydın.

Yukardaki linkteki devrenin kodları ..Buyur kardeş

VERİCİ KOD

#include <12f675.h>
#fuses NOWDT,INTRC_IO,NOMCLR
#use delay(clock=4000000)
#use rs232 (baud=1200,xmit=pin_a5,parity=N,stop=1)

void main()
{
   setup_adc_ports(NO_ANALOGS|VSS_VDD);
   setup_adc(ADC_OFF);
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
   setup_timer_1(T1_DISABLED);
   setup_comparator(NC_NC);
   setup_vref(FALSE);
   set_tris_a(0xf);
   output_a(0x00);
   while(1)
   {
         
     while(input(pin_a0)) 
     {
      putc(0x55);
      putc(0x0f);
      putc(1992);
      putc('a');
      delay_ms(10);
     }
     
     while(input(pin_a1)) 
     {
      putc(0x55);
      putc(0x0f);
      putc(1992);
      putc('b');
      delay_ms(10);
     }  
     
     while(input(pin_a2)) 
     {
      putc(0x55);
      putc(0x0f);
      putc(1992);
      putc('c');
      delay_ms(10);
     }
     
      putc(0x55);
      putc(0x0f);
      putc(1992);
      putc('d');
      delay_ms(10);
   }

}



ALICI KOD

#include <16f627.h>
#fuses NOWDT,INTRC_IO, PUT, NOPROTECT, NOBROWNOUT, NOMCLR, NOLVP, NOCPD
#use delay(clock=4000000)
#use rs232 (baud=1200,rcv=pin_a0,parity=N,stop=1)
char veri=0;
void main()
{
   setup_timer_1(T1_DISABLED);
   setup_timer_2(T2_DISABLED,0,1);
   setup_comparator(NC_NC_NC_NC);
   setup_vref(FALSE);
   set_tris_b(0x00);
   output_b(0x00);
   while(1)
   { 
     if(getchar()==1992)
     {
     veri=getchar();
     }
     if(veri=='a')output_b(0x1);
     if(veri=='b')output_b(0x2);
     if(veri=='c')output_b(0x4);
     if(veri=='d')output_b(0x00);
   }
}


mesaj birleştirme:: 27 Ocak 2013, 13:09:41

eğer udeanın modüllerinden  ARX-34C ve ATX-34S ile yapacaksan kodlardaki Baud=1200 olan kısmı Baud=600  yaparsan daha sağlıklı çalışır iki kodda da aynı sayıyı girmen gerek yoksa çalışmaz.. o modülleri daha öncelerdeki araştırmamda bi forumda okumuştum 600 de daha sağlıklı çalıştığını
kesin bi bilgim yok yani fakat 1200 de de normal çalışıyor.
mesafe denememde ise açık alanda yakşalık 250-300 metre uzaklıktan görevini yapıyordu.
if(getchar()==1992)
     {
     veri=getchar();
     }

kodların bu kısmında şifre tanımlıyorsun ben bu ifreyi doğum tarihim olarak belirledim. sen istersen bunu çok daha uzun bi rakat yada harf olarak değiştirebilirsin yanlız bi yere dikkat emen gerek.

      putc(0x55);
      putc(0x0f);
      putc(1992);
      putc('a');

dikkat etmen gereken yer yukardakilerden 1992 yazan kısım alıcıdaki şifreyi değiştirirsen vericide de bu kısmı aynı yapman gerek.
putc(0x55); ve putc(0x0f); bu kısımlarda ise alıcıyı hazır hale getirmek için eşit aralıkta 0 ve 1'ler gönderiliyor. sen bu kısmada herhangibir karakter yada harfte koyabilirsin görevi sadece alıcıyı dürtmek gibi birşey. örneğin: arkadaşınla film izlediği varsayalım ve sen film arasında birşey söyledin fakat arkadaşın dalmış seni duymuyor burada arkadaşını önce dürtüp sana dönmesini sağlayıp sonra konuşman gerek değilmi işte buda bunun aynısı
alıcıyı önce dinleme moduna alıp sonra istenilenleri iletmek oluyor. tabi dürtme bitlerini değiştirmemen daha sağlıklı olacaktır yani alıcının datasheeptinde yukardaki şekilde gösterilmiş..
putc('a'); bu kısım ise her kontrol için atanmış karakterler, şifre kısmındaki gibi bunuda uzun bir sayı yada farklı bi karakter olarak değiştirebilirsin yanlız kodlardaki gibi hepsi birbirinden farklı olmalı, şifre ilede aynı olmamalı..
saygılar..