Alexey Zakharov saat takvimi termometre koşu hattı. Şema. On altı öğeli göstergelerde çalışan çizgiye sahip çalar saat ve termometre. Dış mekan elektronik saatlerinin temel modelleri "Impulse"

  • 06.12.2023





  • DS18b20).
  • İkinci seçenek, DS18b20).

Kayan çizgi modunda görüntüleme - tarih, ay, yıl ve haftanın günü.

Genel şema.


- Bastığınızda Kn2 Kn2


Kn1Kn3 Kn2


UA-TR-RU .


ds 18 b 20 No. 1 veya No. 2.

Sensörleri bağlamak için kombinasyon seçenekleriyle devre çözümleri mümkündür; aşağıda bu programın doğru şekilde çalışacağı seçeneklerin örnekleri verilmiştir.

Kol saati Saat + RF Saat + RF + ds18b20



Saat + ds18b20 (2 adet) Saat + ds18b20 RF verici



Proteus'taki Devre

önyükleyici ürün yazılımı ATmega328.)


FUSE, ürün yazılımı için ICSP programlayıcı kullanacak biri varsaBu devrede ATmega328.

Jumper'ları kullanma Jp -1, Jp -2, Jp RF

1 saniye.

2 saniye.

4 saniye.

8 saniye.

16 saniye.

32 saniye.

64 saniye.

128 saniye.

Jp-1

Jp-2

Jp-3

SİGORTA, ATtiny24a, MK - 8 MHz'in dahili osilatörüne monte edilmiştir.



arşivde.

Forumda matris saati için radyo sensörü, pille çalışan, devre şeması ve donanım yazılımı.

DS18b20,RTCDS1307, ışık sensörü, kontrol düğmeleri, kit RF -modüller ve 5 voltluk bir güç kaynağı (maksimum parlaklıkta en yoğun anlarda devre tüketimi 0,6A'ya kadar ve ortalama 0,3A'dır; uygun parametrelerle mevcutsa cep telefonundan ekstra şarj da kullanabilirsiniz)).
Başvurunun ilgi alanı nedir?Arduino Nano Atmega328.
Bu kartın halihazırda mini USB çıkışlı bir modemi olması nedeniyle, mini USB konektörüyle bir cep telefonunu şarj etmek için bilgisayarınızı ve telefon kablosunu kullanarak böyle bir denetleyiciyi önyükleyici aracılığıyla çok fazla zorluk yaşamadan flaşlayabilirsiniz.
Bütün bunlar basit bir program kullanılarak kolayca yapılabilir.XLyükleyici.
Firmware'in önyükleyici aracılığıyla güncellenmesi deneyimini burada biraz daha ayrıntılı olarak anlattım" Nano volt - ampermetre 2 kanal. ".
İstenirse gerekli tüm modüller Aliexpress'den rekabetçi bir fiyata satın alınabilir.

MAX7219 nokta vuruşlu

Nano Atmega328

DS1307

DS18b20

Işık sensörü

güç ünitesi

Sipariş verdikten sonra, tüm bu parçalar posta yoluyla gelene kadar biraz sabır ve bu çok ilginç devreyi bir saat ve termometre ile monte etmeyi kendinize garanti edebilirsiniz.


Genel olarak, temel temellerde, burada her şey standart olduğu için hiçbir soru ortaya çıkmaması gerektiğini düşünüyorum.


Bir saatin çalışma tipini (bir termometre) gösterme tasarımı zaten amatör bir versiyondur.
Programın termometre saatinin çalışmasını tasarlamak için üç seçeneği vardır.

  • İlk seçenek, zamanın (saat ve dakika), sokak sıcaklığının ve oda sıcaklığının (iki sensör) dönüşümlü olarak görüntülenmesidir.DS18b20).

Kayan çizgi modunda görüntüleme - tarih, ay, yıl ve haftanın günü.

  • İkinci seçenek, saat (saat ve dakika), ortam sıcaklığı (bir sensör) gösterimiDS18b20).

Kayan çizgi modunda görüntüleme - tarih, ay, yıl ve haftanın günü.

  • Üçüncü seçenek, sadece bir saat, zaman göstergesi (saat ve dakika),

kayan çizgi modunda ekran - tarih, ay, yıl ve haftanın günü (sıcaklık ekranı devre dışı).

Aslında seçenekler arasındaki farklar küçüktür ve yalnızca termometre saatinin matris ekranındaki sıcaklık göstergesindeki farklılıklardan oluşur; hemen hemen her seçenek talep edilebilir.


Şema.


- Devre üç kontrol düğmesi kullanır; bu düğmelere kısaca bastığınızda, ana ekrandaki okumaları bir kez döndürürsünüz: saat - tarih - haftanın günü - sıcaklık.


- Bastığınızda Kn2 2 saniyeden uzun bir süre sonra ayarlar menüsüne girersiniz (menüdeyken tuşuna basın) Kn2 2 saniyeden uzun süre ayarlar menüsünden çıkın).


- Menüye girdikten sonra butonları kullanın Kn1Kn3Menüde hareket ederek tarih ve saati düzeltebilirsiniz. Kn2 değiştirilmekte olan parametre ters ışıkta olacaktır.


- Ayrıca menüde, gerekirse saatin yanlışlığını bir gün ±9 saniye içinde düzeltmek mümkündür.


- Menüdeki bir sonraki öğe, kullanılan dilin seçimi olacaktır; bir yazılım, dillerin kullanımını sağlar UA-TR-RU .


- Makalenin başında açıklanan üç animasyon seçeneğinden biri olan ekrandaki animasyon seçeneği.


- Radyo sensörü, “0” değeri seçildiğinde programda radyo sensörü kullanılmaz, 1 veya 2 seçildiğinde bunun yerine radyo sensöründen gelen sıcaklık okumaları ekranda yer alır ds 18 b 20 No. 1 veya No. 2.

Breadboard'da hata ayıklama sürecindeki saatin fotoğrafı.

Proteus'taki Devre

Bu saatin verici devresi.

Jumper'ları kullanma Jp -1, Jp -2, Jp -3, iletim frekansını seçebilirsiniz RF -3 numaralı sensörden gelen sıcaklığı içeren bilgi paketleri modülü.

1 saniye.

2 saniye.

4 saniye.

8 saniye.

16 saniye.

32 saniye.

64 saniye.

128 saniye.

Jp-1

Jp-2

Jp-3

(1 – jumper kapalı, 0 – değil)

Saat ve radyo sensörü için baskılı devre kartı.

ATmega328'i önyükleyiciyle çalıştırmak için SİGORTA (arşiv) ATmega328 önyükleyici ürün yazılımı.)

FUSE, eğer herhangi biri bu şemada ATmega328 ürün yazılımını flaşlamak için bir ICSP programlayıcı kullanacaksa.

Firmware “Matris modüllerinde saat - termometre”, baskılı devre kartları, protein, arşivde.

LED matrislerde basit bir saat. Pek çok radyo amatörü, yeni başlayanlar ve diğerleri "tekerleği yeniden icat etmeyi" seviyor - KENDİ elektronik saatlerini inşa ediyor. Bu kader beni de esirgemedi. Bugün elbette internette çok sayıda saat tasarımı var ancak bazı nedenlerden dolayı bunların arasında LED matrisli saatler sadece birkaç tane var. Rusça konuşulan internette yalnızca bir tane tamamen tamamlanmış ve tanımlanmış tasarım buldum. Aynı zamanda, LED matrisleri artık çok daha ucuz hale geldi ve maliyetleri aynı boyuttaki yedi segmentli göstergelerden daha yüksek, hatta daha düşük değil. Örneğin 60x60 mm boyutunda kullandığım GNM23881AD 1,5 Euro'ya satın alındı ​​​​(3 gösterge 4,5 Euro'ya mal oluyor), bu parayla aynı boyutlarda dört adet yedi segmentli gösterge satın almanız pek mümkün değil. Ancak matris göstergesine çok daha fazla bilgi yerleştirilebilir. Sayılara ek olarak, herhangi bir harfi, işareti ve sürünen bir çizgi yardımıyla metni de görüntüleyebilirler.

Buna dayanarak, LED matrisleri üzerine bir saat inşa etme arzusu vardı, ancak devre yedi segmentli olanlardan daha karmaşık olmayacaktı. Ayrıca oldukça işlevsel olmasını ve diğerleri gibi olmamasını istedim. Böylece aşağıdaki şema doğdu.

Saatin işlevselliği aşağıdaki gibidir:

  • Geri sayım, takvim, haftanın günü. (artık yıllar dikkate alınır, yaz/kış saatine geçiş yapılmaz).
  • Harici güç kaybı durumunda saatin korunması (tüketim 15 mikrondur).
  • Strok düzeltmesi + - 59,9 saniye/gün, 0,1 saniyelik artışlarla. 9 alarm. Bunlardan 3'ü "tek seferlik" ve 6'sı "kalıcı" olup, haftanın gününe göre ayrı ayrı özelleştirilebilir.
  • Her alarm için ses sinyalinin süresi ayrı ayrı ayarlanabilir (1-15 dakika).
  • Düğmeye basıldığında ses onayı (devre dışı bırakılabilir).
  • Saatlik bip sesi (devre dışı bırakılabilir).
  • 00-00'dan 08-00'e kadar sinyal yok.
  • 1 veya 2 sıcaklık sensörü (Sokak ve ev).
  • Tüm bilgilerin görüntülendiği özelleştirilebilir kayan yazı (zaman hariç)
  • Strok düzeltme değeri ve "çalışan hat" ayarları, yedek güç kaybolsa bile kaydedilir.

AtMega16A, bulunabilirliği, ucuzluğu ve “yasallığı” nedeniyle saatin “kalbi” olarak seçildi. Devreyi olabildiğince basitleştirmek istedim, böylece mümkün olan her şey kontrolöre atandı. Sonuç olarak, yalnızca iki mikro devre, bir denetleyici ve bir TPIC6B595 kaydıyla idare etmeyi başardık. TPIC6B595 birisinde mevcut değilse, onu 74HC595 + ULN2803 ile değiştirebilirsiniz. Her iki seçenek de denendi. TPIC6C595 kullanmayı da deneyebilirsiniz, biraz zayıf ve biraz ısındı ama genel olarak stabil çalıştı. Zaman, asenkron zaman - T2 kullanılarak sayılır. Elektrik kesintisi olsa bile saat çalışmaya devam eder. Bu sırada devrenin çoğunun enerjisi kesilir ve kontrol ünitesine bir pil, akümülatör veya iyonistör tarafından güç verilir. İyonistörle "oynamak" ilgimi çekiyordu, bu yüzden onu kullandım. Bekleme modunda saatlerce geçerli tüketim 15 mikrondur. 1F iyonistörle çalıştırıldığında saat dört gün boyunca "dayandı". Bu, elektrik kesintileri sırasında hızı korumak için oldukça yeterlidir. CR2032 pil kullanıyorsanız teorik olarak hesaplamalara göre şarjın 1,5 yıl boyunca yeterli olması gerekir. Kontrol cihazı, PB.3 pimi aracılığıyla şebeke voltajının varlığını "dinler". Bu pim, karşılaştırıcının evirici girişidir. R2-R3 bölücüsü aracılığıyla besleme voltajı PB.3 pinine beslenir ve normal durumda yaklaşık 1,5 V'tur. Harici voltaj 4,1 voltun altına düşerse, RV.3 pinindeki voltaj 1,23 volttan az olacak ve karşılaştırıcıdan bir kesinti üretilecek ve kesme işleyicisinde kontrol cihazının tüm "ekstra" düğümleri çevrilecektir. kapatılacak ve denetleyicinin kendisi uyku moduna geçecektir. Bu modda yalnızca T2 zamanlayıcı çalışmaya devam eder. Harici güç göründüğünde, RV.3'teki voltaj tekrar 1,23V'un üzerine çıkacak, kontrolör bunu "görerek" tüm düğümleri çalışır duruma getirecektir. İyonistör yerine CR2032 pil kullanılıyorsa, bir diyot (tercihen bir Schottky diyot) aracılığıyla bağlanmalıdır. Diyotun anodu + aküye, katodu ise VD1 katoduna bağlanır. Normal modda ekran saati saat-dakika formatında görüntüler. Ticker bir dakikalık aralıklarla çalışmaya başlar. Çalışan çizgi haftanın gününü, tarihi, yılı ve sıcaklığı görüntüler. evde ve sıcaklık. sokakta. Ticker özelleştirilebilir, yani. Herhangi bir öğenin görüntüsünü açabilir/kapatabilirsiniz. (örneğin yıl gösterimini her zaman kapatıyorum). Tüm öğeler kapatıldığında, kayan yazı başlamaz ve saat sürekli olarak o andaki zamanı gösterir. 9 alarm saati, 3 tek kullanımlık ve 6 yeniden kullanılabilir olarak ayrılmıştır. 1-3 arasındaki alarmları açtığınızda yalnızca bir kez çalarlar. Tekrar çalışabilmeleri için manuel olarak tekrar açılmaları gerekir. Ve 4-9 numaralı alarm saatleri yeniden kullanılabilir, yani. her gün belirlenen saatte çalışacaklar. Ayrıca bu alarmlar sadece haftanın belirli günlerinde çalacak şekilde ayarlanabilmektedir. Bu, örneğin hafta sonu alarmın sizi uyandırmasını istemiyorsanız kullanışlıdır. Veya örneğin hafta içi 7.00'de, Perşembe 8.00'de uyanmanız gerekiyor ve hafta sonları alarm saatine ihtiyacınız yok. Daha sonra yeniden kullanılabilir olanı Pazartesi-Çarşamba ve Cuma günleri saat 7-00'e, ikincisini Perşembe günü saat 8-00'e kuruyoruz..... Ayrıca tüm alarm saatlerinin bir sinyal süresi ayarı vardır ve isterseniz sırayla Uyanmak için 1 dakika boyunca yeterli sinyal yoksa, daha sonra sinyali 1 dakikadan 15 dakikaya kadar artırabilirsiniz. Rota günde bir kez 00-00'da düzeltilir. Saat, örneğin günde 5 saniye hızlıysa, 00-00-00'da saat 23-59-55'e ayarlanacaktır, ancak saat yavaşsa 00-00-00'da saat 23-59-55'e ayarlanacaktır. 00-00-05 olarak ayarlanacaktır. Düzeltme adımı – 0,1 sn. Maksimum düzeltme – 59,9 saniye/gün. Çalışan bir kuvarsla daha fazlasına ihtiyacınız olması pek mümkün değildir. Düzeltme ayrıca pille çalıştırıldığında bekleme modunda da gerçekleştirilir. LED matrisleri ortak katotlu herhangi bir 8*8 LED'i kullanabilir. Daha önce de belirttiğim gibi GNM23881AD'yi kullandım. Prensip olarak, tek tek LED'lerden bir matris "birleştirebilirsiniz". AtMega16a mikrodenetleyici, L harfli "eski" AtMega16 ile değiştirilebilir. Aynı zamanda teorik olarak pilin akım tüketiminin biraz artması gerekir. Muhtemelen sadece AtMega16 çalışacaktır, ancak pil gücüyle çalışırken sorunlar ortaya çıkabilir. Diyot D1 - tercihen herhangi bir Schottky diyotu. Aynı zamanda normal bir doğrultucu ile de çalışır, ancak devrenin bir kısmının "diyottan önce" ve "diyottan sonra" voltajla beslenmesi gerçeğiyle ilgili çeşitli aksaklıklardan kendinizi korumak için, aramak daha iyidir Schottky gerilimi. Transistör VT1 – herhangi bir n-p-n. Saat iki düğmeyle kontrol edilir. Düğmelerin kendisi dışında başka bir bileşen eklemeden sayıları 8 parçaya çıkarılabilirdi, ancak ben sadece iki parçayla “dışarı çıkmayı” denemek istedim. Düğmeler geleneksel olarak “OK” ve “STEP” olarak adlandırılır. “STEP” düğmesi genellikle bir sonraki menü öğesine geçer ve “OK” düğmesi mevcut menünün parametrelerini değiştirir. Tetiklenen bir alarmın sinyali aynı zamanda “OK” veya “STEP” düğmeleri kullanılarak da kapatılabilir. Alarm çalarken herhangi bir tuşa basıldığında alarm kapanır. Kontrol şeması şu şekilde ortaya çıktı:

Her şeyin nasıl çalıştığını gösteren video!


Önerilen cihaz, ortak anotlara sahip sembolik on altı elementli LED göstergeler PSA08-11'i kullanır. Düşük maliyetleri, görüntülenen sembolün büyük boyutu ve yüksek parlaklıkları nedeniyle seçim onlara düştü. Mümkün olduğunca fazla yararlı bilgi görüntülemek için metin sağdan sola doğru hareket eder. Altı aşinalık ekranı dönüşümlü olarak geçerli saati, iç sıcaklığı, dış sıcaklığı, tarihi, haftanın gününü ve ayı kelimelerle görüntüler; örneğin, “18 MART PERŞEMBE.

Zaman DS1307 çipi tarafından tutulur. Dahili bir takvime sahip gerçek zamanlı bir saattir (Gerçek Zamanlı Saat -RTC). Genel güç kapatıldığında, bu mikro devre bir yedek kaynaktan - 3 V voltajlı bir CR2032 lityum hücreden çalışmaya devam eder. Harici çağrıların yokluğunda, DS1307 mikro devresi tarafından tüketilen akım 300 nA'yı geçmediğinden, Bu modda zaman sayımı on yıla kadar sürebilir. Bu mikro devrenin saat üreteci, yüksek hassasiyet sağlayan 32768 Hz frekanslı harici bir kuvars rezonatör kullanılarak yapılmıştır. Mikro devre saniyeleri, dakikaları, saatleri, ayın günlerini (artık yıllar dahil), ayları, haftanın günlerini ve yılları sayar. Takvimi 2100 yılına kadar geçerlidir. Hakkında daha detaylı bilgiye adresinden ulaşılabilir.

Cihaz, sıcaklığı ölçmek için -25 ila +100 °C sıcaklık aralığında 2 °C'den fazla hataya sahip olmayan LM75 dijital sıcaklık sensörlerini kullanır. Onlar hakkında daha fazla bilgiyi adresinde bulabilirsiniz.
Bir saat ve termometrenin bir şeritli diyagramıŞekil 2'de gösterilmiştir. 1. Zaman sayımı dışındaki tüm işlevler, ZQ2 kuvars rezonatörlü yerleşik bir osilatör tarafından saatlenen DD2 mikro denetleyici (PIC16F873A-20I/P) tarafından gerçekleştirilir. Cihazı kontrol etmek için SB1-SB5 düğmeleri kullanılır. Kontakları açıkken, R4-R8 dirençleri mikro denetleyicinin ilgili girişlerinde yüksek bir mantık seviyesi sağlar. Direnç R11, mikro denetleyicinin ilk kurulum girişinde yüksek bir seviyeyi koruyarak rastgele gürültünün programın yeniden başlatılmasını önler.

Saate güç sağlamak için maksimum yük akımı en az 600 mA olan 5 V'luk stabilize bir voltaj kaynağı gereklidir. XS1 konnektörüne bağlanır. Yazarın versiyonu bir cep telefonu şarj cihazı kullanıyor. C1 ve C2 kapasitörleri yumuşatılıyor ve C1 kapasitörünün kapasitansı en az 1000 μF olmalıdır.
Saatin bir alarm saati vardır. Ses sinyali, yerleşik HA1 jeneratörüne (NPA24AX) sahip bir piezo yayıcı tarafından sağlanır. Mikrodenetleyiciden gelen sinyallere dayanarak, transistör VT7 üzerindeki bir anahtarla kontrol edilir. Bu transistörün temel devresinde R18 direncini seçerek ses seviyesini belirli sınırlar dahilinde ayarlayabilirsiniz.

HL1-HL3 kırmızı LED'leri çalışma modlarını belirtmek için kullanılır. Parlaklıkları R15-R17 dirençleri seçilerek değiştirilir.
Kart üzerinde kurulu olan mikrodenetleyiciyi programlamak için XP1 konnektörü bulunmaktadır. Bu işlem gerçekleştirilirken ona PICkit2, EXTRAPIC veya benzeri bir programlayıcı eklenir. Bu konektör mevcut cihazda gerekli değildir. Mikrodenetleyiciyi karta kurmadan önce programlayıcı panelinde programladıysanız kurmanıza gerek yoktur.


Bir mikro denetleyicinin programlanması, program kodunun bir HEX dosyasından FLASH belleğine yüklenmesini içerir. Bunun için programlayıcıyı kontrol eden bir program gerekir; örneğin internette www.winpic800.com/descargas/WinPic800.zip adresinden ücretsiz olarak temin edilebilen WinPic800. Mikrodenetleyicinin programlanmasıyla ilgili ayrıntılı talimatlar da burada okunabilir.
Mikrodenetleyici programını ve cihazı bir bütün olarak basitleştirmek için, RTC DD1 yongası ve sıcaklık sensörleri VK1 ve VK2, mikro denetleyiciye aynı I2C veri yolu üzerinden bağlanır. VK2 sensörü, Şekil 2'de gösterilen şemaya göre XP2 konektörüne birkaç metre uzunluğa kadar bir kabloyla bağlanır. 2.

R2 ve R9 dirençleri, I 2 C veri yolunun SCL ve SDA hatlarını artı güç kaynağına bağlar ve veri yolu spesifikasyonunun gerektirdiği şekilde bilgi aktarımındaki duraklamalar sırasında bunlarda yüksek bir seviyeyi korur. Bu lastiğin kullanımına ilişkin daha fazla bilgiyi adresinde bulabilirsiniz. VK1 ve VK2 sıcaklık sensörlerinin adres girişleri, güç kaynağı artı ve ortak kabloya farklı şekilde bağlanır, bu da mikro denetleyiciye sensörleri programlı olarak ayırt etme yeteneği verir.

Göstergeler hakkındaki bilgileri görüntülemek için on altı bitlik paralel kodlar, DD3 ve DD4 mikro devrelerinin çıkışlarında oluşturulur. DD2 mikrodenetleyici, B ve C bağlantı noktalarının yalnızca üç hattını kullanarak bu mikro devrelere seri kodla bilgi girer. RC6 hattını ve DD3 mikro devresinin kaydırma yazmacının bilgi girişini değere (0) karşılık gelen bir seviyeye ayarlayarak veya 1) bir sonraki kod bitinin RC7 hattında üretir ve her iki mikro devrenin saat girişleri artan bir seviye farkına sahiptir. Bu durumda, seri bağlı kaydırma yazmaçlarında zaten bulunan kod, DD4 yazmacının üst basamağına doğru bir konum kaydırılır ve mikro denetleyicinin girişinde ayarladığı değer, DD3 yazmacının boşalan alt basamağına yazılır.

Bu tür on altı işlemden sonra kodun tamamı, DD3 ve DD4 yongaları tarafından oluşturulan on altı bitlik kaydırma yazmacına yazılır. Ancak bu kod henüz mikro devrelerin çıkışlarında görünmedi, önceki döngüde çıkan kod onlar üzerinde çalışmaya devam ediyor. Çıkışların durumunu güncellemek için mikrodenetleyici, RB0 hattında yükselen bir seviye farkı oluşturur ve DD3 ve DD4 mikro devrelerinin kaydırma yazmaçlarından depolama kayıtlarına kod yazma girişleri oluşturur. 74NS595 seri-paralel kod dönüştürücü çipinin çalışması hakkında daha fazla bilgiyi okuyarak öğrenebilirsiniz.

Kodu DD3 ve DD4 mikro devrelerine yazdıktan sonra, mikro denetleyici, bu kodun elemanlarının amaçlandığı katotlar için altı göstergeden birini açma komutunu verir. Mikrodenetleyici çıkışlarının aşırı yüklenmemesi için gösterge anotları, VT1-VT6 transistörlerindeki anahtarlar aracılığıyla bunlara bağlanır. Gösterge panosunun şeması Şekil 2'de gösterilmektedir. Şekil 3'te ve PSA08-11SRW göstergesinin elemanlarının sembolleri Şekil 2'de bulunmaktadır. 4. Gösterge kartının XP1 ve XP2 konnektörleri sırasıyla ana kartın XS3 ve XS2 konnektörlerine bağlanır.

Ana kartın çizimleri ve elemanların üzerine yerleştirilmesi Şekil 1'de gösterilmektedir. 5. Bir tarafı fiberglas folyodan yapılmıştır. Kart, BK1 sıcaklık sensörünü DIP8 paketine monte etmek için tasarlanmıştır, ancak LM75AD sensörü SO8 yüzeye montaj paketinde üretildiğinden adaptör kartı aracılığıyla kurulması gerekir (Şekil 6). İncirde. Şekil 5'te adaptörün ana hatları noktalı çizgiyle gösterilmiştir. Adaptörün ve kartın karşılık gelen deliklerine tel parçaları yerleştirilir ve her iki taraftan lehimlenir. Elbette ana kart üzerindeki baskılı iletkenlerin topolojisini adaptör olmadan da değiştirebilirsiniz.

Göstergelerin çift taraflı baskılı devre kartı Şekil 2'de gösterilmektedir. 7. Üzerindeki konnektörlerin göstergelerin bulunduğu tarafın ters tarafına takıldığını lütfen unutmayın. Konektörleri bağlarken, her iki kart da Şekil 2'deki fotoğrafta görülebileceği gibi “raf” düzeninde üst üste yerleştirilmiştir. 8.
KT502B transistörleri aynı serilerden herhangi biriyle değiştirilebilir. AL307BM LED'leri yerine diğer düşük güçlü kırmızı ışıklar, örneğin AL310A da uygundur.
Doğru programlanmış bir mikro denetleyiciye sahip, doğru şekilde monte edilmiş bir cihazın ayarlanması gerekmez ve açıldıktan hemen sonra çalışmaya başlar.

Güç uygulandıktan sonra göstergelerde ilk olarak bir karşılama mesajı görüntülenir. Bunu, ilgili menü öğesinden seçilebilen 12 veya 24 saatlik formattaki saat takip eder. Daha sonra güncel saati gösteren koşu çizgisi 10 saniye süreyle durur. Süreleri dolduktan sonra oda sıcaklığı (VK1 sensör okumaları), dış ortam sıcaklığı (VK2 sensör okumaları) görüntülenir ve göstergenin sokak sıcaklığını gösterdiği on saniyelik bir duraklama daha sürdürülür. Bundan sonra sayı görüntülenir, ardından ay ve haftanın günü kelimelerle görüntülenir ve ardından döngü (karşılama mesajı hariç) tekrarlanır.

Güncel saati ve diğer parametreleri ayarlamak için SB3 “M” tuşuna kısaca basarak “Menü” moduna geçin. HL2 LED'i yanarak bu modun etkinleştirildiğini gösterir. Göstergede, “SETUP” mesajından sonra “HOUR XX” satırı görüntülenir ve durdurulur; burada XX, SB1 “+” düğmesine basılarak artırılabilen veya SB5 “- düğmesine basılarak azaltılabilen mevcut saat değeridir. " düğme.
Bir sonraki menü öğesine geçmek için SB2 “>” tuşuna basın. Bunun yardımıyla, SB4 " düğmesini kullanarak menüde aşağıda belirtilen sırayla "gezinebilirsiniz"<” – в противоположном. После первого нажатия на кнопку SB2 “>” “MIN XX” satırı görüntülenir, ardından “YEAR 20XX” (varsayılan 2011), ardından “MONTH XX”, “DAY XX”, “DAY OF THE WEEK XX”, “ALARM_HOUR XX” (alarmın çaldığı saat) görüntülenir. , “ALARM_MIN XX” (alarmın çaldığı dakikalar).

Daha sonra göstergede alarmın mevcut durumunu gösteren "ALARM KAPALI" veya "ALARM AÇIK" satırlarından biri belirir. SB1 “+” veya SB5 “-“ tuşuna basılarak değiştirilebilir. Alarm açıldığında HL1 LED'i yanarak bunu bildirir.
Daha sonra, SB1 "+" veya SB5 "düğmesine basılarak seçilen saat görüntüleme formatına bağlı olarak XX'nin 12 veya 24'e eşit olduğu "FORMAT XX" satırı görüntülenir. SB2 “>” tuşuna tekrar basıldığında “BYE” satırı görüntülenir, HL2 LED'i söner ve saat normal çalışma moduna geçer.


Geçerli saat, ayarlanan alarm saatiyle çakıştığında HL3 LED'i ve HA1 ses yayıcı açılır. Işıklı ve sesli alarmı kapatmak için herhangi bir tuşa basmanız yeterlidir. Gerekirse harici bir aktüatörü kontrol etmek için elektrik sinyali, HL3 LED'in R17 direnci aracılığıyla bağlandığı mikro denetleyicinin RB5 çıkışından çıkarılabilir.
Harici güç kapatıldığında cihaz zamanı saymaya devam eder - DD1 yongası G1 lityum hücresinden güç alır.

Ekli dosyalar: source.zip

EDEBİYAT
1. DS1307 – Seri arayüzlü 64 X 8 gerçek zamanlı saat. – www.piclist.ru/D-DS-DSB1 “+”307-RUS/D-DS-DS1307-RUS.html
2. LM75A Dijital sıcaklık sensörü ve termal gözlemci. www.alldatasheet.com/datasheet-pdf/pdf/100962/PHILIPS/LM75AD.html
3. Dolgiy A. Programcılar ve mikrodenetleyicilerin programlanması. – Radyo, 2004, Sayı 1, s. 53.
4. Radyo mühendisliği tasarımlarında Semenov B. Yu.I2C veri yolu. – M.: “SOLON-R”, 2002.
5.74NS595; 74НСТ595 Çıkış mandallı 8 bitlik seri girişli, seri veya paralel çıkışlı kaydırma yazmacı; 3 durumlu. - www.nxp.com/documents/data_sheet/74HC_HCT595.pdf

V. BALANDIN, s. Petrovskoye, Tambov bölgesi.
“Radyo” Sayı 9 2012

Bu sürünen çizgi, boşluklar dahil en fazla 8192 harften oluşan metni okumanıza olanak tanır.Metin, bilgisayara bağlanmadan bilgisayar klavyesi kullanılarak 24C64 çalışan hat belleğine girilir. Metin girerken, harflerin silinmesi işlemini ekranda gözlemlerken (Backspace) tuşunu kullanarak harfleri silmek mümkündür.

Klavye rakamlarının (+ ve -) yanındaki iki tuşu kullanarak harflerin hızını ayarlamak mümkündür. Hattın hızı en son hafıza hücresi olan 24C64'e yazıldığı için hızı ayarlamadan ilk açtığınızda harfler yavaş çalışacağından ilk ayarlamayı yapmanız gerekmektedir. Son hücre 24С64 sayılarındaki bir sayının kaydını ondalık ölçümde 1....30'dan veya onaltılık 1..1E'den ayarlarken çalışma hızı çok değişir; bu, PICKIT2 programlayıcısı kullanılarak doğrulanabilir, ancak bu değildir. gerekli.

Dize hafızası, hafızasında Rus harfleri, büyük ve küçük harflerden oluşan tüm alfabenin yanı sıra bazı işaretler ve tüm sayıları içeren bir karakter oluşturucu içerir.

Çizgi göstergesi satır satır dinamiktir, sırayla yukarıdan aşağıya doğru yanan 8 satırdan oluşur, 8 satırlık döngünün tamamı saniyede 300 kez gerçekleştirilir, bu da resmi titremeden gözlemlemenize olanak tanır .

74NS595 ekran yongaları, yatay ekranı veya 160 LED'lik bir sırayı ateşleme rolünü üstlenir ve transistörler, yatay veya sıraların yukarıdan aşağıya sırayla değiştirilmesini mümkün kılar, yani ekran yukarıdan aşağıya satır satır aydınlatılır. saniyede 300 kare hızla dibe doğru.

74NS595 mikro devresinin kendisi, her kayıt çıkışının bir LED matrisine olduğu normal bir kaydırma yazmacıdır, ancak büyük bir ANCAK vardır, matris kayıtlara doğrudan değil, mantıksal durumu sabitleyen kayıtlar aracılığıyla bağlanır.

Bu neden gerekli? Bu, kaydırma yazmaçlarının MK'den zincir boyunca birinden diğerine her saat sinyali pin 11'de yüklenirken ve aynı zamanda hiç ihtiyaç duymadığımız LED matrislerinde gözlemlenmesi için gereklidir. çünkü resim yanlış yerlerdeki LED'ler tarafından aydınlatılıyor. Bu nedenle, ek mandallama kayıtları, veri yükleme ve güncelleme sırasında matrislere bilgi çıkışını, yalnızca kaydırma yazmaçlarından kilitleme verilerine giden pinler (12) üzerinde bir saat sinyali göründükten ve mandallama kayıtları matrislere iletildikten sonra bloke eder.

Hattın tüm resmini oluşturan ekran verileri MK'den çıkış 34'ten 74NS595 mikro devresinin kayıt 14 girişine, ilk 74NS595 mikro devresinden ikinciye gelir, veriler çıkış 9'dan giriş 14'e aktarılır ve böylece son 20 mikro devreye kadar zincir boyunca devam edin.

Tekrar ediyorum, veriler zincir boyunca tüm 74NS595 mikro devrelerinin giriş 11'indeki her saat döngüsünde en son 74NS595 mikro devresine kadar hareket eder ve 20 mikro devrenin tümü yüklendikten sonra, mandal kayıtlarında, çıkış 12'de bir saat belirir ve böylece görüntü güncellenir. ekranın tüm görüntüsünü değil, tüm satırı. Satırlar, bir alt sıraya geçtikten sonra her defasında güncellenir.

Bir ekran kartını monte ederken, iki adet 8x8 matristen veya kartın her biri kart sayısını artırma olasılığı olan iki matris içerecek şekilde kartlar yapmak çok uygundur.İlk ekran kartını mikrodenetleyici kartına bağlayarak, Ekran kartlarının geri kalanı olmadan çalıştığından emin olun ve ancak bundan sonra sonraki kartları kontrol edin, durum böyle olacaktır. Kusurları ve lehimleme hatalarını aramak daha kolaydır.

İlk ekran kartını kontrol etmek için klavyeyi MK kartına bağlamanız, güç vermeniz, bir veya daha fazla harfe basmanız, satırın sonuna kadar komut vermeniz, metnin girildiğini ENTER tuşuna basmanız ve ardından ENTER tuşuna basmanız gerekir. 5..1E'den gelen sabit 24C64 hafızasına hexadecimal olarak yazılana kadar (-) tuşuna basılarak çalışma hızının da ayarlanması gerektiğinden hattın düşük hızda çalışacağını belirtir.

20 adet 8x8 matristen oluşan bu kadar uzun bir diziye ihtiyacınız yoksa, o zaman size 2'den 19'a kadar daha küçük bir sayıya sahip aygıt yazılımını gönderebilirim. Bu basit ve hızlı bir şekilde yapılır. Size aygıt yazılımını içeren bir mektup göndereceğim Adresim evgen100777(sobaka)rambler.ru.

Ekran kartları, QFT 2388ASR işaretli kırmızı renkte 6x6 santimetre matrisler için kablolanmıştır, mikrodenetleyici kartı, hatta bir saat ve termometre eklenerek modernizasyon şartıyla yapılmıştır, ancak bunun için ürün yazılımı tamamlanmadığından, ben MK bağlantı noktasını yakmamak için düğme eklemenizi önermeyin.

Komut düğmeleri.

(Vardiya) – büyük harflere geçiş düğmesi; basıp bıraktığınızda, harfe basılır ve ekranda büyük harf görüntülenir; Shift tuşuna basmadan bir sonraki harfe basarsanız, küçük bir harf görüntülenir; yani, Her büyük harf girişinden önce Shift tuşuna basıp bırakmanız gerekir.

(+ Ve - ) - bu tuşlar, yazmadan önce sürünen çizgiyi açtığınızda çalışır ve harflerin ekran boyunca hareket etme hızını düzenler + hızı artırır Harf hareketinin hızını azaltır.

Geri tuşu- yazarken metni silme tuşu, yalnızca metin yazma modunda çalışır, metni sola kaydırarak silinen harfi ekranda görüntüler.

Girmek bu tuş, yazdıktan sonra bir satır çalıştırması başlatarak 24C64 hafızasındaki metnin sonunu belirtir ve satır çalıştırmayı metindeki bu yerden başlatmanız gerektiğini söyler.

Yeni bir metin yazmak için klavye bağlıyken akan satırın kapatılıp tekrar açılması, artı ve eksi tuşlarını kullanarak metnin hızını seçmeniz ve bir harfe ilk bastığınızda ekranın ilk tuşla silinmesi gerekir. satırın sağ tarafında görüntülenen harf; metin yazarken sola doğru hareket eder, ardından Enter tuşuna basıldığında satır klavyeye yanıt vermeden çalışma moduna geçer.

Metni yeniden sulamak için hattı açıp kapatmayı unutmamalısınız.

PS/2 klavyede saat, takvim ve yazma özellikli kayan yazı

Ticker, saati saat dakika saniye olarak sayılarla ve haftanın ayını ve gününü kelimelerle gösterir; örneğinSAAT 12.30.10 20 OCAK ÇARŞAMBA.

Klavyede yazarken tam olarak aynı kayan yazı yalnızca takvimli bir saate sahiptir. Bu satırda, 20 matrisin tamamı saatin, tarihin, ayın ve haftanın gününün ayarlanmasında rol oynadığından LED matrislerinin sayısını değiştiremezsiniz.

Yazarken sol CTRL tuşuna basmak, akan satırın metnine takvim içeren bir saat ekler. Bu hat PIC16F628 ve PIC16F877'deki önceki hatlarla aynı işlevlere sahiptir ve aynı şekilde kontrol edilir.

Saati ayarlamak için mikrodenetleyicinin bulunduğu kart üzerindeki seçme tuşuna basmanız gerekir; zaman ayar ekranı görünür; saniyeler yanıp sönmeye başlar; değiştirme tuşuna basıldığında saniyeler sıfırlanır. Seçim tuşuna tekrar basıyoruz, dakikalar yanıp sönmeye başlıyor, değiştirme tuşuna basarak saat, tarih, ay ve haftanın günü gibi dakikaları arttırıyoruz.

Zaman ayarlarında haftanın günü ve ay sayı olarak görüntülenir.

İşte bu satırın biraz değiştirilmiş bir diyagramı, buraya zamanı değiştirmek için çekme dirençlerine sahip iki düğme ve 32768 Hz'de bir saat kuvarsı ve klavyeye girmekten sorumlu denetleyici girişini yukarı çeken başka bir direnç ekledik.

Daha kararlı bir çalışma için, ekran hatlarını değiştiren transistörlerden gelen paraziti azaltmak amacıyla PIC16F877'ye pozitif bir güç kaynağı kullanarak 11 ohm 0,25 Watt'lık bir dirençle güç vermek daha iyidir.

Dış mekan ve iç mekan kullanımı için saatli ve termometreli bir şerit.

Koşu çizgisi DS1820 sensörleri üzerinde çalışır ve ekrandaki okumaları koşu çizgisinin metnine yerleştirerek evdeki ve dışarıdaki sıcaklığı gösterir.

Okumalar, SICAKLIK EVİ 25.2 SOKAK -12.4 yazısı şeklinde görüntülenir. Sıcaklık okumaları, derecenin onda biri şeklinde küçük bir göstergeye sahiptir.

Metne bir termometre eklemek için, kayan yazıya bağlı bilgisayar klavyesindeki sol ALT tuşuna basın.

Görüntülenen termometrenin sıcaklık aralığı -55 ile 99 derece arasındadır ancak hasarı önlemek için sensörün 70 derecenin üzerine ısıtılması önerilmez.

Sokaktaki sensöre giden telin uzunluğu 4 metreyi geçmemelidir.

Üç Ukrayna harfinden oluşan bir ürün yazılımı var.
PIC16F877'nin 38 numaralı pininden gelen sinyal sırasında alarm sinyali log 0 olarak kaydedilir.

Radyo elemanlarının listesi

Tanım Tip Mezhep Miktar NotMağazanot defterim
şema 1
entegre devre MK PIC 8 bit

PIC16F877

1 Not defterine
IC1 Bellek çipi24C641 Not defterine
IC2, IC3 Kaydırma kaydı

CD74HC595

20 Not defterine
VT1-VT8 Bipolar transistör

BD140

8 Not defterine
C1, C2 Kapasitör100 nF2 Not defterine
C3, C4 Kapasitör15pF2 Not defterine
C5 Kapasitör3,3 nF1 Not defterine
R1-R16, R18, R19, R21-R24, R30, R31 Direnç

330Ohm

24 Not defterine
Direnç

330Ohm

144 Not defterine
R26, R27 Direnç

5,1 kOhm

2 Not defterine
R28, R29 Direnç

4,7 kOhm

2 Not defterine
CR1 Kuvars rezonatör20.000 MHz1 Not defterine
LED matrisi8x820 Not defterine
BağlayıcıPS/21 Not defterine
Şema 2
entegre devre MK PIC 8 bit

PIC16F877

1 Not defterine
IC1 Bellek çipi24C641 Not defterine
Kaydırma kaydı

CD74HC595

20 Not defterine
Bipolar transistör

BD140

8 Not defterine
C2 Kapasitör100 nF1 Not defterine
C3, C4 Kapasitör15pF2 Not defterine
C5 Kapasitör3,3 nF1 Not defterine
C6, C7 Kapasitör33pF2 Not defterine
C8 Elektrolitik kondansatör47 uF1 Not defterine
R18, R19, R21-R24, R30, R31 Direnç

330Ohm

24 Not defterine
Direnç

330Ohm

144 Not defterine
R26, R27, R32, R33 Direnç

5,1 kOhm

4 Not defterine
R29, R34, R35 Direnç

4,7 kOhm

3 Not defterine
R36 Direnç

11 ohm

1 Not defterine
CR1 Kuvars rezonatör20.000 MHz1 Not defterine
Cr2 Kuvars rezonatör32768Hz1 Not defterine
S1, S2 İncelik düğmesi 2 Not defterine
LED matrisi8x820 Not defterine
BağlayıcıPS/21 Not defterine
Şema 3
entegre devre MK PIC 8 bit

PIC16F877

1 Not defterine
IC1 Bellek çipi24C641 Not defterine
Kaydırma kaydı

CD74HC595

20 Not defterine
Sıcaklık sensörü

DS18B20

2