Holtek 6026 verici için yazılım.

Başlatan erdogan2734, 20 Mart 2014, 15:38:26

erdogan2734

   Sevgili Ete Hocam ve arkadaşlar Merhaba;

Farklı bir projede kullanılmak üzere Holtek firmasının HT 6026 entegresini kullanıyoruz.
Daha doğrusu bu entegrelerin kullanıldığı elcikler var elimizde yaklaşık 50-100 adet.
Ben bu elciklerin karşısına MCU alıcı yapmak istiyorum. Ama HT 6026 entegresinin mantığını kavrayamadım.
Entegre ile beraber DİP SWİTCH kullanılıyor ve bunlarla veri kodlaması yapılıyor.

Benim burada sormak istediğim ben bu verileri nasıl yakalarım. Bunun için nasıl bir yazılım yapmalıyım.

Şimiden okuyarak zaman ayırdığınız için çok teşekkür ederim.
Erdoğan
İmkansızın zaman aldığı bir dünya'da bana zorluktan bahsetme!

ete

Bu entegre MC145026 nın birebir muadilidir.  9 adet adres bacağı ile şifreleme yapar.
Şifre adres bacaklarına HIGH - LOW yada boşta bırakarak Z (Float) olarak verilir.
Entegre elciklerde kullanılırken bu adres bacaklarından bazıları buton ile konum değiştirerek şifrenin değişmesine sebep olur.
Öncelikle data sheet açılarak verinin nasıl oluturulduğuna bakman gerekiyor. Bir HIGH biti nasıl oluşuyor bir LOW biti nasıl oluşuyor bir Z biti nasıl oluşuyor onları incelemen gerekiyor.
Daha sonra bir Lojik analizörü alıcının çıkışına yada elcik dataout bacağına bağlayıp çıkan sinyali inceleyeceksin.
Genellikle uzun bir LOW sinyalinden sonra (Pilot Peryodu)  ilk paket verilir. Ardından yine bekler yeniden bir paket daha verilir. Bu işlem butondan elini çekinceye kadar devam eder.
Burada önemli olan data paket başının yakalanmasıdır. Bu yakalandıktan sonra  belirli bir süre beklenip çıkışın (Uzun Bitin) HIGH mi yoksa LOW mu olduğuna bakılması gerekir. Daha sonra biraz daha bekleyip ikinci uzun bitin ortasına gelip o bitin high mı yoks low mu olduğuna bakılması gerekir. Gerekirse bunlar kayıt edilerek bütün bitlere bakılmış olur.
Sonra değerlendirmeye geçilir.
İlk şifre biti için ilk okunan HIGH ve ikinci okunan da HIGH ise bit=1 dir.
İlk Okunan LOW ve ikinci okunanda LOW ise Bit=0 dır.
İlk okunan HIGH sonraki LOW ise Bit=Z dir.
Bu şekilde değerlendirilip sonuçta 9 bitlik şifre bilgisi ortaya çıkartılır.
Okunan bu bilgi hafızada kayıtlı olan bilgi ile karşılaştırılır. Birden fazla buton var ise buton sayısı kadar şifre hafızada kayıtlı olmalıdır. Hangisi okunan şifreye eşit ise o butona ait işlem yapılır.

Biraz zahmetli bir iştir. Epeyce uğraşman gerekecek. Lojik analizörden gelen bilgi şeklini görmen çok önemli. Çünki bazen bilgi ters çevirilmiş olabiliyor. Pilot sinyali süresi de burada önemli hassas bir şekilde bu süre ölçülüp ona uygunbir algoritma ile pilot sinyal başı yakalanmalı. Zaten pilot sinyalinden sonra data paketi başladığı için işin kolaylaşmış olacaktır.

Ete

erdogan2734


Ete hocam verdiğiniz açıklayıcı bilgi için teşekkür ederim.
Biraz zor bir entegre gibi gözüküyor. Yani beni biraz uğraştıracak. İnternet teki aramalarımda
2006 yılında sizin yine bu konu ile ilgili holtek (ht 6012) olması lazım yapmış olduğunuz bir programı gördüm.
PBP dili ile ASM bir arada kullanılmış. Şu anda sadece PBP ile çözebilir miyim acaba diye bakınıyorum.
İnşallah sonuç elde edebilirim.

İlginiz için teşekkür ederim...
Erdoğan
İmkansızın zaman aldığı bir dünya'da bana zorluktan bahsetme!

ete

Benzer konuda bir çok ticari program yazdım. Mantık hep aynı. Öncelikle kumanda dan gelen bitlerin sürelerini okumak ve kayıt etmek gerekiyor. EN uzun LOW biti En uzun High biti, en kısa low ve en kısa High biti olarak bunları okuyup sürelerini kayıt etmek gerekir. Bunu yapmaz isen yalnızca incelediğin elcik le sınırlı kalırsın. Çünki genelde şifre entegrelerinin kendi Osilatörleri mevcut ve data bitlerinin süreleri bu Osilatör frekansına bağlıdır ve değişkenlik gösterir. Birinde yaptığın program diğerinde çalışmayabilir. Ama süre kontrolü yaparsan tek mantık hepsinde çalışır. Piyasada buna akıllı kumanda deniliyor.
Öncelikle elcik şifrelerini öğretiyorsun ki sanada aslında böyle bir şey gerekli. AMa elciklerinhepsi aynı şifre ile çalışıyorsa manuel de girebilirsin şifreyi . Elciklerin hepsi aynı OSC değerine sahipse yine tek program hepsini çalıştırabilir. İncelemek gerek.

Sinyal şeklini skop yada lojik analizör yada PicKit2 nin Lojik Analizöründe mutlaka görmek gerekir. Görmeden yapılan çalışmada samanlıkta iğne arasın.
Görülen şekilde ara bekleme (Pilot Kodu)normalde LOW olması gerekiyor. Ama ters çevrilme ihtimali var. Onu anladıktan sonra gerisi zor değil.
Tamamen PBP kullanılarak sinyal çözülebilir. Nasıl yapılacağınıda aşağı yukarı açıkladım. Üzerinde çalışmak lazım.

Ete


erdogan2734

   Hocam elciklerde dipswitch mantığı kullanılmış. 8 adet 1-0 konumlu switch ile  şifreleme yapılıyor. Ayrıca entegrenin datasheetinde görmüştüm 2 adet direnç ve bir adet kondansatörle frekans belirleniyor.  Örnek bir devre var elimde alıcı kısımda yine dipswitch var.
16c54c ile kontrol edilen bir sistem. Muhtemelen dediğiniz gibi akıllı kumanda mantığı. Yalnız arada iletişimi sağlamak için iki dipswitch deki konumlarda aynı olmalı. Buradan nasıl bir sonuç çıkarabiliriz bilmiyorum. Üzerinde iyice çalışmam lazım.

      Sevgili Hocam siz zaten balık tutmayı öğrettiniz. Birazda ben balık tutmak için çalışayım.
Erdoğan
İmkansızın zaman aldığı bir dünya'da bana zorluktan bahsetme!

Powered by EzPortal