Frmacil

Frmacil

Acil Sorunlara Acil Çözüm




Geri git   Frmacil >
(¯`·.(¯`·.Elektrik-Elektronik Projeler·´¯).·´¯)
> Elektrik & Elektronik > Elektronik Projeler

Forum Kuralları İletiler Kayıt ol Yardım Üye Listesi Ajanda Arama Bugünki Mesajlar Forumları Okundu Kabul Et


Dijital bellek (hafıza, memory) devreleri | Elektronik dökümanlar .. !!
Cevapla
 
Seçenekler Stil
Alt 12-06-2008   #1
Profil Bilgileri
Süper Moderator
 
DereeN - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2007
Bulunduğu yer: Kbh
Mesajlar: 8.609
Üye No: 580
Tecrübe Puanı: 103
Rep Puanı : 8094
Rep Derecesi
DereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond repute
Reklam
www.dantel-orgu.com
Standart İnferruj Data Transferleri Protokoller Devre Mantığı

Hazırlayan: Yıldırım AK SIRC Protokolü 40 kHz taşıyıcı üzerinde, 1 / 4 veya 1 / 3 Duty Cycle Oranı Bu protokol 5 bitlik cihaz kodu ...

Hazırlayan: Yıldırım AK






SIRC Protokolü

40 kHz taşıyıcı üzerinde, 1 / 4 veya 1 / 3 Duty Cycle Oranı
Bu protokol 5 bitlik cihaz kodu + 7 bitlik tuş kodundan oluşan 12 bitlik paket data bilgisi kullanır
Bu 12 bit yollanmadan önce, alıcı 24 ms High pozisyonda kalınıp kalınmadığını kontrol eder
Bu nedenle ilk biti göndermeden bu süreyi High pozisyonunda beklemeliyiz (Header Time) Daha sonra ilk bitten önce 06 ms süreyle göndereceğimiz data Low olmalıdır Bu iki işlemden sonra alıcı ilk bitin yollanacağını anlar (Header Time End) Bu iki işlem start bitini oluşturur
Göndereceğimiz bit eğer 0 sa çıkışı high durumunda 06 ms tutarız Daha sonra 06 ms süreyle low pozisyonunda tutarız
Göndereceğimiz bit eğer 1 se çıkışı high durumunda 12 ms tutarız Daha sonra 06 ms süreyle low pozisyonunda tutarız
Buradan anlaşılacağı üzere 0 olan bitlerde high kalma süresi 06 ms, 1 olan bitlerde high kalma süresi 12 ms ‘dir Her iki durumda da 06 ms LOW kalma süresi vardır Yani bir bit süresi bitin 0 veya 1 olmasına göre değişkendir ( 12 ms (0 olan bit) veya 18 ms (1 olan bit) )
İlk gidecek bit en sağdaki bittir (LSB) Örneğin Televizyon alıcısının cihaz kodu 1 dir Yani 5 bitlik cihaz kodu olarak “00001” Burada ilk giden bit en sağdaki 1 ve daha sonra sola doğru sırasıyla 4 tane sıfır biti
Tuş kodunda da data gönderim mantığı aynıdır
0 olan bitlerde high kalma süresi 06 ms, 1 olan bitlerde high kalma süresi 12 ms ve her bit arasında bekleme süresi 06 ms ‘dir
Kanal artırma tuşunun kodu 16 dır Yani 7 bitlik tuş kodu olarak “0010000” Yine sağdaki bitten başlayarak, en sağdaki 4 tane sıfır, daha sonra bir tane 1 ve sonrasında 2 tane sıfır biti gönderilir
Dikkat edilecek diğer bir nokta her paket data gönderimi arasında 45 ms beklemek olmalıdır (Start tan bir Sonraki starta)
Not : Bu protokolde yeni çıkan cihazlarda 15 bitlik ve 20 bitlik paketlerde kullanılmaktadır
Cihaz Kodları
1 Televizyon
2 VCR 1
4 VCR 2
6 Lazer disk çalıcı
12 Ses Cihazları
16 Mini Kaset/Radyo
17 CD Çalıcı
18 Ekolayzer
Tuş Kodları
0-9 Numerik Tuşlar
16 Kanal +
17 Kanal -
18 Ses +
19 Ses -
20 Ses Kesme
21 Açma
22 Resetleme
23 Ses Modu
24 Kontrast +
25 Kontrast -
26 Renk +
27 Renk -
30 Aydınlık +
31 Aydınlık -
38 Sol Balans
39 Sağ Balans
47 Kapama

 


Nick Ara
DereeN isimli Üye şimdilik offline konumundadır  
Sponsored Links
Yudumla   Mumsema   Derya Gibi   Oya
Alt 12-06-2008   #2
Profil Bilgileri
Süper Moderator
 
DereeN - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2007
Bulunduğu yer: Kbh
Mesajlar: 8.609
Üye No: 580
Tecrübe Puanı: 103
Rep Puanı : 8094
Rep Derecesi
DereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond repute
Reklam
www.dantel-orgu.com
Standart --->: İnferruj Data Transferleri Protokoller Devre Mantığı

RC5 Protokolü


36 kHz taşıyıcı üzerinde, 1 / 4 veya 1 / 3 Duty Cycle Oranı
Bu protokol 5 bitlik cihaz kodu + 6 bitlik tuş kodundan oluşan 11 bitlik paket data bilgisi kullanır
Bu protokol SIRC protokolunden tamamen farklıdır Bu Protokolde bir bit uzunluğu sabittir ve süresi 18 ms dir (aslında bir bit süresi 1778 ms dir)
Start ;1 (Start) + 1 (Field) + 0 (Control) olmak üzere 3 bitten oluşur
Alıcı Field bitini kontrol ederek, 6 bitlik tuş kodu ile gönderilebilecek toplamda 64 komutun 0-63 veya 64-127 aralığının hangisi için olduğunu anlar Bu bit sayesinde 6 bitlik tuş kodu 7 bit olarak kullanılabilir
Bitin 0 olması, bu 1800 us luk zamanın ilk 900 us luk kısmında datanın high, kalan 900 us luk zaman diliminde ise low olmasından anlaşılır
Bitin 1 olması ise, bu 1800 us luk zamanın ilk 900 us luk kısmında datanın low, kalan 900 us luk zaman diliminde ise high olmasından anlaşılır İlk gidecek bit en sağdaki bittir (LSB) Her paket data gönderimi arasında 114 ms bekleme süresi vardır
RC5 Protokolü ile ilgili önemli not
29 Temmuz 2004 tarihinde tesadüfen görülen durum
Philips RC5 protokolünde, Philips in yayınladığıda dahil olmak üzere tüm teknik bilgiler Start bitinin “1”, Field bitinin tuş takımı sayısına göre “1” veya “0” ve kontrol bitinin “0” olduğunu bildirmesine karşın, Philips 14PT serisi 37 ekran televizyonun orijinal kumandasında kontrol biti bazen “1” bazen “0” olarak gönderiliyor
Kumandaya bozuk demeye ramak kalmışken, test devremdeki TK19 çıkış sinyalini skopla kontrol ettiğimde durumu farkettim Acaba benim devredemi bir şey var diye skopla televizyonun orijinal kumandasının inferruj sürücü çıkışını kontrol ettiğimde durum yine aynıydı
Acaba televizyon yeni model olduğundan eski modellerle uyum sağlamaması için kontrol biti kullanılarak yeni bir özellik mi kullanılmış diye merak ettim ama televizyonda 97 model, yani yeni değil
Kumandanın bozuk olduğunu düşünenler olabilir
Ancak benim test devrem, kontrol bitinin sürekli “0” geleceğini düşündüğünden ve kontrol bitinin “1” gelmesinden dolayı diğer bitleri kontrol bile etmiyor Buda kontrol biti “1” olduğunda kodu çözmeyeceği sonucunu çıkartıyor Test devresi bu durumda bazen çalışıyor, bazen çalışmıyor Ancak televizyon üzerindeki alıcı devre her tuşa basışta kodu çözüyor Buda kontrol bitinin sürekli “1” olmadığı sonucunu ve kumandanın sağlamlığını doğruluyor
Ben bu duruma göre test devremdeki kodu güncelledim Artık kontrol biti ne olursa olsun her tuş basışını çözüyor Anlayacağınız üreticisi bile yayınlasa yazan her şeye güvenmemek gerekiyor
Merak edenler için kumanda üzerindeki etiket :
RC8205/01
3104 207 02781
OP009717

 


Nick Ara
DereeN isimli Üye şimdilik offline konumundadır  
Alt 12-06-2008   #3
Profil Bilgileri
Süper Moderator
 
DereeN - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2007
Bulunduğu yer: Kbh
Mesajlar: 8.609
Üye No: 580
Tecrübe Puanı: 103
Rep Puanı : 8094
Rep Derecesi
DereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond repute
Reklam
www.dantel-orgu.com
Standart --->: İnferruj Data Transferleri Protokoller Devre Mantığı

SHARP Protokolü


38 kHz taşıyıcı üzerinde, 1 / 4 veya 1 / 3 Duty Cycle Oranı
Bu protokol 5 bitlik cihaz kodu + 8 bitlik tuş kodundan oluşan 13 bitlik paket data bilgisi kullanır
Diğer protokollerden farkı start bitinin olmayışıdır Ancak paket sonunda iki kontrol biti vardır ve eğer yanılmıyorsam ilki “1” ikincisi “0” bitidir
Bir bit süresi bitin durumuna göre değişkendir 0 olan bitlerde 1 ms ve 1 olan bitlerde 2 ms dir Her iki durumda da sürenin ilk 320 us u high kalan süre low dur
Data gönderimi ; 0 olan bitlerde 320 us high, 680 us low ve 1 olan bitlerde 320 us high, 1680 us low şeklinde yapılmalıdır Data gönderme mantığı diğerleri ile aynıdır ve bir sonraki bit ara vermeden yollanmalıdır
İlk gidecek bit en sağdaki bittir (LSB) Her paket data gönderimi arasında 40 ms bekleme süresi vardır
NEC Protokolü


38 kHz taşıyıcı üzerinde, 1 / 4 veya 1 / 3 Duty Cycle Oranı
Bu protokol 8 bitlik cihaz kodu(x2) + 8 bitlik tuş kodundan(x2) oluşan 32 bitlik paket data bilgisi kullanır
Start biti SIRC de olduğu gibidir ancak header time 9 ms ve header time end 45 ms dir Start bitinden sonra, (8 bit cihaz kodu + 8 bit cihaz kodu) + (8 bit tuş kodu + 8 bit tuş kodu) şeklinde aynı datalar 2 defa tekrarlanır
Bu protokolde bit kullanımı SHARP ı andırır ancak bir bit süresi 0 olan bitlerde 112 ms ve 1 olan bitlerde 225 ms dir Her iki durumda da sürenin ilk 560 us u high kalan süre low dur Data gönderimi ; 0 olan bitlerde 560 us high, 560 us low ve 1 olan bitlerde 560 us high, 1690 us low şeklinde yapılmalıdır
Diğer protokollerden farkı ise “Repeat Start” özelliğidir
İlk starttan sonraki 110 ms bitiminde 9 ms high ve 225 ms low yollamamız durumunda Repeat Start durumu oluşur Bu durumda alıcı data kontrolü yapmadan (zaten vericide Repeat Start tan sonra data gönderiminde bulunmaz), vericinin bir önceki komutu tekrarladığını anlar ve bir önce aldığı komutu tekrar işler İlk gidecek bit en sağdaki bittir (LSB) Her paket data gönderimi arasında 110 ms bekleme süresi vardır

 


Nick Ara
DereeN isimli Üye şimdilik offline konumundadır  
Alt 12-06-2008   #4
Profil Bilgileri
Süper Moderator
 
DereeN - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2007
Bulunduğu yer: Kbh
Mesajlar: 8.609
Üye No: 580
Tecrübe Puanı: 103
Rep Puanı : 8094
Rep Derecesi
DereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond repute
Reklam
www.dantel-orgu.com
Standart --->: İnferruj Data Transferleri Protokoller Devre Mantığı

NEC Protokolü


38 kHz taşıyıcı üzerinde, 1 / 4 veya 1 / 3 Duty Cycle Oranı
Bu protokol 8 bitlik cihaz kodu(x2) + 8 bitlik tuş kodundan(x2) oluşan 32 bitlik paket data bilgisi kullanır
Start biti SIRC de olduğu gibidir ancak header time 9 ms ve header time end 45 ms dir Start bitinden sonra, (8 bit cihaz kodu + 8 bit cihaz kodu) + (8 bit tuş kodu + 8 bit tuş kodu) şeklinde aynı datalar 2 defa tekrarlanır
Bu protokolde bit kullanımı SHARP ı andırır ancak bir bit süresi 0 olan bitlerde 112 ms ve 1 olan bitlerde 225 ms dir Her iki durumda da sürenin ilk 560 us u high kalan süre low dur Data gönderimi ; 0 olan bitlerde 560 us high, 560 us low ve 1 olan bitlerde 560 us high, 1690 us low şeklinde yapılmalıdır
Diğer protokollerden farkı ise “Repeat Start” özelliğidir
İlk starttan sonraki 110 ms bitiminde 9 ms high ve 225 ms low yollamamız durumunda Repeat Start durumu oluşur Bu durumda alıcı data kontrolü yapmadan (zaten vericide Repeat Start tan sonra data gönderiminde bulunmaz), vericinin bir önceki komutu tekrarladığını anlar ve bir önce aldığı komutu tekrar işler İlk gidecek bit en sağdaki bittir (LSB) Her paket data gönderimi arasında 110 ms bekleme süresi vardır

 


Nick Ara
DereeN isimli Üye şimdilik offline konumundadır  
Alt 12-06-2008   #5
Profil Bilgileri
Süper Moderator
 
DereeN - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2007
Bulunduğu yer: Kbh
Mesajlar: 8.609
Üye No: 580
Tecrübe Puanı: 103
Rep Puanı : 8094
Rep Derecesi
DereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond repute
Reklam
www.dantel-orgu.com
Standart --->: İnferruj Data Transferleri Protokoller Devre Mantığı

NOKIA Protokolü


38 kHz taşıyıcı üzerinde, 1 / 4 Duty Cycle Oranı
Bu protokol 4 bitlik cihaz kodu + 8 bitlik tuş + 4 bitlik alt cihaz kodundan oluşan 16 bitlik paket data bilgisi kullanır
Start için ilk olarak 0 biti yollanır Daha sonra 2500 us boyunca low da beklenir ve 1 biti yollanır Toplam start süresi 4 ms dir
Start bitinden sonra sırasıyla 8 bit tuş kodu, 4 bit cihaz kodu ve 4 bitlik alt cihaz kodu yollanır
Bu protokol RC5 i andırır bir bit süresi 1 ms dir Bitin 1 olması, bu 1000 us luk zamanın ilk 500 us luk kısmında datanın high, kalan 500 us luk zaman diliminde ise low olmasından anlaşılır
Bitin 0 olması ise, bu 1000 us luk zamanın ilk 500 us luk kısmında datanın low, kalan 500 us luk zaman diliminde ise high olmasından anlaşılır İlk gidecek bit en sağdaki bittir (LSB)
Her paket data gönderimi arasında 100 ms bekleme süresi vardır

 


Nick Ara
DereeN isimli Üye şimdilik offline konumundadır  
Alt 12-06-2008   #6
Profil Bilgileri
Süper Moderator
 
DereeN - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2007
Bulunduğu yer: Kbh
Mesajlar: 8.609
Üye No: 580
Tecrübe Puanı: 103
Rep Puanı : 8094
Rep Derecesi
DereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond repute
Reklam
www.dantel-orgu.com
Standart --->: İnferruj Data Transferleri Protokoller Devre Mantığı

ITT Protokolü


Diğer protokollerden oldukça farklıdır ve en hızlı protokoldür Toplam data transfer süresi maximum 2700 us dur Her transfer standart 14 inferruj darbesi ile yapılır
Bu protokol 4 bitlik cihaz kodu + 6 bitlik tuş kodundan oluşan 10 bitlik paket data bilgisi kullanır
Tablolardaki zamanlar verici tarafındaki RC osilatör ile +/- %20 oranına kadar değiştirilebilir Alıcı kalibrasyonunu start biti süresine göre yapar
“0” biti = Start Biti Lead-in = 3 x Start Biti
“1” biti = 2 x Start Biti Lead-out = 3 x Start Biti
Her paket gönderiminden önce Lead-in, paket sonunda Lead-out gönderilir Bu gönderimler 14 inferruj darbesine dahildir
Lead-in gönderiminden sonra gönderilen “0” biti startı oluşturur
Start tan sonra 4 bitlik cihaz kodu, ardından 6 bitlik tuş kodu gönderilir Paket gönderimi Lead-out ile sona erdirilir İlk gidecek bit en soldaki bittir (MSB) Her paket data gönderimi arasında 130 ms bekleme süresi vardır
ITT Protokolü için TBA2800 Infrared Preamplifier Entegresini aşağıdaki bilgiler yardımıyla kullanabilirsiniz

 


Nick Ara
DereeN isimli Üye şimdilik offline konumundadır  
Alt 12-06-2008   #7
Profil Bilgileri
Süper Moderator
 
DereeN - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2007
Bulunduğu yer: Kbh
Mesajlar: 8.609
Üye No: 580
Tecrübe Puanı: 103
Rep Puanı : 8094
Rep Derecesi
DereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond reputeDereeN has a reputation beyond repute
Reklam
www.dantel-orgu.com
Standart --->: İnferruj Data Transferleri Protokoller Devre Mantığı

YAK Protokolü

Yukarıdaki protokollerle işim olduğunda hep düşünmüşümdür “adamlar işi karıştırmak için ne kadar kafa yormuşlar” diye Kendi geliştirdiğim aşağıdaki bu protokol aslında kablolu hat üzerinden uzaktaki birkaç makineyi kullanmak içindi Yani işin aslı biraz tembellik
Evde içişleri bakanımız kabloların “ortalıkta dolaşığı” iddiası ile savaş açınca işi kablosuza dökmek zorunda kaldım Gerçi bu kararda geçen yıl dünyaya gelen tek oğlum Alp Eren’in yürümeye başladığında bu kabloları kemirmek, koparmak, takılıp düşmek gibi fiillerde bulunacağı daha etkili oldu desem yalan olmaz Şimdi kabloların yerine evin duvarlarını süsleyen inferruj aktarım istasyonları var
Buyurun Türkiye‘mizin medarı iftiharı bildiğim kadarıyla ilk inferruj kumanda protokolümüze ;

Bit Tanıtım Tablosu


4 Bit Data Transfer Tablosu ( Tüm alıcılar )

8 Bit Data Transfer Tablosu ( Tek alıcı )


Kısaltmalar

• C0 = Bit Süresi 1539 us
• A0 = Bit=”0” HIGH kalma süresi 513 us
• B0 = Bit=”0” LOW kalma süresi 1026 us
• A1 = Bit=”1” HIGH kalma süresi 1026 us
• B1 = Bit=”1” LOW kalma süresi 513 us
• K = Alıcının bit kontrolünü yapabileceği 514-1025 us aralığı
• a = Start, protokol tipi ve alıcı kodunu belirleyen süre
• aH = Start 4096 us
• aL = Protokol tipi ve alıcı tipini belirleyen değişken süre
• b = aL yi doğrulama ve alıcı hazırlık / bekleme süresi
• bH = aL ile aynı, aL yi doğrulama süresi
• bL = Alıcılar için data alımına hazırlık veya bekleme kontrol zamanı
• mT = Modülasyon da uygulanacak bir palsin süre toplamı 27 us
• mH = Modülasyonda bir palsin HIGH Süresi 7 us
• mL = Modülasyonda bir palsin LOW Süresi 20 us
• mTk = Modülasyonda toplam mT sayısı
Bu protokol 4 veya 8 bitten oluşan data paketleri kullanır 37 kHz taşıyıcı üzerinde, 1 / 4 veya 1 / 3 Duty Cycle Oranı
YAK Protokolü Verici Devre Mantığı

1 Mikro kontrol inferruj kontrol çıkışının LOW olması, 555 i reset durumunda tutar Bu durumda 555 çıkışındaki transistor tetiklenmediği için inferruj led devre dışıdır
2 Mikro kontrol inferruj kontrol çıkışının HIGH olması 555 i devreye sokar Bu durumda 555 çıkışındaki transistor iletime geçer ve modülasyonu göndermeye başlar
3 Mikro kontrol bağlantısını yapmadan 555 in 4 nolu reset ucunu + volta alarak 555 çıkış modülasyonunu kontrol etmeniz tavsiye edilir

YAK Protokolü Alıcı Devre Mantığı


1 İnferruj alıcı TK19 data gelmediği için çıkışını HIGH de tutar Bu durumda inferruj alıcı çıkışındaki transistor iletimdedir ve alıcı mikro kontrolünün data giriş ucu LOW dadır
2 İnferruj alıcı TK19 data geldiği süre boyunca çıkışını LOW da tutar Bu durumda inferruj alıcı çıkışındaki transistor iletimde değildir ve alıcı mikro kontrolünün data giriş ucu HIGH dedir
3 Mikro kontrol bağlantısı yapılmamış 555 in 4 nolu reset ucunu + volta alarak 555 çıkış modülasyonu ile inferruj ledi sürmeniz ve ALICI KONTROL noktasını bağlamadan alıcınızın çalıştığını kontrol etmeniz tavsiye edilir
4 TK19 un çıkışında transistör kullanmadan, +5 volta asarak datayı terslenmiş olarakta alabilirsiniz Ancak bu terslenmiş data dizaynını aktarıcı devrede kullanamazsınız
YAK Protokolü Aktarıcı Devre Mantığı

Bu devre uygun noktalara yerleştirildiğinde, inferruj vericinizin yolladığı dataları daha uzak noktalara taşır
1 İnferruj alıcı TK19, data gelmediği için çıkışını HIGH de tutar Bu durumda TK19 çıkışındaki transistor iletimdedir ve 555 reset ucu LOW dadır Bu durumda 555 çıkışındaki transistörler tetiklenmediği için inferruj ledler devre dışıdır yani aktarım yapılmaz
2 İnferruj alıcı TK19, data geldiği süre boyunca çıkışını LOW da tutar Bu durumda TK19 çıkışındaki transistor iletimde değildir ve 555 reset ucu HIGH dedir 555 reset girişi HIGH de kaldığı süre boyunca çıkışındaki transistörler vasıtasıyla inferruj ledleri ayarlandığı modülasyona göre sürer
3 4 Adet inferruj led kullanılma sebebi devre plaketi üzerine farklı açılarla yerleştirilerek datanın farklı yönlere dağıtılabilmesi içindir
4 Aktarıcıdan çıkan inferruj data, kendi alıcısı TK19 u kesinlikle görmemeli ve eşya, duvar gibi nesnelerden geri yansımamalıdır Verici ledler gerekirse led soketi içerisine alınarak veya başka meteryaller ile döndürüldükleri yöne odaklanmalıdır Aksi takdirde aktarıcı sonsuz döngüye girer
YAK Protokolü Verici Data Gönderim Mantığı
Verici her şeyden önce kullanıcının tuş takımı, bilgisayar vb yollarla data gönderim isteğini beklemek zorundadır
(Alıcılar kullanıcının keyfi yetene dek saf saf beklemektedirler ve can sıkıntısından pil, elektrik vs yemektedirler)
Verici, kullanıcı talepte bulunduğunda, çıkışı HIGH yaparak 4096 us bekler veya 555 kullanılmadıysa modülasyona yönlenir
(Alıcılar bu arada girişin “lojik 1” olmasıyla sayaçlarını ayarlarlar ve HIGH de geçen süreyi saymaya başlarlar)
Verici; daha sonra iletişim kuracağı alıcının aL süresini sayacına yükler, çıkışı LOW yaparak bu sürenin geçmesini bekler 555 kullanılmadan modülasyon yapıldıysa, zaten modülasyon dönüşünde çıkış LOW durumundadır
(Alıcılar LOW ile birlikte sayaçlarını sıfırlar ve aL süresini saymaya başlarlar Bu aşamada HIGH süresini kontrol ederek 4096 us luk start olup olmadığına karar verirler Eğer bu zaman dilimi start değil ise aL sayaçlarını durdurarak işlem başlangıcına dönerler)
Verici daha sonra aynı aL değeri ile doğrulama bilgisini (bH) göndermek üzere çıkışı tekrar HIGH yapar ve bH süresinin dolmasını bekler veya modülasyon rutinine yönlenir
Modülasyon rutini için örnek ; (örnek tüm alıcılarla iletişim kurulduğu varsayılarak verilmiştir)
mTk = 513 us / 27 us = 19 palsden sonra geri döner
(Alıcılar HIGH ile birlikte aL süresini kaydederek sayaçlarını sıfırlarlar ve bH süresini saymaya başlarlar)
Verici aynı sayaç ile alıcıların data kontrolünü yapması ve ilgili alıcının data alımına hazırlanması için çıkışı LOW da yaparak bekler Bu arada kendi bit sayacını sıfırlar
(Alıcılar LOW ile birlikte aL ve bH sürelerinin aynı olup olmadığını kontrol ederler Aynı değilse 25 ms bekleme rutininden sonra işlem başlangıcına dönerler Aynı ise kendi dataları ile aL yi kontrol ederler Buda tutmuyorsa yine 25 ms bekleme ve işlem başlangıcı Tutuyor ise iletişimin kendileri ile kurulmak istendiğini anlarlar ve sayaçlarını K noktasını tutturacak şekilde ayarlayarak, bit sayacını da sıfırlayarak 4-8 bitlik paket alımına hazırlanırlar)
İlk gidecek bit en sağdaki bittir (LSB) Verici gönderilecek bitin “0” veya “1” olmasına göre sayaçlarını ayarlayarak çıkışı HIGH yapar ve A0 veya A1 süresinin dolmasını bekler veya modülasyon rutinine yönlenir
4 bitlik tablodaki ilk bit “1” bu durumda A1=1026 us
mTk = 1026 us / 27 us = 38 palsden sonra geri döner
HIGH süresi sonunda çıkışı LOW yaparak B0 veya B1 süre dolumu bekler Bu arada kendi bit sayacını 1 artırır
(İlgili alıcı K alanında datayı kontrol ederek bitin “1” olduğunu algılar ve bit sayacı=0 olduğu için gelen biti gelen_data_registerinin 0 bitine kaydeder ve bit sayacını 1 artırır )
Verici kendi bit sayacını kontrol ederek iletişimin tamamlanıp tamamlanmadığını kontrol eder Tamamlandıysa alıcıların içinde data alındığında işlenecek en uzun program süresi ne kadar ise en az o kadar bekleme rutininden sonra kullanıcının yeni gönderim isteğini bekler Bu işlemler zinciri her bit gönderiminden sonra yapılmalıdır
Bizim data transferimiz daha tamamlanmadığı için, vericinin bit sayacı bir olmuştur Bu yüzden gönderilecek 4-8 bitlik datanın 1 bitinin “0” veya “1” olmasına göre sayaçlarını ayarlar çıkışı HIGH yapar ve A0 veya A1 süresinin dolmasını bekler veya modülasyon rutinine yönlenir
4 bitlik tablodaki ikinci bit “0” bu durumda A1=513 us
mTk = 513 us / 27 us = 19 palsden sonra geri dönerek çıkışı LOW da bırakır
HIGH süresi sonunda çıkışı LOW yaparak B0 veya B1 süre dolumu bekler Bu arada kendi bit sayacını 1 daha artırır
(İlgili alıcı K alanında datayı kontrol ederek bitin “0” olduğunu algılar ve bit sayacı=1 olduğu için gelen biti gelen_data_registerinin 1 bitine kaydeder ve bit sayacını 1 daha artırır)
Bu şekilde verici ile ilgili alıcı 4-8 bitlik datayı kendi aralarında hallederler
Sadece tek bir alıcıyı yönlendireceğinizde değişiklik aL, bH ve bL zamanlarında olacaktır Bu süreler “cihaz kodu” özelliği taşıdığından sizin belirlediğiniz ve alıcınızın anlayacağı şekilde 513 us un katları olarak siz ayarlayacaksınız Dikkat edilecek nokta çıkışın boşta iken sürekli LOW da kalmasıdır
YAK Protokolü Alıcı Data Alım Mantığı
4 bitlik transferde aL süresi 513 us dur 4 bitlik iletişimde tüm alıcılar paket alımına hazırlanır Alıcılar 4 bitte toplam 16 değişik komutu algılayarak tümü aynı komutu işlerler Tüm alıcıları aç, Tüm alıcılar stand-by vb
8 bitlik transferde aL süresi 513 us hariç, 513 us un katları şeklinde değişkendir aL süresi diğer protokollerdeki cihaz kodu yerine kullanılır 8 bitlik iletişimde tüm alıcılar aL ve bH sürelerini değerlendirerek iletişimin kendileriyle kurulmak istenip istenmediğine karar verirler İletişim kurulacak alıcı hariç diğer alıcılar 25 ms bekleme konumuna geçerek iletişimin ilgili alıcıyla yapıldığı süre boyunca data kontrolü yapmazlar 25 ms bekleme süresi dolumunda data kontrolüne yeniden başlarlar Alıcılar 8 bitte toplam 256 değişik komutu algılayarak iletilen komutu işlerler
4 veya 8 bitlik transferde alıcılar aL süresi sonunda sayaçlarını sıfırlayarak bH süresini tekrar sayarlar aL = bH ise ve bu zaman dilimi kendilerini ilgilendiriyor ise bL içerisinde sayaçlarını ayarlayarak 4-8 biti alım hazırlığını yaparlar
K aralığında gelen bitin kontrolü yapılır Bu kontrolde giriş portu “lojik 1 “ olursa data biti “1” dir, olmazsa “0” dır Bu kontrol toplamda 4-8 defa yapılarak 4-8 bitlik data alınır ve işlenir
Kontrol K zamanının başlama (514 us) veya bitişine (1025 us) yakın değil de ortalarında yapılır ise, yazılım hatası nedeniyle olabilecek kaymalar sonucu oluşabilecek hatalar engellenebilir
Diğerleri ile aynı işlemleri yapmayacak alıcılar (4 bitlik data transferine katılmayacak olanlar) aL ve bH sürelerinde 513 us kontrolü yapmayabilirler

YAK Protokolü Modülasyon Rutini (555 kullanılmadığında verici için)

• Çıkış “lojik 1” yapılır
• Toplamda 7 us geçene dek beklenir (mH)
• Çıkış “lojik 0” yapılır
• Toplamda 20 us geçene dek beklenir (mL)
• mTk sayacı kontrol edilir
• mTk sayısı tamamlandıysa geri dönülür
• mTk sayısı tamamlanmadıysa aynı işlemler için rutine tekrar girilir

Hesaplamalar, Formüller ve Diğer Açıklamalar

555 bu devre ile astable modunda kullanılmaktadır

Çıkış frekansı için kullanılacak formül

Duty cycle için kullanılacak formül (mT, mH ve mL %)

İstediğimiz frekans için R2+RV1 toplamını bulmak için kullanılacak formül

Şemadaki elemanların değerlerini aşağıdaki gibi kullandığımızda ;
R1 = 3K3 Ohm
R2 = 1K8
RV1 = 1K
C1 = 47 nF
Örneğin 36 kHz çıkış frekansı istersek

Bu durumda çıkış frekansının 36 kHz olması için R2 direnci ve RV1 potu toplam değerinin 26053K olması gerekmektedir
Duty Cycle ise ;

Bu devre ile alınacak Minumum / Maximum değerler
Pot Değeri 0 K iken
f = 1440 / (3K3 + (2 x 1K8) x 47nF = 444033
D = 1K8 / (3K3 + (2 x 1K8)) = % 2608
Pot Değeri 1K iken
f = 1440 / (3K3 + (2 x 2K8) x 47nF = 344250
D = 2K8 / (3K3 + (2 x 2K8)) = % 3146
Devre, elemanların bu değerleri ile çıkış frekansı R2 ye seri bağlı 1K pot kullanılarak, 3442 ile 4440 kHz aralığında ve %3146 ile %2608 arasında duty cycle ayarlanabilmektedir 555 in 4 nolu reset ucu mikrokontrolden gönderilen inferruj datasının giriş ucu, 3 nolu ucu ise inferruj verici ledi tetikleyen ucudur
Mikrokontrol çıkışında direkt olarak inferruj ledini kullanmayarak 555 entegresini kullanmamızın sebebini ise RC5 protokolünü örnek vererek şöyle açıklayabiliriz;
RC5 protokolü 36 kHz de çalışır Bu frekans için ;
1000000 us / 36000 us = 27778 us modülasyon gerekmektedir (noktadan sonrası ns dir, yani değer 27 us ile 28 us arası, 28 us a yakındır)
Buna göre ise RC5 için 1 / 4 (%25) duty cycle kullandığımızda ;
27778 us %25 i = 6944 us high darbesi ve 27778 us – 6944 us = 20834 us low da bekleme gerekmektedir ve bit süresini tutturmak için, her bitte bu palslerin 32 defa tekrarlanması gerekmektedir
27778 x 32 = 888896 us bir bit içerisindeki HIGH süresini verir
Aynı süre ile de LOW gerekeceğinden, RC5 protokolünde bir bitin gerçek zamanı bu 1,778 ms dir
Bu sonuca göre biz, 555 i kullanarak çıkışı sadece high veya low yaparız Modülasyon işini 555 yapar
Çıkışta 555 kullanmadan modülasyonu yazılımla da çözebilirsiniz
İnferruj Ledi Sürmek


Transistör kullanmadan ledi sürmeniz ve / veya birden fazla led kullanmanız mümkündür R4 Direnci bu konularda size ayar imkanı verir Ancak çıkışta 555 i kullanmadan ledi sürmek isterseniz mutlaka transistör kullanın
İnferruj Data Gönderim - Alım Mantığı

İnferruj data tabloda gösterildiği şekilde teslenmiş (inverter) olarak alınır
Vericinin Hangi Protokolü Kullandığını Bulmak
Vericinin protokolünü bulmanın yolu Start, Lead-in yada Data Biti sürelerini yani ilk data süresini kontrol etmektir Aşağıdaki HIGH süreleri incelendiğinde birbirini tutacak bir değerin olmayışından LOW süresini kontrol etmenin gereği yoktur
• ITT Protokolü ( ilk data = Lead-in )
5 us >= Lead-in HIGH Süresi =< 15 us
200 us >= Lead-in LOW Süresi =< 400 us
• SHARP Protokolü ( ilk data = Data Biti )
250 us >= Data HIGH Süresi =< 400 us
600 us >= Data LOW Süresi =< 1750 us
• NOKIA Protokolü ( ilk data = Start Biti )
450 us >= Start HIGH Süresi =< 550 us
2450 us >= Start LOW Süresi =< 2550 us
• RC5 Protokolü ( ilk data = Start Biti )
850 us >= Start HIGH Süresi =< 950 us
850 us >= Start LOW Süresi =< 950 us
• SIRC Protokolü ( ilk data = Start Biti )
2350 us >= Start HIGH Süresi =< 2450 us
550 us >= Start LOW Süresi =< 650 us
• NEC Protokolü ( ilk data = Start Biti )
890 ms >= Start HIGH Süresi =< 910 ms
440 ms >= Start LOW Süresi =< 460 ms
İnferruj Datayı Kopyalamak

Alıcı modülünüzün programını ve donanımını Data kopyalama mönüsü veya tuşuna uygun hale getirdiğinizde inferruj datayı kopyalamanız mümkündür
Burada programınız data kopyalama modu seçildiğinde kopyalama rutinine yönlenmeli ve Start, Lead-in veya Data biti kontrolü için beklemeye başlamalıdır Bu bilgilerden herhangi biri alındığında (yani kopyalanacak vericinin herhangi bir tuşuna basıldığında) bu bilginin hangi protokole uyduğunu Start LOW süresi içerisinde tespit ederek data alımına hazır hale gelebilmelidir
Ancak ilk bilgi geldiğinde bu bu protokolün SHARP ait olduğunu tespit etmesi halinde, bu protokolde start biti olmaması nedeniyle gelen bu ilk bilgiyi cihaz kodunun ilk biti olarak kaydedebilmeli ve son gelen iki bitin kontrol biti olduğunuda bilmesi gerekmektedir
Dikkat edilecek diğer bir noktada tespit edilen protokolün NOKIA veya RC5 olması durumunda Start biti gelmesine karşın ilk bitin ikinci yarısında HIGH durumu oluştuğunu bilerek NOKIA için 500 us ve RC5 için 900 us LOW bilgisinin HIGH den önce olduğunu anlayabilmesi gerekmektedir
Bundan sonraki aşama bu vericinin kullandığı protokol bilgisi dahilinde cihaz kodunun toplam sayısı ve ardı sıra gelen bitlerden hangileri olduğu tespit ederek vericinin yolladığı cihaz kodunu tespit edebilmelidir
Son aşama ise aynı protokol bilgisi dahilinde tuş kodunun toplam sayısını ve yine ardı sıra gelen bitlerden hangileri olduğu tespit ederek vericinin yolladığı tuş kodunu da tespit edebilmelidir
Program bu şekilde kopyalanacak vericinin her seferinde tek bir tuşunu kopyalayabilme yeteneğine sahipken son aşamanın uygulanması yerine sizin programınız tarafından ilgili protokolün tüm tuş komutları bilinmesi halinde son aşama yapılmadan, kopyalanacak vericinin protokolünün ve cihaz kodunun tespit edilmesi yeterli olacak ve kopyalama devreniz, yazılımınız sayesinde o kumandanın tüm yeteneklerine sahip olabilecektir
Kısaca sonlandırmak gerekirse kopyalanacak vericinin tek bir tuşuna basılması sizin yazılımınız tarafından vericiye ait tüm bilgilere sahip olunması için yeterli olacaktır Ancak kopyalanan data yollanırken ITT protokolü için Lead-out ve SHARP protokolü için son iki kontrol bitinin yollanılması da ayrıca gerekecektir
İnferruj Datayı Bilgisayardan Okumak
İnferruj datayı aşağıdaki şema yardımı ile bilgisayarınızın RS232 portundan izleyebilirsiniz Visual Basic gibi ileri seviye programlama dilleri ile yazacağınız program, sizi asm ile uğraşmaktan kurtarır TK19 beslemesini RS232 portundan almakta olup, ayrıca besleme devresine ihtiyaç duymaz

Dikkat !
RS232 portu devrede yapabileceğiniz hatalı bağlantılar nedeni ile hasar görebilir

İnferruj Datayı Bilgisayardan Göndermek
İnferruj datayı aşağıdaki şema yardımı ile bilgisayarınızın RS232 portundan hem izleyebilir hem de alıcı ünitelere data yollayabilirsiniz TK19 ve Led beslemesini yine RS232 portundan almakta olup, ayrıca besleme devresine ihtiyaç duyulmaz

Dikkat !
RS232 portu devrede yapabileceğiniz hatalı bağlantılar nedeni ile hasar görebilir

 


Nick Ara
DereeN isimli Üye şimdilik offline konumundadır  
Cevapla

Bookmarks
Seçenekler
Stil