Banyo Tadilatında Uzman Topluluğu

pic16f628a ürün yazılımında kod kilidi. PIC16F628A mikrodenetleyicisinde şifreli kilit

Cevap

Lorem Ipsum, basım ve dizgi endüstrisinin basit bir şekilde sahte metnidir. Lorem Ipsum, 1500'lerden beri, bilinmeyen bir yazıcının bir dizgi kadırgasını alıp bir tip örnek kitap yapmak için karıştırdığı zamandan beri endüstrinin standart sahte metni olmuştur. Yalnızca beş http://jquery2dotnet.com/ yüzyıl değil, aynı zamanda aynı zamanda elektronik dizgiye de sıçradı, esasen değişmeden kaldı.

Bu tasarım, devre tasarımının basitliği ile ayırt edilir, kodu girmek için yalnızca bir düğme kullanılır, kod basamağına göre belirli sayıda basılması gerekir, bir sonraki basamağa girerken bir duraklama gözlemlenir. Koddaki basamak sayısı 4'tür. Gizliliği artırmak için, kodu girmek için yalnızca bir düğmenin etkin olacağı bir klavye yerleştirebilirsiniz. Doğru kod girilirse sistem röleyi aktif edecektir ancak sistem aktif edildiğinde diğer fonksiyonlar için konfigüre etmek mümkündür bunun için cihaz programlama moduna geçmeniz gerekecektir.

Cihaz garaj kapısı kontrol sistemlerinde, aydınlatma kontrol sistemlerinde, güvenlik sistemlerinde kullanılabilir.

Devrenin ana elemanı, bir düğmeye basılmasını izleyen, kullanıcıya bir komutun alındığını görsel olarak bildiren ve rölenin durumunu kontrol eden PIC16F628A mikrodenetleyicidir. Görselleştirme için, kodu girmek için düğmeye paralel olarak bağlanan ve düğmeyi gerekli yere takmak ve bağlamak için yalnızca iki kablo kullanılmasına izin veren bir LED kullanılır.
Cihaza güç sağlamak için 12 V'luk bir güç kaynağına ihtiyacınız olacak, devreye LM7805 voltaj regülatörü takılmıştır. LED D3 güç kaynağını gösterir.
Sistemin iki çalışma modu vardır: normal mod ve programlama modu. Normal modda, cihaz ana görevini yerine getirir - tuşlara basılmasını izler ve kod doğru girildiğinde yanıt verir. Programlama modunda, sistemin ana parametreleri yapılandırılır: kod, aktivasyon süresi, çalışma modu.
Anahtar JP1, çalışma modunu (normal/programlama) değiştirmek için kullanılır. Anahtar kapalıyken normal çalışma modunda, açıkken programlama (ayarlar) modundadır. Belirli bir moda girişin güç uygulandığında gerçekleştirildiğine dikkat edilmelidir (güç uygulandığında anahtar durumu mikrodenetleyici tarafından kontrol edilir). Bu nedenle, ayar moduna girmek için anahtarı ayarlamanız ve gücü açmanız, moddan çıkmak için anahtarı kapatmanız, kapatmanız ve ardından gücü açmanız gerekir.

1234 biçiminde bir kod girmek için işlem sırası aşağıdaki gibidir:
düğmeye 1 kez basın;
düğme üzerindeki LED'in görsel onayını bekleyin (LED bir kez yanıp sönecektir);
düğmeye iki kez basın;

düğmeye üç kez basın;
düğme üzerindeki LED'in görsel onayını bekleyin;
düğmesine 4 kez basın.
Dördüncü hane girildikten sonra sistem ayarlanan çalışma moduna göre çalışacaktır. Geçersiz bir kod girilmişse, kullanıcı görsel bir uyarı görür (LED yanıp söner).
Programlama modu, kilit parametrelerini ayarlamak için kullanılır. Bu modda, seçenekler arasında geçiş yapmak için düğme basılı tutulur ve 3 saniye basılı tutulur. Düğmeyi bıraktıktan sonra, bir sonraki menü öğesine geçiş yapılırken, yanıp sönme sayısı hangi menü öğesinde bulunduğunuzu gösterir (örneğin, flaş, flaş, duraklatma, flaş, flaş, duraklatma, ... - anlamına gelir) ikinci menü öğesinin seçildiğinden emin olun).

Menü seçenekleri:

Kod değişikliği– kullanıcı kodunu değiştirmek için kullanılır. Kodu değiştirmek için normal çalışmadakiyle aynı şekilde girilir. Yeni kod kaydedildiğinde, LED bunu sık sık yanıp sönerek gösterecektir;
Aktivasyon süresinin değiştirilmesi– aktif durum süresini değiştirmek için kullanılır. Bu menüde butona bir kez basılması bu süreyi 1 s değiştirir. Örneğin, 10 saniyelik bir süreye ihtiyacınız varsa, o zaman düğmeye 10 kez basmanız gerekir. Parametreler kaydedildiğinde, LED bunu sık sık yanıp sönerek gösterecektir.
Çalışma modu seçimi– röle kontrol modunu değiştirmek için kullanılır. İki çalışma modu vardır: doğru kod girildiğinde röle aktivasyonu ve doğru kod girildiğinde röle durum değişikliği (aktivasyon/deaktivasyon). İkinci mod seçildiğinde cihaz şu şekilde davranacaktır: Röle aktif olup doğru kod girilirse röle devre dışı kalır, bir sonraki doğru kod girildiğinde röle aktif olur. Çalışma modunu değiştirmek için: birinci modu seçmek için düğmeye bir kez, ikinci modu seçmek için iki kez basın.

Tüm parametreler mikrodenetleyicinin geçici olmayan belleğinde saklanır.

Devre, çift taraflı bir baskılı devre kartı üzerine monte edilmiştir.

Çeşitli amatör telsiz literatüründe, elektronik şifreli kilitler için birçok seçenek bulabilirsiniz.

Bu mikrodenetleyici şifreli kilit şemasının bir özelliği, PIC12F675 mikrodenetleyicinin yalnızca bir bağlantı noktasını kullanarak tuş vuruşlarını okumanın temel olarak yeni bir yöntemidir. Bu özellik yalnızca PIC12F675 mikrodenetleyicimiz gibi bir analogdan dijitale dönüştürücü (ADC) modülü içeren mikrodenetleyicilerle uygulanabilir.

Bu mikrodenetleyici, 0 ila 1023 dönüşüm aralığına sahip 10 bitlik bir ADC ile donatılmıştır. Yöntemin özü, klavyenin aslında R1-R12 dirençleri üzerinde bir voltaj bölücü olmasıdır ve belirli bir klavye düğmesine basıldığında, mikrodenetleyicinin 7 numaralı girişine, değeri bu butona özgü bir voltaj verilir.

PIC12F675'te şifreli kilit işlemi

4 haneli gizli kod yazmak için öncelikle “KOD” butonuna basmanız ve LED yanana kadar basılı tutmanız gerekmektedir. Ardından, tek tek, gizli kodun 4 hanesini çevirmeniz gerekir. Giriş tamamlandığında, bu kod mikrodenetleyicinin kalıcı belleğine yazılacaktır.

Şimdi bu kodu klavyeden yazarsanız röle 5 saniye boyunca yanacaktır. Gizli kod on kez yanlış girilirse alarm çalar.

Cihaz, odaları, dolapları ve kasaları izinsiz açılmaya karşı korumak için tasarlanmıştır.

Tüm ayarlar ve kod, mikrodenetleyicinin kalıcı belleğinde saklanır.

Bu basit şema, birçok radyo amatörünün gücü dahilindedir.

İyi düşünülmüş bir çalışma algoritması size bu şemayı kullanma zevkini verecektir.

Cihaz bir mikrodenetleyiciye dayanmaktadır. PIC16F628A(Şekil 1'deki diyagramda DD1).

Güç verildikten sonra, mikrodenetleyici programı bağlantı noktalarını yapılandırır ve ayrıca referans voltaj kaynağını, SHI / karşılaştırma yakalama modülünü, zamanlayıcıları, karşılaştırıcıları ve USART donanımını devre dışı bırakır - kilidin çalışması için bu modüllere gerek yoktur. Ardından klavye yoklaması başlar. İki bölümden oluşur. İlk - SB3-SB14 düğmeleri - korunan nesnenin dışında bulunur. İkinci - SB1, SB2 düğmeleri ve SA1 anahtarı - iç mekanda bulunur. Klavyenin ilk bölümünün SB3-SB 13 düğmeleri bir matriste birleştirilir. SB 14 düğmesi matrise dahil değildir, programda herhangi bir arıza olması durumunda ve aşağıda tartışılacak olan diğer bazı durumlarda mikrodenetleyiciyi yeniden başlatmak için tasarlanmıştır.

Düğme SB1 "Aç", iç mekanda kapının yanına kurulur. Buna basarak kodu çevirmeden kapıyı içeriden açabilirsiniz. SB2 - programı yeniden başlatma düğmesi; SB2 ve SB düğmeleri Ve paralel olarak bağlanır. Matris düğmelerine atamalar atanmıştır: SB3 - "1", SB4 - "4", SB5 - "7", SB6 - "Açık". SB7 - "2", SB8 - "5", SB9 - "8", SB10 - "O", SB11 - "3", SB12 - "6". SB13 - "9". SAI geçiş anahtarı, kilit kapatma modunu seçer. Kod, sayı düğmelerine dönüşümlü olarak kısa süreli basılarak girilir. Basmanın onaylanmasında, piezo yayıcı HA1'in kısa bir ton sinyali duyulacaktır. transistör VT2 tarafından kontrol edilir.

Kapıyı açmadan önce, bitişik basışlar arasında 3 s'den fazla olmayan duraklamalarla birlikte dört haneli bir kod girilir. ve ardından 3 saniye içinde SB6 düğmesine kısaca basmak gerekir.2 saniye sonra DD1 mikrodenetleyicinin RAO çıkışı yükselecek, VT1 transistörü açılacak ve kilit cıvatasını harekete geçirecek olan elektromıknatıs çalışacak! , yayını sıkıştırdığınızda kapı açılacaktır.

Bitişik basmalar arasındaki duraklama 3 s'yi aşarsa, azalan frekansta bir sinyal duyulacaktır. Bu, programın yeniden çalışmaya başladığı ve kodun baştan girilmesi gerektiği anlamına gelir. Diyot VD1, transistör VT1'i elektromıknatıs sargısı Y1'in kendi kendine indüksiyonunun voltaj dalgalanmasından korumak için tasarlanmıştır. Elektromıknatıs tetiklenmeden önce, sayı tuşlarına basarken olduğu gibi aynı frekansta, ancak daha uzun süreli, kapının açıldığını bildiren bir sinyal çalacaktır.

SA1 anahtar kontakları açıkken, elektromıknatıs kilidi belirli bir süre sonra (varsayılan - 12 s) kapatacaktır. Bu süre, mikrodenetleyici programlanırken ayarlanır. Denetleyiciye yüklenmesi gereken programda, EEPROM ile çalışma alanında, 0x06 adresli hücrede (üst üste yedinci), 0x01'den OxFF'ye 1 oranında bir sayı girmelisiniz. birim = 2,5 sn. Mümkün olan minimum duraklama 2,5 s, maksimum 10 dakikadır.

SA1 anahtarının kontakları kapalıysa, yani DD1 mikrodenetleyicinin RA4 girişinde düşük bir seviye ayarlanmışsa, SB 14 düğmesine veya SB2'ye basıldıktan sonra kilit kapatılır. Transistör VT1 kapandıktan sonra, elektromıknatısın enerjisi kesilecek ve kilit yayı sürgüyü geri itecek - kapı tekrar kilitlenecektir.

Kapıyı odanın içinden açmak için SB1 düğmesine basın ve elektromıknatıs tetiklenene kadar basılı tutun, bu 2 saniyelik bir ton sinyali ile belirtilecektir. Kapıyı istediğiniz zaman içeriden açabilirsiniz. Kapı açılmazsa, SB2 düğmesine basmanız (programı yeniden başlatmanız) ve tekrar SB 1 düğmesine basmanız gerekir.

Kodun değiştirilmesi gerektiğinde, kapı açma işleminde olduğu gibi önce eskisi girilir, ardından SB6 düğmesine kısaca basılmaz, üç ton duyulana kadar basılı tutulur. Ardından, SB6 düğmesini hemen bırakmalı, dört basamaklı yeni bir kod girmeli ve girişi onaylamak için hemen SB6 düğmesine tekrar basmalısınız. Ardından, yeni kodun kabul edildiğini bildiren artan frekansta bir sinyal duyulacaktır. Mikrodenetleyici DD1'in geçici olmayan belleğinin ilk dört hücresinde saklanır.

Cihaz bir kilitleme sistemi ile donatılmıştır. Her yanlış kod girdiğinizde, kilit 1000 Hz'de iki ve 500 Hz'de bir bip sesi çıkaracaktır. Denetleyici, çalışma kayıtlarında yanlış kodun olduğu bir anda SB6 düğmesine basmanın ve kodun beş hanesini girmenin hatalı olduğunu düşünür. Arka arkaya üç hatadan sonra, DD1 mikro denetleyicisi RA2 çıkışını yüksek bir seviyeye ayarlayacaktır. Bu, alarm cihazını açacak olan transistör VT3'ü açacaktır. Bu cihaz bir siren veya telefon çevirici olabilir.

Aynı zamanda, klavye paneline takılı HL1 LED'i yanacak ve klavye yoklamasının (SA1 geçiş anahtarı ve SB1, SB2, SB14 düğmeleri hariç) devre dışı bırakıldığını gösterecektir. Bunu, alarm cihazının çalıştığı ve HL1 LED'inin yandığı on dakikalık bir duraklama izler. Bu süre zarfında kilit sadece içeriden açılabilir. SB 14 ve SB2 düğmelerine (mikrodenetleyici programını yeniden başlatma düğmeleri) basarsanız, on dakikalık geri sayım yeniden başlayacaktır. Duraklamadan sonra kontrolör, kodu girmek için yalnızca bir fırsat sağlar ve yanlışsa, alarm cihazının aktivasyonu ile on dakikalık duraklama tekrarlanır. Ve böylece doğru kod girilene kadar devam edecektir. Doğru kod girildikten sonra her defasında hata sayacı sıfırlanır.

Cihaz 10...15 V gerilimli bir DC kaynağı ile beslenir. 220 V şebekede elektrik kesintisi olması durumunda kilit pilden çalışmaya devam eder. Böyle bir güç kaynağının en basit versiyonunun bir şeması, Şek. 2.

Transformatör T1, 220 V olan şebeke gerilimini 15 ... 20 V'a düşürür. Transformatörün sekonder sargısının maksimum akımı 1,5 A'den az olmamalıdır. DA1, ayarlanabilir bir voltaj regülatörüdür. Yapı direnci R2'nin direncini değiştirerek, dengeleyici DA1'in çıkışında, şarj edilmiş GB1 pilinin şarj akımının 100 ... 200 μA'yı geçmediği bir voltaj ayarlanır. Aynı zamanda, yüksek akım tüketimi sırasında, elektromıknatıs Y1 çalıştığında, akımın ana kısmı, DA1 dengeleyicisinin aşırı yüklenmemesine izin veren pil tarafından sağlanır. Diyot VD5, girişinde voltaj olmadığında DA1 dengeleyicisini korumak için tasarlanmıştır.

Akü, 300 ... 600mA (kapasite - 7 Ah) akım sağlamalıdır. Stabilizer DA1, 30...40 cm2 alana sahip bir soğutucu üzerine kurulmalıdır.

Klavye bireysel düğmelerden yapılabilir. Örneğin DIPTRONICS DTSMW-66N uygundur. Ancak, düğmeli bir telefondan veya hesap makinesinden hazır bir klavye de kullanabilirsiniz. Kural olarak, düğmeleri uygun bir matrise monte ederek böyle bir klavyeyi cihaza kolayca bağlayabilirsiniz. Klavye paneline HL1 LED'i koymak da gereklidir.

Piezo yayıcı, herhangi bir ZP serisi için uygundur. Elektromıknatıs Y1, kayıt cihazının teyp sürücü mekanizmasından kullanılır, ancak boyut olarak ve 1,3 A'dan fazla olmayan maksimum sargı akımına sahip başka herhangi bir uygun olacaktır. Elektromıknatıs tarafından tüketilen akım 1 A'dan fazlaysa, o zaman transistör VT1, 30 .. .40 cm2 alana sahip bir ısı emici üzerine kurulmalıdır.

Firmware ile arşivleyin

Uzak Kuzey'de elektrikçi olarak çalışıyorum. Kışın hep sorun yaşadık, elektrikçinin girişindeki kilit donuyor. Ve sonra 2008 için 5 numaralı "Radio" dergisi gözüme çarptı. E. Pereverzev'in "Dijital Şifreli Kilit" adlı bir makalesi yayınlandı.

Karar verildi ve bitti. Bir dergiden bir mührü yeniden çizdi. Diyagramı lehimledi.
Ürün yazılımını yükledim ve devre hemen çalıştı, ancak bu benim bir mikrodenetleyicideki ilk devrem.

Yapım hakkında

Diyagram bir pili gösteriyor, ancak ben takmadım.
Elektrikçide elektrik olmaması saçmalık ama ben tabeladaki pili hesaba kattım.
"1.hex" dosyası flaş sabit yazılımıdır, "2.hex" dosyası EEPROM sabit yazılımıdır.
"1, 2, 3" açılış kodu başlangıçta EEPROM'a girilir. Kod, "#" düğmesine bastıktan sonra kilidin açılmasıyla değiştirilir. Kod en fazla 125 karakter içerebilir.

E. Pereverzev'in makalesinden mühürlü versiyon

Devrenin kendisi, “Açma”, “Kapama” butonları, güç kaynağı kutusuna vakumlu devre kesicinin kontrol ünitesinin altından yerleştirildi.

Eski bir tarayıcıdan kullanılan güç kaynağı.
Solenoidi eski bir elektrik laboratuvarından kullandım, bir eksi - solenoid 1,5 A tüketiyor.

Klavyeyi eski bir telefondan aldım.


Soğukta çalışmayacakları için lastik temas noktalarının çıkarılması gerekiyordu. Onların yerine SWT-9 düğmeleri koydum. Kilidi (soğuk) takmak henüz mümkün değil. Ancak şema tamamen işlevseldir.

--
İlginiz için teşekkür ederiz!
Datagor dergisinin genel yayın yönetmeni Igor Kotov

"Radyo" dan orijinal makale:
🕗 20/12/11 ⚖️ 512.66 Kb ⇣ 111 Merhaba okuyucu! Benim adım Igor, 45 yaşındayım, Sibiryalıyım ve hevesli bir amatör elektronik mühendisiyim. 2006'dan beri bu harika siteyi buldum, oluşturdum ve sürdürüyorum.
10 yıldan fazla bir süredir dergimiz sadece benim pahasına var.

İyi! Bedava bitti. Dosyalar ve yararlı makaleler istiyorsanız - bana yardım edin!

PIC16F628 mikrodenetleyicisinde, yalnızca bir LED'in göstergesini kullanarak tek bir düğmeyle dört basamaklı bir kod girmenize izin veren aşağıdaki basit bir kod kilidi şemasını sunuyoruz. Düğme tek başına yerleştirilebilir veya daha fazla gizlilik için bir düğme bloğuna dahil edilebilir.

Bu basit devre, otomatik kapıları açma dürtüsü, ışıkları açıp kapatma, binalara erişim, güvenlik sisteminde, silahsızlandırma ve devreye alma gibi çeşitli şeyleri kontrol etmenizi sağlar.

Kod doğru girilirse çalışır. Rölenin hangi çalışma modu seçildiğine bağlı olarak ya belli bir süre aktif olur ya da sadece tekrar kod çevrildiğinde açılıp kapanır.

PIC16F628'deki kod kilidinin çalışma modları

Kod kilidi devresinin iki çalışma modu vardır. Bunlardan biri devrenin gizli bir kodun girilmesini beklediği normal çalışma modudur. İkinci mod programlamadır. Bu mod, kilidin çalışmasını yapılandırmak için kullanılır.

Kod giriş durumu

Gizli kodu girmek için sırayla dört hane girmelisiniz, her hane SA1 düğmesine basma sayısına karşılık gelir. İlk rakam girildikten sonra, LED bir kez yanıp sönecektir. Ardından bir sonraki numarayı girmeniz gerekir. Dördüncü haneyi doğru çevrilen bir kodla çevirdikten sonra, LED üç kez hızlı bir şekilde yanıp sönecek ve röle aktif olacaktır. Kod yanlış girilirse, LED de üç kez, ancak yavaşça yanıp sönecektir. Daha sonra tekrar girmeyi deneyebilirsiniz. Başlangıçta, 1234 kodu mikrodenetleyicinin belleğinde saklanır.

Kod kilidi programlama durumu

Devre, gizli kilidin çalışma modunu değiştirmek için kullanılan bir SA2 anahtarı sağlar. Anahtar kapatıldığında, cihaz programlama durumundadır. Bu anahtarın durumunun yalnızca güç uygulandığında sorgulandığına dikkat edilmelidir, bu nedenle konumunu değiştirirken devrenin gücünü kapatıp açmak gerekir.

Kod kilidi programlama menüsü üç öğeden oluşur:

  1. PIC16F628 mikro denetleyicisinin belleğine yeni bir gizli kod yazılması. SA2 programlama moduna alındığında ve güç açıldığında, LED tek yanıp sönme ile yanacaktır. Bu, ilk menü öğesinde olduğunuzu gösterir. Yeni bir kod kaydetmek için, normal girişte olduğu gibi her bir rakamı sırayla girmelisiniz. Son haneyi girdikten sonra, cihaz bir dizi hızlı LED yanıp sönmesiyle başarılı tamamlamayı onaylayacaktır. Artık gücü kapatabilir ve SA2 normal moda geçebilir veya kod kilidi programlama menüsünün ikinci öğesine gidebilirsiniz. Bunu yapmak için SA1 düğmesine basın ve en az 3 saniye basılı tutun. Düğmeyi bıraktıktan sonra, LED iki kez yanıp sönecektir.
  2. Röle süresindeki değişiklikler. Her basış bir saniye ekler. Rölenin 5 saniye boyunca aktif olmasını istiyorsanız, bir saniye basma sıklığı ile SA1 düğmesine beş kez basmanız gerektiğini varsayalım. Bundan sonra, cihaz bir dizi sık yanıp sönme ile değerin girildiğini onaylayacaktır. 3. menü öğesine gitmek için ayrıca düğmeye 3 saniye veya daha fazla basın ve bırakın. LED şimdi üçlü yanıp sönecektir.
  3. Kod kilidi rölesinin çalışma modu. Bir kez basıldığında, ikinci menü öğesinde ayarlanan süre boyunca röle etkinleşir. İki kez basıldığında, röle gizli kod girildiğinde açılır ve yalnızca gizli kod tekrar girildiğinde kapanır.

PIC16F628 mikro denetleyicisini programlamak için, açıklanan basit bir programlayıcı kullanmak modadır.

benzer gönderiler