Uzaktan kumanda potansiyometre PIC12F629 mikrodenetleyici üzerine kurulu kumanda protokolü RC5
Sistem Potansiyometrenin arkasına monte edilen step motoru kontrol eden kızılötesi bir alıcı. Protokol RC-5 protokolüne benzer, Manchester kodlamasını kullanır 13 bit uzunluğundadır. İlk bit iki bit atlandıktan sonra 1.06 ms bit uzunluğunu ölçüm yapılmış, ardından 10 bit – başlangıç biti, 8 bit veri ve 1 bit görünüşte parite. Geçiş biti, RC-5’de açıklandığı gibi . Basıldığında, sürücü önce tüm verilere sıfırlar (veya birler?) Gönderir ve sonra uygun kodu gönderir. Düğmeyi basılı tutarken, yalnızca kodu yaklaşık 100 ms aralıklarla tekrarlar.
Alıcı kendi kendine öğrenir. Öğrenme moduna geçmek komutları kabul eder ve önbelleğe alır. Aynı kodu arka arkaya beş kez alırsa, EEPROM’da saklar. Amplifikasyon ve zayıflama için iki öğrenme modu vardır.
Öğrenme modunda, yeni kodun kaydedilip kaydedilmediğini göstermek gerekir. Sinyal vermek için bir step motor kullanılmış. Motor yaklaşık 400mA güç çekiyor Bu nedenle, PIC12F629 çıkışları BC639 BC640 transistörleri ile güçlendirilmiş.
Ana program döngüsü sadece adım motoruna darbe uzunluğunu sayar, daha sonra çıkış kapanır.
Bir komut alındığında, kızılötesi giriş kenarı bir kesmeyi tetikler. Neredeyse her şeyin gerçekleştiği yer burası. Komut alma rutini üç ve çeyrek bit sayar ve bir sonraki veriyi girişten kaldırır, daha sonra toplam 8 veri toplayana kadar verileri yavaş yavaş kaldırır – bunlar giriş tamponuna döndürülür. Başlangıçta daha uzun bir tampon planladığı için, seçilebilir uzunlukta bir alan için yazılmıştır. Bu nedenle, şu anda bir bayt uzunluğunda bir alan kullanılmaktadır. Komutu aldıktan sonra, mod seçim girişi taranır ve değerlendirilir
Çalışma modunda, giriş arabelleğinin içeriği, her komut için EEPROM’daki verilerle karşılaştırılır ve bir eşleşme bulunduğunda komut yürütülür. Sırasıyla, çıkışlarda uygun kombinasyon ayarlanır ve zamanlayıcı değişkenleri ayarlanır. Bu kesmeyi sonlandırır. Programın ana döngüsündeki zamanlayıcı, çıkışları durma noktasına getirir.
Öğrenme modunda, yeni alınan komut bir öncekiyle karşılaştırılır. Bir eşleşme varsa, başarılı deneme sayacı çıkarılır. Bu sayaç sıfıra ulaştığında, alınan komut EEPROM’a öğrenme modu tarafından seçilen konuma yazılır. Eşleşme yoksa, deneme sayacı, yeni ve önceki komutlar için maksimum deneme ve arabellek sayısına ayarlanır.
Kumandalı Potansiyometre projesine ait kaynak asm, hex kodları ve şema pcb çizimleri var.
Uzaktan Kumandalı Potansiyometre Devre Şeması
Kaynak: k15.kreteni.cz/ir_pot.php
Şifre-Pass: 320volt.com
Yayım tarihi: 2020/02/17 Etiketler: microchip pic projeleri, PIC12F629 Örnekleri