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.

17 Ocak 2011 Pazartesi

Atmega8 ve HH10D ile LED Ekranlı Higrometre


Giriş

Hava durumu haberlerinde özellikle yazın sıkça duyulan termometre şu kadar gösterecek ama biz şu kadar hissedeceğiz gibi haberler yer alır. Bunun sebebi olarakda havadaki nem miktarı gösterilir. Havadaki nemi ölçmek için değişik yöntemler olsada (insan saçının nem ile boyunun değişmesi gibi) bunlar çoğunlukla mekanik yöntemlerdir.

Bu projede Atmega8 işlemcisi ve HH10D nem algılayıcısı kullanarak ölçüm sonucun LED ekran üzerinde gösterecek bir proje gerçekleştireceğiz.
Nem


Şekil-1 :Suyun madde halleri.

Nem bilindiği gibi suyun hava içindeki haline (suyun gaz hali) denebilir.

Gazların birbirine karışabildikleri bilinir. Örneğin atmosfer birçok gazın karışımıdır.(temelde oksijen ve azot) Su gaz haline geçtikten sonra hava içinde bir gaz olarak taşınır. Ama havanın taşıyabildiği su buharı miktarı normal şartlar altında sıcaklığa bağlıdır. (diğer şartların değişmediği varsayılarak) Örneğin hava soğumaya başladığında su yoğunlaşmaya başlar (bulut ve sis gibi hava olayları), dolayısı ile havanın taşıyabildiği su buharı miktarı düşer. Hava ısındıkça havanın taşıyabildiği su buharı miktarı artar. Bu özellikle sahil kesimlerinde yazın aşırı artan nem miktarı ile bilinir.

Normalde belirli nem aralığındaki hava insanlar için uygundur. Az nemli olursa insanlar ağızları kurur ve citleri kuruyarak çatlar. Çok nemli olursa bu durumda insanlar nefes almakta zorlanırlar. Bu nedenle nem kontrolu iklimlendirme sistemleri, seralar, depolama alanları için önemli bir konudur.

Normalde havadaki nem doğrudan ölçülmüyor. Havadaki gazların nem miktarına göre yüzde cinsinden ifade eden RH(%) ifadesi yani bağıl nem kullanılır.
Nem Ölçümü

Elektronikte nem miktarını ölçmek için değişik yöntemler vardır. Burada sadece HH10D nem sensöründe kullanılan yöntem ele alınacaktır.

HH10D üzerindeki nem algıllayıcı aslında basit anlamda bir kondansatördür. Kondansatör iki iletken levha arasındaki bir yalıtkan plakadır. İki plaka arasındaki yalıtkan malzeme olursa, hava aralıklı kondansatör olarak adlandırılır. Hava içindeki nemin havanın dielektrik sabitini değiştirdiği bilindiğine göre, havanın içindeki nem miktarı ile hava aralıklı kondansatörün kapasitesi değiştiği sonucu kolaylıkla çıkarılacaktır. (kondansatör plakaları arasındaki havanın dış ortam ile hava giriş çıkışı olacağı varsayımı ile.)

Burada basit bir kapasite-frekans dönüştürücü kullanarak nem miktarına göre frekansı değiştiren bir devre kullanılarak nem değeri frekans değerine dönüştürülür. Artık yapılması gereken bu frekansın ölçülmesi ve biraz matematik işlemlerin uygulanması.

Şekil-2 :Bir frekansmetrenin blok şeması.

Frekansmetre için fazla uzağa aramaya gerek yok. Hatta Atmega8 işlemcisi bu iş için yeterlidir. İşlemcinin içinde 2 adet 8 bitlik timer/sayıcı ve 1 adet 16 bitlik timer/sayıcı olduğu göz önüne alınarak en azından bu proje için basit bir frekansmetre oluşturulabilir.

Not:Bir frekansmetre projesinin gerçekleştirme planlarımız arasında olsada, bazı zorunluluklar nedeniyle higrometre projesinin öne alınması gerekti.
HH10D Nem Algılayıcı


Şekil-3 :Temel elemanlar ile HH10D şeması.

Hope Microelektronics firması (HOPERF) tarafından üretilmiş olan HH10D nem ölçümü için birçok elektronikçinin ilk tanıştığı elektronik elemanlardan 555 entegresi kullanılarak kapasite-frekans dönüştürücüsünü oluşturulmuş. Devrdeki kondansatör yerine Nem sensörü konulduğu zaman, elbetteki 555 çıkış frekansı ile orantılı olacaktır.

Ama nem sensörü tek başına yeterli değildir. Yani nem ile frekans arasındaki oranı bilmek gerekir. Üretici tarafından HH10D algılayıcısı içine yerleştirilmiş iki adet 2 baytık veri var. Bu veriler, ölçüm değeri ve üretici tarafından verilen matematik ifadesi kullanılarak bağıl nem hesaplanabilir. 2 adet 2 baytlık veri 24C02 tipinde bir EEPROM üzerindeki kayıtlı durumda. Yani i2c veri arayüzü erişimi gerekecektir. Atmega8 üzerindede i2c arayüzü donanım olarak bulunduğundan devre kolayca gereçeklenecektir.

Şekil-4 :HH10D bacak bağlantıları.

Modülün veri kağıtlarında devrenin 3.3V'un altında çalıştırılması gerektiği belirtilmiş, ama üzerindeki elemanlar (NEM sensörü bilgisi yeterisiz olduğu için hariç tutularak) 5V ile çalışabileceği görülüyor. Sonuçta 7555 entegresi 2-18V aralığında çalışabilirken, 24C02 türüne bağlı olarak 2V ile 5V aralığında çalışabilmektedir. (Belki devre kalibrasyonu düşük gerilimlerde gerçekleştirildiği ve devre ölçüm sonucunun tutması için 2.7 ile 3.3V aralığı önerilmiştir)

Şekil-5 :EEPROM okuyucu ile okunmuş HH10D eepromunun içeriği. (Parametrelerin bulunduğu bellek gözeleri kırmızı ile işaretlenmiştir)

Not: EEPROM okuyucu devre 5V ile çalıştığı için eeprom içeriğini okuyabilmek için 5V uygulamak zorunda kalındı ve eeprom okuma işlemi gerçekleştirildi.
Elektriksel Sinyal Seviyesini Çevirme


Şekil-6 :Diyot ile tek yönlü seviye çevirici.(SCL)


Şekil-7 :Mosfet ile iki yönlü seviye çevirici.(Mosfet bacakları arasına bağlı olan diyot aslında mosfetin içindedir).(SDA)

Buradaki önemli konulardan birinin Atmega8 bölümünün 5V ile ve HH10D modülünün 3.3V ile çalışmasıdır. Aslında bu işlemci için bir sorun olmamakla birlikte HH10D modülü için bir sorundur. Hele ki SDA bacağı için daha önemli bir sorundur.(Çünkü iletişim iki yönlüdür)

Bu konuda en güzel çözüm Philips firması tarafından sunulmuş.Gate ucu doğrudan 3.3V bağlantısında olmak kaydı ile Drain uçu 5V tarafındaki alet bacağına ve Source ucu 3.3V tarafındaki alet bacağına bağlamak yeterli. Bu bağlantı şekli ile iki yönlü iletişim bağlantısına imkan tanıyacaktır. (Her iki taraf (3.3V ve 5V için pull up dirençleri mutlaka vardır)

Tek yönlü bağlantı için zaten konu doğrudan bir diyot kullanılarak, ve diyodun her iki ucuna pull up dirençleri kullanarak basit bir seviye çevirici oluşturulur.

Şekil-8 :FOUT ve işlemci arasındaki seviye çevirici .

Tek yönlü devrelerde mesale HH10D FOUT bacağı durumlarda bir transistör seviye çeviricisi yeterlidir. Çünkü yapılan sadece HH10D modülü tarafından oluşturulan sinyalin frekansının ölçümesidir. Bu durumda zaten sürekli değişen sinyal seviyeleri işlemci açısından sorun almayacağından bu transistör devresinin kullanımı yeterlidir.
Devre

Devre basitçe Led ekran, Led ekran sürücüleri, Besleme, işlemci HH10D modülü ve seviye çeviriciler olarak ayrılabilir. Devrenin mümkün olduğu kadar küçük olması yönündeki kararlar sonucunda bazı elemanların SMD olması yönünde tercih yapıldı. Hepsi tek baskı devre kartı üzerinde toplandı.

Şekil-9 :Atmega8 ve HH10D ile Led Ekranlı Higrometre devresi kartı.

Şema

Proje temelde IC1 (Atmega8) üzerine kurulu. Bu işlemcinin saat kaynağı olarak XT1 (4MHZ) kristal ile C4 ve C5 (27pf) kondansatörleri kullanılmaktadır. İşlemcinin bacaklarına bağlanmış R5..R12 (220R) dirençleri DIS1...DIS4 (HDSP-F501) ekranlarının parçalarını sürmektedir. Ayrıca işlemci üzerinden R1..R4 (1K) dirençlerine bağlı Q1..Q4 (BC857) transistörleri DISP1..DISP4 ekranlarının ortak uçlarını sürmektedir.

M1 (HH10D) Nem algıyıcı modülü olup paremetrelerin saklandığı eeprom için SCL ve SDA bacakları varken, nem miktarı ölçümü için bir nem-frekans dönüşümü sinyal çıkışı vardır. IC1 ile M1 SCL bacakları arasına D2 (1N4148) diyodu bağlanmış ve diyodun her iki ucuna işlemci IC1 tarafına R16 (10K) ve M1 tarafına R17 (10K) pull up dirençleri eklenmiştir.

IC1 ile M1 SDA bacakları arasına Gate ucu +3.3V gerilime bağlanmış Source ucu işlemci ve Drain ucu M1 tarafına bağlanmı Q5 (STK7000) mosfeti bağlanmıştır. Bu mosfetin source (işlemci) tarafına R15 (10K) ve Drain (M1) tarafına R18 (10K) pull up dirençleri eklenmiştir.

M1'in FOUT çıkışına bağlı R19 (1K5) direnci üzerinden Q6 (BC847) transistörü sürülür. Bu transistörün emetörü doğrudan gnd hattına bağlanırken kollektör bacağı üzerinden R20(10K) direnci sürülür(pull up). Q6 ve R20 bağlantı noktasından işlemcinin T1 bacağına bağlanır. (frekansmetre için)

Besleme içir P1 klemensine bağlı besleme hattı üzerinden D1 (2W10M) köprüsü üzerinden besleme alınır. (D1 P1 klemensinin kutupsuz şekilde bağlanma olanağı tanır) D1 üzerinden geçen besleme IC2 (7805) ile işlemci için gereken +5V beslemeyi bağlar. IC3 (78L33) ise M1 modülü için gereken +3.3V besleme gerilimini regüle eder.

Devre üzerinde kalan ve belirtilmeyen kondansatörler filtre amaçlıdır.

Şekil-10 :Devrenin blok şeması


Şekil-11 :Sistemin Devre şeması

Devre Yapımı

Devre yapımı konusunda fazla kritik bir nokta yok.

M1 modülü 5'li sıra pin konnektörü üzerinden bağlanmıştır. Ayrıca IC2 ve IC3 arasındaki besleme bağlantı köprüsü unutulmamalıdır. (Şekil-15 üzerinde mavi ile gösterilmiş bağlantıdır).

Şekil-12:Baskı devresi şekli(üstten görünüm)


Şekil-13:Yerleşim planı (SMD elemanlarda eleman yüzünde gösterilmiştir-SMD elemanları PCB tarafına monte ederken elemanları ters çevirmeniz gerekmez.)


Şekil-14:Eleman ve yollarla birlikte yerleşim planı.


Şekil-15:Besleme bağlantı kablosu mavi ile gösterilmiştir.


Devre Elemanları


0R(1206 smd)R13,R14,R21,R22
220R(1206 smd)R5..R12
1K(1206 smd)R1..R4
1K5(1206 smd)R19
10K(1206 smd)R15..R18
10µF/25VC3,C10
100nF(1206 smd)C1,C2,C6,C7,C8,C9
27pF(1206 smd)C4,C5
Atmega8IC1
7805IC2
78L33IC3
HH10DM1
2W10MD1
1N4148(1206 smd)D2
BC857(SOT-23)Q1..Q4
STK7000Q5
BC847(SOT-23)Q6
4MHz KristalXT1
BC847(SOT-23)Q6
HDSP-F501DIS1..DIS4
tip0 2'li klemens)P1
2x6 konnektör isp
1x5 sıra pin-

Bu elemanlara ek olarak 9V'lu bir adaptör gerekmektedir.
Çalışması


Şekil-16:Başlangıçta ofset ve sens değeri için kısa devre edilmiş.


Şekil-17:Kısa devre yerleşim planı üzerinde kırmızı ile gösterilmiştir.

Devre ilk defa çalıştırıldığında sens ve ofset değerlerini bilmediği için elbette yanlış ölçüm sonucu verecektir. Sens ve ofset değerlerini okumak için devrenin gücü kesik iken, isp konnektöründeki MISO (P4) ve GND uçlarını kısadevre edin. Devreye beslemesini verin. İşlemci HH10D üzerindeki EEPROM'dan gerekli verileri okur ve işlemcinin üzerindeki EEPROM'a kaydeder ve artık her açıldığında işlemci üzerindeki EEPROM'dan okumaya devam eder. (Devre çalıştıktan sonra MISO ve GND arasındaki kısadevreyi kaldırmayı unutmayın, aksi durumda ekrande hexadesimal olarak sens değerini göstermeye devam eder).

ISP uçları kısadevre edilme durumları yok iken ekranın sağdan birinci hanesi sönük haldedir. Çünkü Nem ölçüm sonucu onda birlik bir ölçüm içinde verilmektedir. Sağdan birinci hanenin sadece ondalık noktası devrenin ölçüm yaptığı andı göstermek üzere yanıp söner. (Yandığı zaman frekansmetre ölçüm yapmaktadır.

Ölçülen frekans değerini görmek için (hex olarak) verilen işlemci programında belirtilen yerdeki satırları aktif hale getirmeniz, programı derlemeniz ve yüklemeniz gerekiyor.

Gerçi matematik ifadesini HH10D veri kağıtlarında da bulabilirsiniz:

Nem (Yüzde olarak)= (Ofset- ölçülen frekans)*sens/1000 ....(1)

Yukarıdaki ifade tabii ki hex değerleri içermektedir.(girdiler hex sayı sisteminde olmalıdır) Bu şekilde kullanıldığnda sonuç tamsayı olarak çıkacaktır. Eğer bu sonucu görmek isterseniz onluk sisteme çevirmeniz gerekir. Aynı ifadenin onluk sistem olarak;

Nem (Yüzde olarak)= (Ofset- ölçülen frekans)*sens/4096 ....(2)

Bu ifade ile onluk sonuç verecektir. (girdiler onluk sistemde olmalıdır.)

Şekil-18:Aynı sonucun onluk ve 16'lık (hex) gösterimi (hex değer ölçülen frekanstır; onluk değer hesaplanan Nem değeridir).

Eğer (1) nolu ifade ile Şekil 16'daki ölçüm sonucunu hesaplarsanız ekranda göreceğiniz sadece 44'dür.
Sens ve Ofset gösterimi


Şekil-19:Sens ve Ofset için kullanılan kısadevreli konnektörler.

Kullanıcı olarak yapılan ölçüm sonucunu elle kontrol etmek isteyebiliriz. Bunun için isp konnektörü üzerindeki MISO-GND ve SCK-GND bağlantılarını kullanmamız yeterlidir. Sens ve Ofset gösterilmesi devre çalışıyorken yapılabilir. Şekil 19'deki konnektörleri kullanırsanız, konnektör takılı iken kendi değerini gösterir, çıkarıldığında nem değerini gösterir.

MISO-GND Bağlantısı için (SENS değeri)

Şekil-20:Kırmızı ile gösterilen bağlantı.

Sens değeri ekranda HEX olarak gösterilecektir.

Şekil-21:Projedeki HH10D için sens değeri.


SCK-GND Bağlantısı için (OFSET değeri)

Şekil-22:Kırmızı ile gösterilen bağlantı.

Ofset değeri ekranda HEX olarak gösterilecektir.

Şekil-23:Projedeki HH10D için ofset değeri.




Ekler:

Atmega8 için gerekli bilgiler

"Atmega8 ve HH10D ile LED Ekranlı Higrometre" için dosyalar-birleşik

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

10 Ocak 2011 Pazartesi

Atmega8 ve DS1307 ile LED Ekranlı Masa Saati


Birçok defalar saat projeleri ile uğraştık. Bu projeler çoğunlukla genel amaçlı uygulamalardı. Yani sadece devre halinde kaldılar. Ama bir devreyi gerçekleştirdikten sonra bu devrenin kullanılacağı yere göre kutulanması gerekir. Yoksa açıkça dış etkilere karşı açık hale gelir. Devrenin üzerine metal bir nesnenin düşmesi veya meraklı bir arkadaş ve kardeş devrenin orasını burasını karıştırmasını engellemek gerekir.

Bu projede Atmega8 ve DS1307 ile LED ekranlı masa saatini kutusu ile birlikte oluşturacağız.
Elektronik Saat

Değişik projelerden görüleceği gibi zaman ölçümünün son derece basittir. Saniye sayar, 59 değerine ulaştığı zaman sonraki saniye sinyalide saniye sayacını sıfırla ve dakika sayacını 1 artır. Bu işlem her saniye değeri 59'a ulaştığında gelen saniye sinyali ile tekrarlanır. Dakika sayacı da 59 değerine ulaştığı zaman sonraki dakika sinyalinde dakika sayacı sıfırlanır ve saat sayacı değeri 1 artırılır. Saat sayacının değeri 23 olduğu (23:59:59) zaman (24 saat modunda) gelen saat sinyalinde saat 00:00:00 değerine döner. Bu işlem tümü 1 gün kavramını ortaya çıkartır.

1 saniye kaynağı olarak isteyen işlemcinin kendi saat kaynağını kullanabileceği gibi bu projede zaten DS1307 tarafından oluşturulan 1 saniye sinyali kullanılabilir. DS1307 için işlemciden 2 bacak i2c bağlantısı ayrılmış durumdadır. Sadece eklenen 3. bacak sayesinde işlemcinin ihtiyaç duyacağı 1 saniye kaynağı sağlanmış olur.

Şekil-1 :DS1307 çipine bağlanan yedekleme pili sayesinde elektrik kesildiğinde ekranda görüntü olmasa bile saat çipi arka planda çalışmaya devam edecektir.

Elektrik kesintileri ne yazık ki yaşantımızın bir gerçeğidir. Bu durumda devre elektrik kesintilerinde çalışmaya devam edecek (ekranda göstermeksizin) elektrik geldiği zaman o anki saat güncellemesi ile göstermeye devem edecek. Güzel bir nokta ve çözümü zaten DS1307 içinde yatıyor. Devrenin kullandıığı yedekleme pili ile bu sorun kolaylıkla aşılır. Tek yapılması gereken elektrik geldiği zaman DS1307'den saniye, dakika ve saat değerlerini okuyup bunları işlemcideki değerlere güncellemektir. (Basit bir program işi)

Şekil-2 :Devre kutu içinde iken buton ve adaptör girişinin arkadan görünümü.

Sadece devre kartı tasarlarken kullanılacak kutunun boyutlarına göre tasarlamak önemlidir. Kutu kendi üretiminiz olacak veya başka yere yaptıracaksanız biraz daha serbestçe tasarım yapabilirsiniz. Ama kullanacağınız kutu hazır bir kutu ise o zaman zaten kuralları konulmuş bir oyun oynuyorsanız demektir. Doğal olarak devre kartı kutuya göre boyutlandırılması elbette önemlidir. Bu projede hazır plastik kutu kullanarak istenilen sonuca ulaşılmaya çalışıldı.

Şekil-3 :Kartın yandan görünümü. İki kart arasında ve diğer elemanlar arasındaki bağlantı görülmektedir.

Ekran kartı ana kart ile 90 decere bir açı oluşturacak şekilde monte edilecek şekilde monte edildi. Doğal olarak bu hem kutunun önünden bakıldığında ekranın arkasını kapattı, hem de ana kartın tasarımında daha geniş alan kullanımına olanak tanıyarak esneklik sağladı.

Saat ayarı için iki buton kutunun arkasına monte edildi (adaptör girişi ile) Önde kalabalık etmesi istenmediğinden ve butonlar biraz büyük olduğu için bu yola gidildi.
Devre

Devre iki ana bölümden oluşuyor: Ekran bölümü ve işlemci bölümü.

Ekran bölümünde saat değerini gösteren 6 adet 7 parçalı LED ekran ve 4 adet saat,dakika ve saniye aralarına konan ayıraçlar var. 7 parçalı LED ekran parçaları birleştirilmiş (a,b, ..,f,g) ve her LED ekranın seçilmesini sağlayan ortak uçları ayrı olarak alınmıştır. Bu her bir ekranın ayrı ayrı seçilmesine olanak tanır. Ayıraçlar ikişerli seri bağlanarak ve seri bağlı birer direnç ile doğrudan besleme hatlarına bağlanır.

İşlemci bölümü besleme, DS1307 (saat çipi), DS1307 için kristal, DS1307 için yedekleme pili,LED ekran sürücüleri , İşlemci ve butonlar için giriş bulunur. DS1307 ile işlemci 3 bacak bağlantısı vardır. Bunlar i2c için saat ve veri bağlantısı ve saniye sinyalini veren DS1307'nin saat çıkışıdır.

Ekran bölümü ile işlemci bölümü 90 derece açı oluşturacak şekilde bağlantısı sağlanır. Ek olarak 2 kalın tel ile kartlar birbirlerine sabitlenir.

Şekil-4 :İşlemci ve ekran kartları birlikte monte edilmiş halde.


Şekil-5 :Kutunun arkasındaki butonlar.


Şekil-6 :Adaptör girişi.Açılan yarığa m2.5 somun ve civata ile monte edilmiş halde.

Şema

Bu proje IC1 (Atmege8) üzerine kurulu. Dikkat edilirse kristal yok bu nedenle doğrudan işlemcinin iç saat üreteci devrede olacak şekilde sigorta ayarları yapılması gerekiyor. İşlemciye 3 hat üzerinden bağlı IC2 (DS1307) işlemci için 1Hz saat kaynağı olmakla birlikte aynı zamanda saat yedeği olarak kullanılıyor. Bu iki entegre arasındaki R12,R13,R14 (10K) dirençleri i2c ve 1Hz saat kaynağı bacaklarının pull up direnci olarak kullarak kullanılıyor. IC2 kristal bacaklarına bağlı XTL1 (32,768KHz) saat kristali DS1307 için referans saat üreteci olarak çalışır. Ayrıca IC2'nin pil bacağına bağlanmış Pil1 (3V'luk pil) DS1307 için yedekleme beslemesini sağlar.

DS1..DIS6 (S-5612AG-21) ortak anot 7 parçalı LED ekranlar ortak uçları Q1...Q6 (BC327) transistörleri tarafından sürülür(kollektörlerine bağlı). Transistörlerin ortak ucu +5V besleme ucuna bağlamıştır. Transistörllerin bas uçları R15...R20 (1 K) dirençleri üzerinden IC1 (Atmega8) bağlanmıştır. LED ekranların parçalarını oluşturan bacaklar birleştirilmiş ve R3...R9 dirençleri üzerinden IC1 (Atmega8) bacaklarına bağlanmıştır. Ayrıca D1, D2 ve R1 seri bağlanmış ve aynı şekilde D3,D4 ve R2 seri bağlanmış ve açıkta kalan uçları besleme hatları (+5V ve toprak) arasına bağlanmıştır.(besleme olduğu sürece süreki yanarlar.)

Besleme her devrede olduğu gibi devre içinde gerekli olduğundan, adaptör girişinden gelen besleme D5 (2W10M) üzerinden geçerek C6 (10µF/25V) ve C7 (100nF) üzerinde filtre edilerek IC3 (7805) üzerinde devrenin kullanabileceği 5V besleme gerilimine dönüştürülür. (Adaptör girişi kutunun arkasında bulunmaktadır. İki kablo ile işlemci kartına bağlantı sağlanmaktadır.)

İşlemcinin bacaklarına bağlı olan R10 ve R11 (10K) dirençleri saat ve dakika ayar butonları için (S1 ve S2) pull up dirençlerini oluşturuyor. (S1 ve S2 butonların kutunun arkasında bulunmaktadır)

Geriye kalan kondansatörler filtre amaçlıdır. Devre üzerinde devrenin kendisinden veya dışarıdan gelebilecek parazitleri bastırmak için kullanılmaktadırlar)

Şekil-7:Blok şeması


Şekil-8:Devrenin şeması

Devre Yapımı

Devre yapımı esnasında kullanılan devre elemanı kalitesinin ne kadar önemli olduğu görülmüştür. Çünkü özellikle DS1307 bacaklarına bağlı kristalin sorun çıkarabileceği göslenmiştir. Hatta uzun bir uğraştan sonra çözümün yeni bir tane almak yerine eski bilgisayar kartlarındaki saat kristalini kullanmak olduğu görülmüştür. Ne yazık ki aynı sorun saat pili soketi ile de yaşanmıştır. Bulunabildiği takdirde doğrudan lehimlenebilir pillerin kullanımı mümkündür. 7805 için küçük bir soğutucunun vidalanması yerinde olacaktır.

Tüm dirençler çeyrek wattır. R1 ve R2 önden güzel bir görünüm olması için kartın arkasına lehimlenmiştir)

Besleme konusunda bir sorun oluşturmayacağınızı düşünüyorsanız girişteki köprüyü devre dışı bırakabilir veya tek bir diyotla değiştiribilirsiniz. (Kendi besleme kaynağınız varsa ve devreyi kendiniz kullanacaksanız) LED ekranlar ortak ucu ortada ortak anottur. Bacak bağlantıları uyan başka bir LED ekran kullanılabilir. Farklı renklerde kullanılacaksa R3-R9 direnç değerlerini değiştirmek gerekebilir.

Şekil-9:Devrenin baskı devresi şekli-kartın eleman yüzü tarafından görünümüdür


Şekil-10:Devrenin yerleşim planı


Şekil-11:Eleman ve yolların birlikte görünümü


Şekil-12:Kartın alttan görünümü (Kartın altı lehimleme kolaylığı ve korozyana karşı kaplanmış) R10 ve R11 kartın altından lehimlenmiştir.

Devre Elemanları

470RR1,R2
220RR3,..,R9
1KR15,..,R20
10KR10,..,R14
100nFC1,C2,C3,C5,C7
10µF/25VC4,C6
100µF/25VC8
S-5612AG-21DIS1,..,DIS6
3mm yeşil LEDD1,..,D4
BC327Q1,..,Q6
2W10MD5
ATMEGA8IC1
DS1307IC2
7805IC3
butonS1,S2
32.768KHz kristalXTL1
6 bacak konnektörisp
3V bilgisayar pilipil1
Pil soketi-
17x15.5x5 cm boyutlarında kutu-
9V adaptör-
Adaptör soketi-
28 bacaklı entegre soketi-

Ayar Butonları

S1 ve S2 butonları saat ve dakika ayarı için kullanılır. Basitçe butona basıldığı zaman bağlı olduğu bacağı lojik 0 çekerek basıldığını işlemciye bildirir. İşlemcide belirli aralıklara butonların bağlı olduğu bacakları kontrol eder. Butonlara sürekli basıldığı zaman saat ve dakika hanelerini hızlı bir sayma yaparker, aralıklı basılması ile basma hızında sayma yapacaktır.
Burada dikkat edilecek konu yapılan saat değişikliğinin sadece saniye "00" olduğu zaman kaydedileceğidir." Yani saniye "00" değerine ulaşmadan enerji kesilirse yapılan ayar değişikliği kaydedilmeyecektir. Daha doğrusu DS1307 saat değeri güncellenmeyecektir.

Şekil-13:Butonların yerleşimi önden bakıldığında saat ve dakika yerleşimi şeklindedir.

DS1037 ilk satın alındığında 1Hz çıkışı va saat sayma bölümleri devre dışıdır. Bu bölümlerin devreye alınması için saat ilk çalıştırıldığında şekil 14'de gözterildiği gibi isp konnektörü üzerinde bir köprü yardımı ile iki ucun kısa devre edilmesi gerekiyor. Yani devre çalışmıyorken köprüyü tak, devreyi çalıştır, beslemeyi kapat ve köprüyü sök. Herşey tamamsa zaten devre beslemesi kesilmeden saymaya başlayacaktır.

Şekil-14:Köprünün takıldığı yer.Yeşil renkli alan.


Şekil-15:ISP konnektörü üzerine takılmış yeşil köprü görülmektedir.

Elektrik kesintisi olduğu zaman saat çalışmaya başlar ve DS1307'den saat ayarlarını alır ve çalışmaya başlar. Bu işlem her elektrik kesilip gelme durumunda yerine getirilir.
Kutulama

Yaklaşık 17x15.5x5 cm boyutlarında plastik bir kutu kullanılmıştır. Kutunun arka paneli üzerine buton ve adaptör girişi için delikler açılmış ve bu malzemeler yerleştirilmiştir. Kutunun alt bölümü üzerinde birkaç parçanın kırılması gerekmiştir. Kart tasarlanırken kutunun içinde tam yerleşimi düşünülmediğinden direk gibi parçaların olduğu yerlerde geniş boşluklar bırakılmış daha sonra devre toplandıktan sonra kart üzerinde bu bölümler oyulmuştur. Kart iki vida ile kutunun tabanına kartın arka bölümünden vidalanmaktadır, ön bölümde zaten ekran kartı olduğu için kutu içinde aşağı yukarı oynama imkanı yoktur.

Şekil-16:Kutu içindeki kart, kablo, buton ve adaptör soketi görülmektedir.

Kutu bu hali ile sadece ön panel bölümü yoktur. Ön panel için bir tane tercihen yeşil renkli şeffaf pleksiglas kesilerek yerleştirilmesi yeterlidir. (Beyaz şeffaf pleksiglasda iş görecektir)

Şekil-17:Şeffaf pencere için kesit ve pencerenin çizimi. Kenarlarını bir zımpara ile işlemek (özellikle bu kutu için) montaj kolaylığı sağlayacaktır. Diğer seçenek şeffaf pencereyi kutuya yapıştırmak!.


Şekil-18:Şeffaf pencerenin kutuya montajı, en azından bir kenarının kabaca kesitsel görünümü.(görüntü orantılı değildir)


Şekil-19:Şeffaf pencerenin kenarları zımparalanmış hali. Harcanan zamana değdi. Daha iyi işçilik için zamanım dardı. Bedelini öderseniz, belki şeffaf pencereyi satın aldığınız yere yaptırabilirsiniz. (Kutu üzerinde mutlaka deneyin!)


Şekil-20:Kartlar ve şeffaf pencere monte edilmiş kutunun arkadan görünümü.


Şekil-21:Kartlar ve şeffaf pencere monte edilmiş kutunun önden görünümü.


Şekil-22:Kutunun masa üzerinde düzgün bir şekilde durması için ayaklar. Bu tabaka olarak satılan kendinden yapışkanlı küçük ayaklar.


Şekil-23:Ayakların kutu altına yapıştırılmış hali.Ayaklar kutu montaj vidalarının yanına yapıştırılmış durumda. Ne olur ne olmaz bekli kutuyu sökmek gerekebilir.


Şekil-24:Tamamlanmış ve çalıştırılmış saatin görünümü.

Not:Devre gayet güzel bir şekilde çalışmaktadır. Az da olsa DS1307 için oluşturulmuş sistemler çevresel ortamlardan etkilenmektedir. Yani saatin ileri gitmesi veya geri kalması durumu olabilmekte. Eğer kesin saat üretimi istenirse çevresel şartların değişimini karşılayabilecek saat üreteç devreleri de mevcuttur. Tabii bulabilirseniz!


Ekler:
Sigorta ayarlarında 4MHz iç saat seçilmesi gerekiyor.

ATMEGA8 hakkında bilgi için

"Atmega8 ve DS1307 ile LED Ekranlı Masa Saati" için dosyalar-birleşik

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

Translate

Sayfalar

Etiketler

İzleyiciler