Elektronik / Mikrodenetleyici Projeleri/

PIC16F877 ile LCD Göstergeli Şifreli Kilit

Sponsorlu Bağlantılar

1-Şifreleyici devre PIC 16F877 ile yapılmıştır. Montajı kolay ve maliyeti düşüktür.

2-Bu devrede PIC16F84 ’ün EEPROM hafızasını kullandım.Bundan dolayı yazdığımız şifre PIC16F877 ’nin besleme enerjisi kesildiğinde kaybolmaz.

3- PIC 16F877 i şebekeden gelebilecek parazitlerden korumak için filtre düzeneği son derece gereklidir.Aksi halde EEPROM hafızası bozulur veya PIC resetlenir.

pic16f877-lcd-sifreli-kilit-devresi pic16f877-lcd-sifreli-kilit-beslemesi-7805-regulator

ÖNEMLİ NOT= Devrenin +5v beslemesine anahtar bağlamayın .Çünkü anahtara basılma sırasında kontak sıçraması oluşur.Bu sıçrama PIC16F84’ün EEPROM hafızasını etkiler.
4-Yazdığımız şifreyi defalarca değiştirebilir, 1 ile 10 haneli sayılar yazabiliriz.5-Şifreyi sadece 3defa yanlış girme hakkımız var . 3. defa yanlış girersek devre kilitlenir ve pin 2 kodunun girilmesi gerekir. Pin 2 kodu girildikten sonra şifre tekrar yenilenir .

6-program açık unutulursa otomatik kapanır.

UYARI= PIC 16F877 ‘e en az 8MHZ kristal kullanınız

KULLANMA KILAVUZU

1-Filtre bobini ve kondansatörler mutlaka gereklidir bunların değerleri şunlar:
kutusuz kondansatörler 100n 63v
kutuplu elektrolit kondansatör 220mf 16v veya 470mf 16v
filtre bobini 0,5mm izoleli telden halka biçimindeki Ferit nüveye 10 tur sarılmalı.

2-PIC ‘i ilk defa çalıştırıyorsanız RB7’ye bağlı yeni şifre yaz uyarı ledi Yanar ve LCD ekranda YENI SIFREYI GIR yazısı çıkar Bu sırada kullanacağımız şifreyi yazarız. Yeni Şifreyi yazdıktan sonra # tuşuna basarız. Ekranda SIFRE KAYDEDILDI yazısı çıkar bir süre sonra GIRIS ICIN * BAS yazısı sürekli gözükür.

DİKKAT=PIC ‘e sadece 1 ile 10 haneli bir sayı yazabiliriz

3-Kilidi açmak için önce * tuşuna basarız.Sonra GIR ledi sürekli yanar ve ekrenda SIFREYI GIRINIZ yazısı gözükür .Bu sırada şifremizi gireriz .son olarak # ye basarız .Şifre doğru girilmişse ekranda SIFRE DOGRU yazısı çıkar RB0 ‘a bağlı LED Yanar.Röle enerjilenir.

Şifre yanlışsa RB5 ‘e bağlı LED yanar ve ekranda AAAAA YANLIS yazısı çıkar. 3 defa yanlış şifre girildiyse ekranda SIFRE KILITLENDI PUK KODUNU GIRIN yazısı gözükür

Bu durumda pin 2 kodu girilir .

4-PORTA,5 e bağlı otomatik kapa anahtarına basılı ise kilit bi süre açılır daha sonra kapanır anahtara basılı değilse kilit sürekli açık kalır kilidi kapatmak veya şifreyi yazmaktan vazgeçmek için * tuşuna basarız

5-PIC ,başla işlemi yapıldıktan sonra 2 dakika çalışır otomatik olarak ana programa döner

PIN 2 KODU:

PIN 2 Kodu 45 defa 1 tuşuna sonra # 10 defa 0 tuşuna ve # tuşuna basılıp tamamlanır. Bu kodu yanlış girerseniz

Program açılmaz. Bu kodları sadece asm içinde değişir.

ŞİFRE DEĞİŞTİRME:

Şifre değiştirmek için önce eski şifre girilir ve kilit açılır. Sonra RA4’e bağlı şifre değiştir butonuna basılır.RB7 ‘ye bağlı
LED yanınca buton bırakılır . yeni şifre yazılıp # tuşuna basılır ve LED1 söner.

ŞİFRE UNUTULURSA

Şifre unutulduğu zaman açmanın sadece iki yolu var . Bunlar:
1-PIC 16F84 ‘ü programlama kartına takıp EEPROM veri kısmında şifre görülür ( EEADR 0……9 arası ) EEADR 11 de en son kaç haneli şifre girildiği görülür.

2-Şifre değiş butonu ile 5 tuşuna basılı tutulur. Bir süre sonra LED2 ve LED3 birlikte sürekli yanar .pin 2 kodu girilir.
Daha sonra LED 1 ışık verir ve diğer ledler söner.yeni şifre yazılıp # tuşuna basılır .

NOT=PIN 2 KODUNU ASM DOSYASINDAN DEĞİŞTİREBİLİRSİNİZ ( KILIT ETİKETİNDEN SONRASINI İNCELEYİN )

Dosyalar: PIC16F877 ile LCD Göstergeli Şifreli Kilit

Dosya indirme LINK listesi (TXT formatında) link-86.zip şifre-pass: 320volt.com

  • pasan

    Nice. But iw will be very nice if u write words in ENGLISH on LCD.

    Thanks

  • yuxexe

    Güzel olmuş, eline sağlık.

  • enver

    Güzel olmuşda şifreyi giremiyorum ve şifre deneyemiyorum buzzerr sürekli çalıyor

    • BEDİRHAN

      s.a kardeş bende aynı sıkıntıyı yaşadım eğer çözdüysen bana da bilgi verir misin

  • profahmet

    Değerli arkadaşlar.
    Yayınladığım devrelerin proteus .DSN dosyaları güncellenmiştir.

    Devreyi proteusun 7.2 den sonraki versiyonlarında denerken keypad (tuş takımı) sorun çıkarıyordu.
    Bu sorunu gidermek için eski bir versiyon proteusun KEYPAD.DLL dosyasını ekledim. Yeni versiyon proteus kullananlar vermiş olduğum KEYPAD.DLL dosyasını proteusun kurulu olduğu dizindeki MODELS klasörüne yapıştırsın ve değiştirmeyi onaylasın. Bunu yaptıktan sonra devreleri proteusta sorunsuz simüle edebileceksiniz.
    Ayrıca .DSN dosyalarını tüm proteus 7 sürümlerine uygun hale dönüştürdüm.

    Güncel dosyaları buradan yada web sitemden indirebilirsiniz.

    ilginize teşekkür ediyorum.

  • tuba

    bu projede yardıma ihtiyacım var yapabilen arkadaş varsa msnden eklesin beni tubi_tuba.karaman@hotmail.com

  • nancy

    Paylaşımınız için teşekkürler,picte yeni olduğum için anlayamadığım bir nokta var devrenizde pic16f877 kullanmışsınız ancak 16f84’ün eepromunundan bahsediyorsunuz 16f84 eepromu nerede kullandınız?Ve elinizde baskı devre için ares çizimi mevcutsa paylaşabilir misiniz?

  • hawke

    Selamün aleyküm arkadaşlar bu devreyi yaptım tamam iyi güzel ama 2 satır ekranımın sadece 1. satır çalısıyor ve ve karakterlerın bütün pikselleri çalısıyor yani anlayacağınız 1. satır full çalısıyor yazı yok ama, neyse lafı uzatmayalım devreyi onlarca defa kontrol ettim yanlışlık 1 tane buldum resimde kristale kond. bağlanmamış görünüyordu bir bu eksiğim vardı bunu çözdüm yine aynı f877 ve f877a ile denedim yine aynı kristali ilk 10mhz arkasından 8 mhz kullandım yine aynı yine aynı ledler yanıyo şifre gir ledi yanıyor şifre giriyorum sonradan şifreyi yanlış giriyorum hata ledi yanıyor vs vs ama lcd ye görüntü aktarımında sorun var kafamda saç kalmadı bu yüzden ya biri Allah rızası için yardım etsin çıldırmak üzereyim ……

  • Serkan

    Bu otomatik kapama anahtarı ne işe yarıyor…

  • Burak

    kardeşlerim bu devrenin baskı devresi elinde olan varsa paylasabilir mi ??

  • Goktug

    Mmerhabalar. Öncelikle elinize sağlık. Ancak birşey sormak istiyorum. bu indirdiğim asm dosyasını ne isle derleyebilirim. ben de birseyler eklemek istiyorum da. teşekkürler saygılar…

  • MPLAB ile kodu değiştirip derleyebilirsiniz

    MPLAB IDE v8.60 Full: http://ww1.microchip.com/downloads/en/DeviceDoc/MPLAB_IDE_v8_60.zip

    http://320volt.com/microchip-mplab-kullanim-kilavuzu/

  • Goktug

    Gerçekten çok ama çok teşekkür ederim! Şimdi indiriyorum. Çok sağ olun çok teşekkürler … :)

  • SERKAN

    2X20 display kullandım. Devreye enerji verdiğimde 1.satırda 20 tane kare çıkıyor.Bunun nedeni ne olabilir.

    Osilatörü HS yapıp Ic-prog ile tekrar pic’i programladım.Fakat sadece 1.satırda 20tane kare çıkıyor. Pic’i yeni aldım. Pic16f877 – 4p. (4p’sinden kaynaklanabilirmi, 20p mi olması gerekiyor).

    Tuş takımını yanlış bağlamamdan yada bağlamamamdan kaynaklanabilir mi?

    Yardımcı olurmusunuz…

  • Ozan

    asm dosyasını kendım derlemeye çalıştım keilda başından sonuna kadar

    1664 : error A9: SYNTAX ERROR Derleyemiyorum asm yi.

  • Goktug OZEL

    2 lcd denedim çalışmıyor. Ne yapabilirim acaba? yaklaşık 1 aydır kurmaya çalışıyorum olmuyor devrede bir sorun yok değil mi? yapan arkadaslar kendi yaptığı devreyi eksiksiz sorunsuz paylaşabilirler mi? Teşekkür ederim…

  • @Goktug OZEL devrenizde hata vardır bağlantıları, malzemeleri kontrol edin @profahmet hocamın bizzat denediği çalışan ve bir çok kişinin uyguladığı bir proje

    öncelikle yaptığınız devrenin altlı üstlü net resimlerini gönderin kontrol edelim

    iyi çalışmalar

  • Goktug OZEL

    Anlıyorum.. O zaman tekrar kontrol etmeliyim. En kısa sürede fotoğraflarını çekip sizinle tekrar iletişime geçeceğim ilginiz için çok teşekkür ederim saygılarımla…

  • selam.
    devreyi kendim defalarca yapıp çalıştırdım ve bunu başka deneyenlerde çalıştırdılar. test videolarını youtube’de bulabilirsin.
    senin tam nerede hata yaptığını buradan söylememiz çok zor ancak tahminlerde bulunabiliriz.
    1- hex dosyasını doğru yüklediğine emin ol ve config ayarlarını değiştirme.
    2- pic16f877 besleme pinlerini bağlamayı unutma.
    3- malzemelerin sağlamlık testini mutlaka yap.
    4- kurduğun devrede kısadevre veya temassızlık olabilir.
    5- malzemelerden birinin bağlantılarını hatalı yapmış olabilirsin.

    kolay gelsin.

  • Ozan

    Regüle devresini yapmayıp 5 v besleme versem yine aynı mantık mıdır.

  • Onur

    puk 2 kodunu asm DEN bulamadım ?

  • gökhan

    Selam öncelikle devrede emeği olan herkese teşekkür ederim. Bu devreyi okulda projemde kullanmayı düşünüyorum. Fakat hocayla görüştüm www.prof……. yazan yere adını yazman gerek dedi. Günlerdir uğraşıyorum yapamadım asm-hex çeviriciler mplab falan derken kafayı yiceğim yardımcı olursanız çok memnun olurum…şimdiden teşekkürler.

  • kadir

    Gökhan arkadaşım bahsettiğin sorunu 16f877sklt isimli asm dosyasının içindeki reklam kısmındaki ( MOVLW A’W’ ) www.prof… diye devam eden ‘ ‘ bu işaretler arasında kalan yerleri kendine göre yazman gerekiyor ve yeni dosyanı tekrar düzenlemen lazım. galiba. bu arada bende bu projeyi yapmayı planlıyorum..

  • @Gökhan
    güncellediğim dosyalarda bu yazıyı kaldırmıştım. orjinal link bu
    http://profahmet.googlecode.com/files/16f877sklt.zip

    kolay gelsin.

    • bedirhan

      s.a hocam ben devreyi yaparken 17f877a kullandım ve buzzer ve ledler sürekli yanıyor entegreyi dğiştirmem lazım mı

  • gökhan

    çok teşekkür ederim hemen indirip deniyrum

  • gökhan

    hocam dosyaları indirdim denedim gayet güzel çalışıyor ama asm dosyasındaki ‘iyi günler’ yazan yerdeki karakterleri değiştirdim ve mplab ile denedim hata veriyor ve error olarak görünen config satırı. Yani oraya istediğim bir şeyi yazmam mümkünse bunu nasıl yapmalıyım?

  • halit

    Sayın arkadaşlar bu devre çok güzel çalışmakta çalıştıramayan arkadaşlar mutlaka bir yerlerde yanlışlık yapıyor olmalaı

    TESTET
    	CALL	BEKLE	;kontak sışramasını önle
    	BTFSS	PORTA,3	
    	GOTO	TESTET
    	MOVLW	.10
    	SUBWF	YAZKOD,W
    	BTFSS	STATUS,Z
    	GOTO	KILIT
    	GOTO	BYDZ_0
    ;---------------------------
    BYDZ_0
    	CALL	ZAMAN_0
    BYD2
    	MOVLW	.3
    	SUBWF	SAYAC4,W
    	BTFSS	STATUS,Z
    	CALL	ZAMANSAY
    

    burada 10 ve 3 sayılarını değiştirmelisin tabi bu orjinal asm de 45 ve 10 dur 45 defa 1 10 defa 0 dır sen bunları değiştirirsen puk kodun değişmiş olur ben bu devreyi yaptım ve arabamda kullandım aracımda kontak bulunmuyor sifreyi giriyorsun ve arabam çalısıyor çok güzel bir devre ahmet hocaya tesekkür ederim

  • gökhan

    devreyi yapan arkadaşlar baskı devre varsa gönderebilirmisiniz?

  • halit

    Bu işine yarar kardeş

    http://320volt.com/wp-content/uploads/2011/02/16f877sifreli-kilit-uygulamasi.zip

  • Göktuğ

    Yeni güncellenen projeyi indirdim ancak açılışta hata veriyor galiba Proteus uyuşmazlığı nasıl giderebilirim acaba. Şimdiden tüşekkürler arkadaslar.

  • Halit

    proteus 7,5 i kullanırsan böyle bir derdin kalmaz devre süper çalışıyor değişiklik yapmaya acık bir çalışma şahsen kendi aracıma monte ettim süper çalışıyor

  • ommer

    selam.projenin baskı devresi yok kendim uğraştım fakat elde edemedim ısısdan arese aktaramadım yardımcı olabilirmisiniz?

  • ali

    ilk açılışta * a basıyoruz fakat şifresi nedir bu devrenın ben acamadım bir türlü

  • halit

    yazılımı denetleyiciye yükleyip devreye enerji verdiğinizde sizden öncelikle yeni şifrenizi girin demeli.
    @ali kardeş devreyi isis de simüle ediyorsan hatalar verebilir bunu gercek hayatta uyguladığında bu böyle işliyor

  • ali

    profahmet hocam bu devreyi yaptım yanlız 3 adet sorunum var
    1. bu lcd bacaklarını 1 e 1 dirakmı bağlıyoruz yoksa isis deki gibi hangi bacak hangisine geliyorsa o sekildemi bağlıyacağız
    2. tus takımı kartını çıkardım fakat iki bacaklı buton aldığımdan bunu yapamadım 2 bacaklı buton için tus takımı devresi çizebilirmisiniz. ben ayrıca 3×4 tus takımı aldım bunda 8 adet giris var fakat kartta 7 adet bunun bağlantısı nasıl olur.
    3. 10k potansiyometre aldım bluemavi adlı siteden bakarmısınız doğrumu almısım.

    http://www.bluemavi.com/vitrin/tablo_new.asp?adet=1&kitap_id=761269#ara

  • Perviz

    ben devreyi yapmaya başladım keypad kaldı bir de lcd almak.

    http://320volt.com/en-basit-ucuz-seri-pic-programlayici-rcd-programmer/ bu programlayıcı ile 16f877a yı programladım çok kolay oldu. Ali arkadaşım

    1. lcd bacakları 1e1 bağlanacak

    2. istediğin 3×4 tuş takımı devresi <<>> Halit arkadaşın verdiği kaynakta var

    3.10k potansiyometren doğru ama büyük onun ufakları var.

    herkese kolay gelsin )))))))

  • emin

    çalıştırmak istediğimiz elemanı röle ayaklarına bağlıyoruz değil mi?

  • ali üründü

    lcd birebir bağladım lcd üzerindeki dirençden duman çıktı.
    ve keypad 3×4 hazır olanı aldım bunu naslı bağlayacağım

    • Engin

      Öncelikle kolay gelsin LCD’nin üzerinde bulunan eleman normal bir direnç değil eğer normal bir direnç taktıysanız yanlış olmuştur orada ki eleman 10K değerinde ki potansiyometre takılması istenmiş sadece uyarıyım dedim :)

  • EMRE

    Hocam bu devrenin hareketlerini ayrı bir haberleşme devresi (seri port patarel port) ile bilgisayar aktarıp oradan müdahale edebilirmiyiz. örnek kontağın açık vaya kapalı olduğunu.veya şifre doğru olsa bile kapının açılmamasını bilgisayardan kontrol etmek mümkünmü

  • recep

    merhabalar simülasyonda çalıştırdım fakat role çekmiyor hata olablirmi simülasyonlamı alakalı

  • Hasan

    Merhaba hocam filtre bobini 10 tur sarılacak demişsiniz bunun hazırını bulabilir miyiz?

  • selo

    Slm arkadaşlar Proje ödevi olarak Pic 16F877 Şifreli kapı kilit devresinde aldım. CCS C Compiler programı ile nasıl programlayabilirim.Yardımlarınız için teşekkürler.

  • oktay

    Ahmet hocam elinizde PIC16F877 ile LCD Göstergeli Şifreli Kilit devresinin ARES ÇİZİMİ varmıdır ? paylaşabilirmisiniz ?

  • saruhan

    hocam bu devreyi kapıya monta etsem çıkışı yani motoru bağlıycam yer neresi….

  • oktay

    devresi kaçıncıya kuruyorum bir kere olsun dogru dürüst çalışmadı…bir kere buzzer sürekli öttü,bir kere işlem yaptı ama lcd ekranda yazı çıkmadı,bir kere de sürekli hata ledi yandı.Ahmet hocam yardım edin aylardır bu devreyle uğraşıyorum ?

  • Yusuf Akdeniz

    şifreyi değiştiremiyorum ben RA4 , RB7 nereler oluyor

  • Hasan Nadir

    arkadaşlar merhaba baskı devreye ulaşamadım yardımcı olurmusunuz

  • yakup

    merhabalar.
    benıım bunu C++ ile yapmam lazım lakin bu hex. dosyasındaki yazılım hangı programla yazılmış bunu C++ nasıl donusturebılırım ?