Gelişen mikrokontrol teknolojileri ve artan bilgi birikimi sayesinde geliştirici düzeyinde daha yaygın kullanımına olanak tanımıştır. Burada elimden geldiği kadar bazı örnekler sunmaya çalışacağım... Görüleceği gibi ilk örneklerimizde çoğunlukla ASM üzerinde iken daha sonraları C üzerinde örnekler yer almaktadır. Hatta ilerleyen zamanlarda Arduino örneklerinin yer alması kaçınılmaz olacaktır.

tuş takımı etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
tuş takımı etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

5 Şubat 2017 Pazar

Atmega16 ile LCD Ekranlı Şifreli Kilit

İnsanların güvenlik ihtiyacı her zaman olmuştur. Pencere, kapı gibi yapılarda kullanılan mekanik sistemlere günümüzde elektronik ve elektromekanik sistemler eklenmiştir. Şu anda ise güvenlik kasa kapısı, kapı, vb yapılarda rahatlıkla kullanılabilir hale gelmiştir.

Bu projede "Atmega16 ile LCD Ekranlı Şifreli Kilit" uygulamaya gerçekleştirmeye çalışılacaktır.

Kapı Kilidi
Şekil-1 :Eski ahşap kapılar ve üzerinde kullanılan kilit mekanizması. Sağdaki mekanizmanın görünümü. Bu mekanizma kapının yanındaki duvarda bulunmaktadır.

Şekil-2 :Şekil 1'deki kilit mekanizmasının kesit görünümü ve çalışması. Çalışma şekli (alttaki) açma mandalına (1) basma ile dili geriye doğru itilmekte ve kapıyı tutan çıkıntıda geriye kayınca (2) kapı kolaylıkla açılmaktadır. Kilit mekanizmasında kullanılan ahşap esnek olmak zorundadır.

Şekil-3 :İki kanatlı bahçe kapılarında kullahılan kilit mekanizması. Burada kilit açma mekanizması kapının kanadının üzerinde ve kilit mekanizması ise kapının üzerinde bulunur. Açma mekanizması (1) el ile yukarı kaldırıldığında, kapının üzerindeki kilit mekanizması kapının arkasından dayandığı çentiği çeker ve kapı (2) itilerek açılır. Buradaki kilit mekanizması yerçekimi etkisini kullandığı için ahşabın esnek olması sorunu yoktur. Ayrıca açma mekanizması uzunca bir tahta ile monte edildiği için kapı üzerindeki yarık gizlenmiş olur. Kapı üzerindeki halkalar gerektiğinde ip ile bağlanmakta veya asma kilit için uygun olmaktadır.

Geçmişte Anadolu'da kullanılan basit mekanik anahtar/kilit mekanizması mevcuttu. Özellikle ahşap malzemeden yapılan sistemden de kapıyı rahatlıkla kilitleyerek en azından istenmeyen girişleri bir yere kadar engelleyebiliyordu. En azından belirli bir güce erişememiş çocuklar ve hayvanların girişini engellemeye yeterliydi Ama insanların saklaması gereken eşyalarının artışı ile birlikte kapılara asma kilit eklediler, günümüzde ise çoğunlukla daha güvenlikli mekanik kilitlerle birlikte ahşap kapılar (en azından dış kapı) demir kapılar ile değiştirildi.
Şekil-4 :Günlük hayatımızda kullandığımızın kullandığı anahtar veya kilit mekanizmasının görünümü. Yapı farklı olsada çalışma şekli olarak benzerdir. (Kilit mekanizmasının dil ve diğer aksam gösterilmemiştir). Ortadaki çizmde, anahtar takılı değilken pimler orta göbeğin hareketine engel olacak şeklide kayar.(sağda) Uygun anahtar takıldığında pimler göbek bölümün hareketine izin verecek şekilde konumlanır, bu sayede göbek rahatlıkla döner. Buda dil mekanizmasının hareketine izin verir.

Birçoğumuzun (apartman) kapılarında insanların konforunu sağlamak üzere elektromekanik kilit sistemi vardır. Bu sistemde dil bir elektromıknatıs yardımı ile çekilerek kapının açılması sağlanır. Bu projedeki devre ile işe bu sistem girilen şifre ile kapının açılması sağlanır.

Tuş takımından girilenr şifre bir LCD ekranda görüntülenirken, girilen değer işlemcinin hafızasındaki değer ile uyuşursa, 1.5 saniyelik bir çıkış verir. Bu 1.5 saniyelik çıkış herhangi bir şekilde bir elektomekanik kapı kilidini çalıştırmak için yeterlidir.

Her ne kadar şifreli kilit olarak belirtilse de, mutlaka başka bir kullanım alanı bulunabilir. Küçük birkaç değişiklikle pekala başkasının kullanması istenmeyen bir cihazı çalıştırmak için kullanılacak bir devre haline getirilebilir.
Devrenin Çalışması
Şekil-5 :Tuş takımının parçaları. Soldan sağa,üstten alta gelecek şekilde konumlanmıştır.

Devre işlemci üzerine kurulu ise de butonlar bu devrenin vazgeçilmez bir parçasıdır. Çünkü şu an için en kolay veri giriş yöntemini oluşturmaktadır. Devrede kullanılan membran tuş takılarının yapısı ve çalışma şeklini internette bulabilirsiniz.
Şekil-6 :Tuş takımının tarama sistemi. (Gösterim olarak) Satır çıkışları 74HC20 tarafından kesme üretilirken işlemci tarafından hangi tuşun basıldığını belirlenir.

Projede 12 butonlu bir giriş tuş takımı kullanılmaktadır. İşlemciye bağlayabilecek kadar işlemci üzerinde bu kadar bacak olsa da, çoğullama yöntemi kullanılmaktadır. Bu butonların bağlantı sayısını azaltırken aynı zamanda veri işlenmesinde de kolaylık sağlamaktadır. Temelde LED çoğullama yöntemine benzer. Yani butonlar satır ve sütun oluşturacak şekilde matris olarak bağlanır. Örneğin sütunların sürüldüğünü varsayarsak;
Tüm sütunlar lojik 1 olarak sürülür. İlk sütun lojik 0 ile sürülür, bir süre sonra iki sütun lojik 0 ile sürülürken 1.sütun lojik 1 yapılır ve bu şekilde sadece bir sütun lojik 0 olacak şekilde sürülür. Burada ince nokta bir tuşa basıldığı zaman hangi sütunun lojik 0 olduğunu bilmektir.

Projedeki sistemde kesme sistemi yer almaktadır. Yani bir tuşa basıldığında hangi tuşa basıldığı farketmeksizin harici bir kesme üretir. Program kesme betiğine yönlendirildiğinde artık tuşun hangi satırda olduğunun belirlenmesi ve sütun bilindiğine göre basılan tuşa bir değer ataması yeterlidir. Devrede kesme üretmek için tuş takımın satır için kullanılan bacaklarına bağlanan 4 girişli VE DEĞİL (NAND) kapısı kullanılmaktadır. Her halükarda lojik sistemlerde belirsizlik sorun olduğu için her satır bacağına 10K'lık pull-up direnci bağlanmıştır.

Devrede sütunlar sürekli lojik 0 ile taranmaktadır. Bir butona basıldığı zaman hangi sütuna denk geldi ise satır ile bağlantı sağlandığından o satır lojik 0'a çekilir. Dolayısı ile VE DEĞİL kapısı lojik 1 çıkış vererek bir kesme çıkışı üretir. Kesmeye giren işlemci programı sütun bilindiğine göre satır için tarama yaparak hangi tuşa denk geldiğini belirler. Bu değeri ekrana yazar ve 6 haneli şifre için giriş yapar ve butonun bırakılmasını bekler, buton bırakıldığında kesme programından çıkar. 6 tane giriş yapıldıktan sonra onay tuşuna basılması ile girilmiş olan değer ile şifre karşılaştırılır uygun ise yaklaşık 1.5 saniye için alarm çıkışını aktif hale getirir. Şifre uygun değil ise bir şey yapmaz. Şifreyi kullanmaya çalışan kişiye geri bildirim yapmamak lazım. Tek geri bildirim şifre doğruysa alarm çıkışının aktiflemektir.

Devre ilk açıldığında LCD ekran başlangıç betiği işlemlerini yerine getirir. Bunun ardından şifre için kaydedilmiş olan değeri EEPROM'dan okur ve ilgili registere kaydeder. Sütun taraması işlemine geçer.

Devre
Şekil-7 :Yapılmış halde devre.

Devreyi işlemci (Atmega16), tuş takımı, karakter LCD, çıkış sürücüsü ve besleme olarak bölümlere ayırabiliriz.
Şekil-8 :Ana kart.

İşlemci devredeki ana bağlayıcı öğe olarak tuş takımı sürerken aynı zamanda tuş takımında basılan tuşulardan gelen bilgiyi denetler, karakter LCD'yi sürer ve gerekli mesajları gönderir, şifre doğru girişmişse belirli bir süre için (yaklaşık 1.5 sn kadar) açık kollektörlü çıkış sürücüsünü tetikler. Ayrıca ekranda rakam yerine "*" karakteri için köprü girişi ve şifre değiştirilmek istendiği zaman kullanılan ikinci bir köprü girişi yer almaktadır.
Şekil-9 :Membran tus takımı. Membran konnektöründe üzerinde 1 nolu uç belirtilmese de karışıklığı önlemek amacı ile belirtilmiştir.

Tuş takımı 3x4 matris yapılı telefon tuş takımı biçimindeki membran anahtar grubudur. 7 bacaklı dişi sıra pin çıkışa sahiptir.
Şekil-10 :2x16 karakter LCD. Mavi renk güzel görünüyor, her ne kadar arkaplan aydınlatması beyaz olsada. Tercih sebebi arkaplan aydınlatması 2 beyaz led ile yapılıyor olması.

Çıkış sürücüsü NPN transitörtdür. Base ucuna uygulanan sinyale göre kollektörüne bağlanan yükü enerjiler. (Yük VCC ve Transistör Kollektör arasında olması kaydı ile)

Besleme bölümü 7805 ile girişe verilen beslemeyi devreye uygun +5V haline dönüştüren bir yapıdır. Sadece girişte ters bağlama ihtimaline karşı köprü diyot eklenmiştir. Gerektiğinde bu köprü diyot devre dışı bırakılabilir
Şema
Devrenin kalbini IC1 (ATMEGA16) oluşturuyor.

IC1'e (ATMEGA16) bağlı C7,C8 (27pF) ve X1 (4MHZ kristal) oluşan parçalar işlemci için gereken saat sinyallerini oluşturur. P2 portu üzerinden işlemciye bağlı LCD kullanıcı ile arayüz oluşturur. Ayni şekilde P2 üzerinden LCD ekrana bağlı olan R2 (10K) trimpot ekranın kontrast ayarını değiştirmeye olanak verir.
IC2 (74HC20); işlemci P5 üzerinden tuşların sütun taramasını yaparken, bir tuş basıldığında satırlar üzerinden işlemciye harici kesme üretmesi için bir çıkış verir. Tuş takımının satır uçları, IC2 (74HC20) ve IC1 (Atmega16) ortak uçlarına bağlı olan R7..R10 (10k) dirençler C1 ve IC2 giriş uçları için pull-up işlevini yerine getirir. IC2'nin kullanılmayan kapısının girişleri lojik 0'a bağlanarak korumaya alınmıştır.

IC1'e bağlı R3(10K) pull up direnci olarak çalışmaktadır. IC1 (ATMEAGA16) bağlı olan R4(1k), R6(10k) ve Q1 (BC547) bir dijital transistör bağlantısı olarak çalışmakta dolayısı ile işlemcinin dış dünya için P3 üzerinden bir açık kollektörlü bağlantı olanağı sunmaktadır. (P3'ün bir ucu +5V besleme hattına bağlıdır.)
IC1 (ATMAGE16) bağlı olan R5(10K) ve J1 (YILDIZ) köprü bağlantısı ekran üzerinde basılan tuşa göre normal rakam veya (*) Yıldız karakteri arasında bir seçim yapma işlevini yerine getirir. (Köprü yok -normal rakamlar, köprü ile (*) işareti)

IC1 (ATMEGA16)'ya bağlı olan 2x3 sıra pinler işlemcinin programlanması için ISP bağlantısını oluşturur aynı zamanda MOSI ve GND bacakları arasına takılacak bir köprü ile şifre değiştirme işlevi için işlemciyi anahtarlar. (MOSI ve GND arasında köprü yok-normal şifreli kilit fonksiyonu; köprü var- Şifre değiştirme fonksiyonu)

P1'e (besleme girişi) bağlanmış D1 (W10M), D1'e (W10M) bağlı IC3 (7805) devre için gereken 5V besleme gerilimini üretir.

Geri kalan kondansatörler filtre amaçlı elemanlardır.

NotPCB üzerinde var olupta şemada P4 konnektörü gösterilmemiştir. Bu konnektör başka bir projede kullanmak üzere ayrılmıştır.
Şekil-11:Blok şeması

Şekil-12:Devre şeması (P1,P4 ve P6 konnektörü gösterilmemiştir)

Devre Yapımı

Devre montajı açısından kritik bir durum yoktur. Görüldüğü gibi devre son derece sadedir. Devre kartını küçük tutabilmek adına kondansatör ve dirençleri SMD kullanma yoluna gidildi.
Şekil-13:PCB şeması, yollar

Şekil-14:Kartların üstteki eleman yerleşimi.

Şekil-15:Kartların alttaki (SMD) eleman yerleşimi

Şekil-16:Kartların yolları birlikte üstteki eleman yerleşimi

Şekil-17:Kartların yolları birlikte alttaki (SMD) eleman yerleşimi

Şekil-18:Kartın arkadan görünümü

Devre Elemanları
470R (1206 smd)R1
1K (1206 smd)R4
10K (1206 smd)R3,R5,R6,R',R8,R9,R10
10K yatık trimpotR2
27pF (1206 smd)C7,C8
100nF (1206 smd)C1,C2,C3,C4,C5,C9
10µFC6,C10
B125C1500 veya benzeriD1
ABC016002E-BIW-02 (2x16 LCD)P2 (modül)
7805IC3
Atmega16IC1
74HC20IC2
BC547Q1
3,6864MHz KristalX1
6 Header (ISP6)ISP
2'li KlemensP1,P3
LCD için sırapin (16'lı)-
tuştakımı için sırapin (7'li)-
3x4 tuş takımıP5
2'li sırapinJ1
köprü (2 adet)-
40 bacak entegre soketi-
14 bacak entegre soketi-
34 bacak IDC (2 adet)-
16 yollu yassı kablo-
Besleme için 9V'luk adaptör unutulmamalıdır.

Devrenin Çalıştırılması
Devre monte edilip besleme verildiğinde devre çalışır ve ekranda 1. satırda "Şifre Gir:" mesajını gösterir ve sizin tuşa basmanızı bekler. Tuşa basıldığında ekranda basıldığını J1 köprüsünün durumuna göre rakam veya "*" simgesi ile görürsünüz.
Şekil-19:Açılış ekranı. Projede 2x16 ekran kullanılabilir.


Bu noktada eğer J1 takılı değilse tuşa basıldığında ekranda basılan tuşun temsil ettiği rakamı görülür. Şifre 6 haneli olarak düzenlenmiş olup başlangıç şifresi "012345" olarak belirlenmiştir. Programı tekrar derlemeden önce en alt satırdaki EEPROM ile ilgili bölümde şifreyi değiştirebilirsiniz. Değerler rakamların ASCII karşılığın olmalıdır.

Devre basitçe şifreyi yazmak için tuşlara basılır, 6 haneli rakam girişinden sonra onay butonuna basılır. Bu noktada P3 konnektöründen 1.5sn civarında bir çıkış alınır ve ekran yeni şifre için silinir.(Şifre 2. satırda gösterilmektedir)
Şekil-20:J1 takılı değilken tuşa basıldığında ekranda gösterilen bir örnek


J1 köprüsü takılı iken tuşa basıldığında ekranda "*" simgesi görülür. Ama yine de devre şifre kontrolu yapar.
Şekil-21:J1 köprüsü takılı iken

Şekil-22:J1 köprüsü takılı iken ekran görüntüsü örneği.


Eğer şifre kontrolunu doğru yapabilmek isteniyorsa, işlemci programlama esnasında EEPROM için oluşturulmuş dosya yüklemesi unutulmamalıdır. Eğer bu dosya unutulursa, şifre doğrulaması yapılamaz.Yeni şifre girilene kadar.

Yeni şifre girişi için ISP konnektörü üzerindeki MOSI ile GND uçları arasına bir köprü takılıyor. Ekrandaki mesaj değişzmez, ekran sıfırlanana (tuş takımı üzerindeki "C" tuşu). Rakamların görebilmesi için, J1 köprüsünün takılmamış olduğunda emin olunmalıdır. Ekranda "Yeni Şifre Gir:" mesajı görülecektir. Yeni şifra tuşlar kullanılarak girilir ve 6 rakama ulaşıldığında onay butonuna basılarak yeni şifre kaydedilir. Tekrar şifre giriş bölümüne geri dönmek için ISP konnektörü üzerindeki köprü yerinden çıkarılır ve gerekiyorsa J1 köprüsü tekrara takılır. Ekran sıfırlanana kadar ekranda bu mesaj kalır. Ekran sıfırlamasından sonra "Şifre Gir:" mesajı görüntülenir.
Şekil-23: ISP konnektörü üzerindeki köprü.

Şekil-24:Yeni şifre girişi için ekran mesajı.


Eğer yazılan şifreden emin olunamıyorsa, "C" tuşuna basılarak ekran silinebilir ve girilmiş olan şifre değeri sıfırlanabilir.

Şekil-25:Kart üzerine takılabilecek köprülerin konumları. Yeni şifre girişi için mavi, Yıldız simgesi için yeşil ile işaretlenmiştir.


EK: Şifre girişi esnasında örneğin 5 saniye içinde bir işlem yapılmazsa, sistemin sıfırlanması fonksiyonu eklenebilir. Proje sadece protatip düzeyinde düşünüldüğünden fazla fonksiyon üzerinde durulmamıştır.

Ekler:
Atmega16 hakkında bilgi için

"Atmega16 ile LCD Ekranlı Şifreli Kilit" projesi için gereken dosyalar

Bu devrenin yapım sorumluluğu size aittir. Devre yapıldı ve çalışıyor. K.A....





15 Nisan 2014 Salı

Atmega16 ve 74C922 ile LCD Ekranlı Şifreli Kilit

Kişisel güvenliğimiz her zaman için önemli olmuştur. Çünkü her zaman için sahip olduğumuz şeylere bir başkasının da sahip olma isteği vardır. İstenmeyen durumları engellemek için birçok mekanizma geliştirilmiştir. Elektroniğin gelişimi ile birlikte bu mekanizmalara bir yenisi eklenmiştir.

Bu uygulama ile "Atmega16 ve 74C922 ile LCD Ekranlı Şifreli Kilit" gerçekleştirmeye çalışacağız.
Şifreli Kilit
Her ne kadar giderek rfid kard özellikli cihazlar bu sistemlerin yerini almaya başlasa da, güvenlik gerektiren kontrollu geçiş için hastaneler, apartmanların giriş kapıları, evdeki kişisel para kasaları gibi uygulamalarda kullanılan kapının belirli bir şifre dizisi girilerek açılmasına olanak tanıyan sistemlerdir.

Belirli bir rakam dizini izleyen onay tuşu ile şifreye göre bir mekanizmayı çalıştırır. Burada biz mekanik bölümü es geçerek sadece elektronik bölüm üzerine odaklanacağız. Tasarladığımız sistemin transistör çıkışı üzerinden bir rölenin sürülebileceği bununda bir rahatlıkla bir elektromıknatısı hareket ettirebileceği bir durumu var. Bu elektromıknatıs bir evin dış kapısını açan otomat olabilir.

Not: Programda yapılacak küçük bir değişiklik (program içinde timer kurulması iptal edilerek) bir elektrikli cihazın çalıştırılması için şifre ve durdurmak için sadece silme tuşu kullanılması imkan dahilindedir.
74C922
Şekil-1 :Entegre soketi üzerine takılmış 74C922.

Entegre 16 tane tuşu (4x4 matris) tarayıp, tuşunu basıldığını algılayıp (tuş sıçramasını giderme fonksiyonu da dahil) basılan tuşa göre ABCD olarak 4 bit çıkış verebilen bir yapıya sahiptir. Osilatör için bir kondansatör kullanılabildiği gibi harici olarak saat üreteci kullanılabilir. Ayrıca tuş sıçrama sinyalini ortadan kaldırmak için kullanılan fonksiyon da ayrıca bir kondansatör ile kontrol edilebilmektedir
Şekil-2 :74C922 bacak bağlantıları.

Entegre çıkışlarını kontrol izni veren "Output Enable" bacağına sahiptir. Bu bacak lojik-0 durumunda ABCD cıkışları aktif olmaktadır. Eğer sürekli çıkış verme durumunda kalması isteniyorsa doğrudan "Output Enable" bacağın GND hattına bağlanması yeterli olmaktadır. Bu projede entegre çıkış için işlemci bacağın bağlanmış ise de, projenin çalışması açısından "Output Enable" bacağının GND'ye bağlanması bir sorun oluşturmaz. Çünkü işlemcide ABCD çıkışları başka bir başka bir entegre ile paylaşılmamaktadır.

74C922 entegresinin bir işlemci ile kullanılabileceği düşünülerek "Data Available" (Veri Hazır) çıkışı vardır. Bu çıkış herhangi bir butona basıldığı zaman bağlı olduğu sisteme tuşa basıldı sinyali vermek üzere kullanılmaktadır. Projemizde "Data Available" çıkışına işlemcinin harici kesme bacağına bağlamakta. Böylece herhangi bir tuşa basılmadığı sürece işlemcimiz kendi işine bakmaktadır.

"Output Enable" (Çıkış izni) lojik-0 durumunda iken ABCD çıkışları son basılan tuşun bilgisini tutmaktadır. Onun için "Data Available" bacağının kullanımı önemlidir.

ABCD çıkışları basına tuşa göre 0x00'dan 0x0F'ye kadar bir bilgi vermektedir. Projede kullanılan tuş takımına göre PCB yollarını fazla karıştırmamak için tuş sıralaması önemsenmedi. Sonuçta kullandığımız bir işlemci giriş bilgisini istediğimiz gibi yönledirme yapabileceğimiz bir yapıya sahip.
74C922 projede 18 bacaklı DIP kılıfındaki modeli tercih edildi.

NotMikrokontroller ile aslında bu entegre kullanılmadan da tuşların basılıp basılmadığı kontrol edilmesi ve gerekli işlemlerin yapılması mümkündür. Fakat bu entegre ile bazı işlemler basite indirgenmiş aynı zamanda mikrokontrollerin harici kesmenin kullanımı görülmüştür.

74C922 için daha ayrıntılı bilgiyi veri kağıtlarında bulabilirsiniz.

Tuş Takımı
Şekil-3 :Geleneksel bir buton, diyelim ki tuş takımının bir parçası.

Tuş takımı olarak seçilen ürün, birazda fiyatı uygun olduğu için membran olarak isimlendirilen bir malzeme. Serigrafi (ipek bez ve merdane) tekniği ile basım için uygundur. Bu sayede kolayca üretilmesine olanak sağlar.
                             Şekil-4 :Kullandığımız klavye tuşlarından oluşan set.


Şekil-5 :Klavyenin altındaki yolların ve tuş kontaklarının bulunduğu membranlar. Üstte görülen membran üzerinde ekranlama yer almaktadır.

Kullandığımız klavyelerde yaygın olarak kullanılan teknikte, bildiğimiz metal kontaklara sahip butonlar yerine plastik bir yüzey iletken boya ile basılmış kontaklar ve yollardan oluşur. Bu şekilde üretik maliyeti düşürülürken aynı zamanda işçilikten de ciddi anlamda kazanç sağlanır. Dolayısı ile kısa sürede yüksek miktarlarda üretim sağlanmış olur.

Şekil-6 :Projede kullanımı öngörülen tuş takımı çizimi. Protatip maliyetleri açısından devreyi ucuz tutabilmek adına hazır tuş takımlarından biri kullanıldı.

Tabii kullanılan tuş takımında butonlarda yine iletken boya ve plastik yüzeylerden oluşur.
Şekil-7 :Memranı oluşturan katmanların gösterimi.

Birkaç katmandan oluşan bu membran buton en üstte bizim buton olarak algıladığımız plastik yüzey bulunur. Yapılış şekline göre bazı modellerde bu katman altında butonların altına denk gelecek şekilde yerleştirilmiş deliklerin bulunduğu katman olabildiği gibi bazı modellerde bu katman atlanır. (üretici veya tüketicinin tercihine göre). Delik katmanındaki delikleri birbiri ile kanallar oluşturacak şekilde bağlanmıştır. Bu şekilde basılan butonun altındaki hava diğer deliklere kaydırılır ve buton bırakıldığında hava tekrar eski yerine gelerek butonun eski şeklini almasını sağlar. Çünkü butonlardaki deliklerin dış dünya ile bağlantısı yoktur.

Bir sonraki katman buton iletkeninin bulunduğu katmandır. Butonun altındaki yuvarlak iletken alanlardan oluşur.

Bu katman altında da buton deliklerinin bulunduğu bir katman vardır. Delikler kendi aralarında yine hava kanalları ile birkaçı birbirine bağlıdır.

Daha alttaki katmanda ile asıl yolların ve kontakların bulunduğu yerdir ki aslında tüm işlerin döndüğü yerdir. Aslında PCB'deki yolların bulunduğu katı temsil eder. Bu kattan uzatılmış yollar dış dünyada devre ile bağlantıyı sağlar. Ucuna ya bir konnektör takılır veya özel bir boya ile sonlandırılır. Boya takılacağı konnektörde daha dayanıklı yapı oluşturması içindir.

Memranlar katman aralarında ve en altta kullanılacağı yüzeye yapıştırılmasına sağlayacak şekilde yapışkanlı katmanlar ile birleştirilir. Bize en son artık alttaki kağıdı sıyırıp memranı istediğimizi yüzeye yapıştırmamız kalır.
Şekil-8 :Kullanılan mebran butonlar. Bazı tuşlar baskı devre kalemi ile elle düzenlendi.

Membranlar üzerine LED veya küçük dirençlerin yerleştirilebileceğini belirtmemizde fayda var. Hatta istenirse memranlar ekranlı bile üretilmesi mümkündür.

Sonuçta projemizde membran kuyruğuna dişi bir konnektör takılı olduğundan 7 bacaklı erkek sıra pin konnektör kullanımı ile devremize rahatlıkla bağlantı yapabiliriz.

Devre
Şekil-9 :Yapılmış halde devre.

Devreyi işlemci (Atmega16), tuş takımı,tuş takımı sürücüsü, karakter LCD, çıkış sürücüsü ve besleme olarak bölümlere ayırabiliriz.
Şekil-10 :Ana kart.

İşlemci devredeki ana bağlayıcı öğe olarak tuş takımı sürücüsünden gelen bilgiyi denetler, karakter LCD'yi sürer ve gerekli mesajları gönderir, şifre doğru girişmiş ise belirli bir süre için (yaklaşık 1.5 sn kadar) açık kollektörlü çıkış sürücüsünü tetikler. Ayrıca ekranda rakam yerine "*" karakteri için köprü girişi ve şifre değiştirilmek istendiği zaman kullanılan ikinci bir köprü girişi yer almaktadır.
Şekil-11 :Memran tus takımı.

Tuş takımı 3x4 matris yapılı telefon tuş takımı biçimindeki memran anahtar grubudur. 7 bacaklı dişi sıra pin çıkışa sahiptir.
Şekil-12 :2x16 karakter LCD.Mavi renk güzel görünüyor, her ne kadar arkaplan aydınlatması beyaz olsada. Tercih sebebi arkaplan aydınlatması 2 beyaz led ile yapılıyor olması.

Tuş takımı sürücüsü,74C922 tuş takımı sürücüsüdür. Tuş takımını tarar ve basılan tuşa göre çıkışta ABCD çıkış verir ve "Output Enable" buna eşlik eder.

Çıkış sürücüsü NPN transitörtdür. Base ucuna uygulanan sinyale göre kollektörüne bağlanan yükü enerjiler. (Yük VCC ve Transistör Kollektör arasında olması kaydı ile)

Besleme bölümü 7805 ile girişe verilen beslemeyi devreye uygun +5V haline dönüştüren bir yapıdır. Sadece girişte ters bağlama ihtimaline karşı köprü diyot eklenmiştir. Gerektiğinde bu köprü diyot devre dışı bırakılabilir

Şema
Devrenin kalbini IC1 (ATMEGA16) oluşturuyor.

IC1'e (ATMEGA16) bağlı C7,C8 (27pF) ve X1 (4MHZ kristal) oluşan parçalar işlemci için gereken saat sinyallerini oluşturur. P2 portu üzerinden işlemciye bağlı LCD kullanıcı ile arayüz oluşturur. Ayni şekilde P2 üzerinden LCD ekrana bağlı olan R2 (10K) trimpot ekranın kontrast ayarını değiştirmeye olanak verir.

Tuş takımı P5 üzerinden IC2'e(74C922) hem tuş takımını tarar hem de basılan tuşu algılamak ve sonuca uygun değeri IC1'e iletmek ile ilgili işleri yerine getirir (IC2'nin ABCD çıkışları üzerinden) . IC2'ye bağlı olan C10 (10nF) 74C922 için gereken saat sinyallerini oluşturur. Her ne kadar bu sinyallerin dışarıdan alma imkanı olsada bir kondansatör ile üretme imkanı olduğu için bu tercih edilmiştir. IC2'ye bağlı olan C9 (100nF) tuş basma esnasında oluşan tuş sıçramalarını bastırmak için filtre olarak kullanılmaktadır.

IC1'e bağlı R3(10K) pull up direnci olarak çalışmaktadır. IC1 (ATMEAGA16) bağlı olan R4(1k), R6(10k) ve Q1 (BC547) bir dijital transistör bağlantısı olarak çalışmakta dolayısı ile işlemcinin dış dünya için P3 üzerinden bir açık kollektörlü bağlantı olanağı sunmaktadır. (P3'ün bir ucu +5V besleme hattına bağlıdır.)

IC1 (ATMAGE16) bağlı olan R5(10K) ve J1 (YILDIZ) köprü bağlantısı ekran üzerinde basılan tuşa göre normal rakam veya (*) Yıldız karakteri arasında bir seçim yapma işlevini yerine getirir. ( Köprü yok -normal rakamlar, köprü ile (*) işareti)

IC1 (ATMEGA16)'ya bağlı olan 2x3 sıra pinler işlemcinin programlanması için ISP bağlantısını oluşturur aynı zamanda MOSI ve GND bacakları arasına takılacak bir köprü ile şifre değiştirme işlevi için işlemciyi anahtarlar. (MOSI ve GND arasında köprü yok-normal şifreli kilit fonksiyonu, köprü var- Şifre değiştirme fonksiyonu)

P1'e (besleme girişi) bağlanmış D1 (W10M) , D1'e (W10M) bağlı IC3 (7805) ve de IC'e (7805) bağlı C1 (100nF) ve C12 (10µF) kondansatörler ile sistem için gereken 5V besleme gerilimini oluşturur.

Geri kalan kondansatörler filtre amaçlı elemanlardır.

NotPCB üzerinde var olupta şemada P4 konnektörü gösterilmemiştir. Bu konnektör başka bir projede kullanmak üzere ayrılmıştır.
Şekil-13:Blok şeması

Şekil-14:Devre şeması 

Devre Yapımı
Devre montajı açısından kritik bir durum yoktur. Görüldüğü gibi devre son derece sadedir. Devre kartını küçük tutabilmek adına kondansatör ve dirençleri SMD kullanma yoluna gidildi.

Not: İşlemci ve 74C922'nin de ve kartın tamamının SMD olarak tasarımı mümkündür, ancak biz işlemciyi gerektiğinde farklı bir devrede kullanabilmek için bu tür bir tasarıma gitme yolunu seçtik.
Şekil-15:PCB şeması, yollar.

Şekil-16:Kartların üstteki eleman yerleşimi.

Şekil-17:Kartların alttaki eleman yerleşimi

Şekil-18:Kartların yolları birlikte üstteki eleman yerleşimi

Şekil-19:Kartların yolları birlikte alttaki eleman yerleşimi

Şekil-20:Kart çalışırken bir görünümü. Yıldız köprüsü takılı iken ekrandan girilmiş sayılar yıldız simgesi ile temsil edilmektedir. Çıkış durumunu görebilmek için seri 1K ile seri bağlanmış bir LED kullanılmaktadır.


Devre Elemanları
470R (1206 smd)R1
1K (1206 smd)R4
10K (1206 smd)R3,R5,R6
10K yatık trimpotR2
27pF (1206 smd)C7,C8
10nF (1206 smd)C10
100nF (1206 smd)C1,C2,C3,C4,C5,C9,C11
10µFC6,C12
B125C1500 veya benzeriD1
ABC016002E-BIW-02 (2x16 LCD)P2 (modül)
7805IC3
Atmega16IC1
74C922IC2
BC547Q1
4MHz KristalX1
6 Header (ISP6)ISP
2'li KlemensP1,P3
LCD için sırapin-
tuştakımı için sırapin-
3x4 tuş takımıP5
2'li sırapinJ1
köprü (2 adet)-
40 bacak entegre soketi-
18 bacak entegre soketi-
Besleme için 9V'luk adaptör unutulmamalıdır.

Devrenin Çalıştırılması
Devre monte edilip besleme verildiğinde devre çalışır (gerekli kontrollerin yapıldığı varsayılarak) ve ekranda 1. satırda "Şifre Gir:" mesajını gösterir ve sizin tuşa basmanızı bekler. Tuşa basıldığında ekranda, tuşun basıldığını J1 köprüsünün durumuna göre rakam veya "*" simgesi ile görürsünüz.
Şekil-21:Açılış ekranı


Bu noktada eğer J1 takılı değilse tuşa basıldığında ekranda basılan tuşun temsil ettiği rakamı görülür. Şifre 6 haneli olarak düzenlenmiş olup başlangıç şifresi "012345" olarak belirlenmiştir. Programı tekrar derlemeden önce en alt satırdaki EEPROM ile ilgili bölümde şifreyi değiştirebilirsiniz. Değerler rakamların ASCII karşılığın olmalıdır.
Devre basitçe şifreyi yazmak için tuşlara basılır, 6 haneli rakam girişinden sonra onay butonuna basılır. Bu noktada P3 konnektöründen 1.5sn civarında bir çıkış alınır ve ekran yeni şifre için silinir.(Şifre 2. satırda gösterilmektedir)
Şekil-22:J1 takılı değilken tuşa basıldığında ekranda gösterilen bir örnek


J1 köprüsü takılı iken tuşa basıldığında ekranda "*" simgesi görülür. Ama yine de devre şifre kontrolu yapar.
Şekil-23:J1 köprüsü takılı iken. (Kırmızı daire içindeki yeşil renkli köprü).

Şekil-24:J1 köprüsü takılı iken ekran görüntüsü örneği.


Eğer şifre kontrolunu doğru yapabilmek isteniyorsa, işlemci programlama esnasında EEPROM için oluşturulmuş dosya yüklemesi unutulmamalıdır. Eğer bu bu dosya unutulursa, şifre doğrulaması yapılamaz.Yeni şifre girilene kadar.

Yeni şifre girişi için ISP konnektörü üzerindeki MOSI ile GND uçları arasına bir köprü takılıyor. Ekrandaki mesaj değişmez, ekran sıfırlanana (tuş takımı üzerindeki "C" tuşu). Rakamların görebilmesi için, J1 köprüsünün takılmamış olduğunda emin olunmalıdır. Ekranda "Yeni Şifre Gir:" mesajı görülecektir. Yeni şifre tuşlar kullanılarak girilir ve 6 rakama ulaşıldığında onay butonuna basılarak yeni şifre kaydedilir. Tekrar şifre giriş bölümüne geri dönmek için ISP konnektörü üzerindeki köprü yerinden çıkarılır ve gerekiyorsa J1 köprüsü tekrara takılır. Ekran sıfırlanana kadar ekranda bu mesaj kalır. Ekran sıfırlanmasından sonra "Şifre Gir:" mesajı görüntülenir.
Şekil-25:ISP konnektörü üzerindeki köprü. (kırmızı daire içindeki mavi renkli köprü)

Şekil-26:Yeni şifre girişi için ekran mesajı.


İşlemin her noktasında eğer girilen şifreden emin olunamıyorsa, "C" tuşuna basılarak ekran silinebilir ve girilmiş olan şifre değeri sıfırlanabilir.
Şekil-27:Kart üzerine takılabilecek köprülerin konumları. Yeni şifre girişi için mavi, Yıldız simgesi için yeşil ile işaretlenmiştir.

EK: Şifre girişi esnasında örneğin 5 saniye içinde bir işlem yapılmazsa, sistemin sıfırlanması fonksiyonu eklenebilir. Proje sadece protatip düzeyinde düşünüldüğünden fazla fonksiyon üzerinde durulmamıştır.

Ekler:
Atmega16 hakkında bilgi için

"Atmega16 ve 74C922 ile LCD Ekranlı Şifreli Kilit" projesi için gereken dosyalar

Bu devrenin yapım sorumluluğu size aittir. Devre yapıldı ve çalışıyor. K.A....



Translate

Sayfalar

Etiketler

74C922 (1) 74HC125 (2) 74HC138 (1) 74HC20 (1) 74HC590 (1) 93C46 (5) adc (2) adım motor (1) Android (1) Arduino (5) Arduino UNO (5) at90S2313 (7) atmega128 (1) Atmega128 (1) atmega16 (5) atmega32 (4) Atmega328p (5) Atmega8 (44) attiny (1) attiny2313 (18) avr (71) barometre (1) bilgisayar ses (1) Biplor step motor (1) Bluetooth (2) bootloader (1) cep telefonu (1) CGRAM (1) CGROM (1) DHT11 (1) DS1302 (1) DS1307 (5) ds1820 (3) EDMCPR6YOY (1) ENC28J60 (3) ethernet (3) F2631XH-44 (1) fiber optik (2) floresan ekran (4) frekans (1) FT232BL (9) FT232RL (1) FTDI232 (3) GLCD (2) grafik LCD (8) HC06 (2) HH10D (2) HITCHACHI (1) higrometre (2) HP03S (1) HR911105A (1) i2c (1) isp (2) kapasitemetre (2) karakter LCD (5) kızılaltı (2) klavye (2) kondansatör (1) L2432 (1) L298 (1) LAN (1) LCD (22) LCD ekran (2) led (8) led ekran (14) led matris ekran (4) LM044L (1) LM1117-3V3 (2) LM35 (8) lm358 (1) LM75 (2) max3232 (1) MCP3550 (1) nea02017 (2) panasonic (1) PCF8574AT (2) PCM1602 (3) programlayıcı (1) RCM2048R (1) rs232 (16) rs485 (14) saat (14) sayıcı (1) Seri (3) Sharp (1) Step motor (1) şifreli kilit (2) T6963C (3) TC1602.TC2004 (1) termometre (13) tester (1) transistör (1) tuş takımı (2) tx179 (2) uf-150 (1) USB (14) voltmetre (1) wifi (1) YMC162 (2) zamanlayıcı (2)

İzleyiciler