Arduino UNO - 7 segmentové LED hodiny 4*7

Vytisknout
ELEKTRONIKA
Zobrazení: 6427

Zbytkové zásoby LED zobrazovačů přímo lákají k sestavení těchto hodin, případně teploměru - nebo obojího :-). Konstrukce běží na procesoru ATmega 328 (Arduino UNO), který v multiplexu (rychlém přepínání displejů) obsluhuje LED displej 4*7 segmentů, sériovou linku a tlačítka pro nastavení. Pokud na sériovou linku připojíme Bluetooth modul (namísto převodníku USB/serial) můžeme čas a datum nastavovat na dálku například z telefonu.

Popis obvodu

  1. Po zapnutí napájecího napětí 5V (po zasunutí USB konektoru do PC) se v případě, že nebyl ještě nastaven a uložen čas/datum do obvodu reálného času RTC (tj obvodu DS1307) se rovnou na displeji zobrazí nápis "MenU". Do tohoto stavu se zařízení dostane i v případě, že je poškozen (nebo není nalezen) obvod reálného času. Nyní stiskneme levé tlačítko "set" pro posun v menu displeje a nastavíme postupně: den, měsíc, rok, hodina, minuta. Pro přičtení hodnoty stiskneme pravé tlačítko "plus". Pokud nastavujeme minuty potom při dalším stisknutí tlačítka "set" dojde k uložení hodnot do RTC obvodu a restartu zařízení. Tento stav je signalizován na LED displeji znaky: ----
  2. Pokud chceme při provozu upravit datum nebo čas stiskneme levé tlačítko "set" a hodnoty upravíme dle postupu výše v bodě 1. Po dobu vstupu zadávání hodnot v menu nebliká dvojtečka "vteřinovka" (2x LED mezi displeji).
  3. Pokud zadáváme datum a čas vzdáleně (přes počítač - Sériové rozhraní USB u verze FW1.1 nebo vyšší) je displej i tečky zhasnutý. Pro vstup do zadávání na Serialu odešleme znak "M". V okně sériového monitoru nastavíme "chybný řádek" na konci po stisknutí enter (vložit). Rychlost komunikace 9600Bd.
  4. Po zapnutí zařízení se provede test LED displeje (na šech digitech se zapne číslo 8 - tedy 8888), následně se vypíše verze programu FW "Pihrt VEr x-xx" a následně se spustí zobrazení hodin a datumu (datum u FW >= 1.1) pokud již byl nastaven čas (viz bod 1), jinak menu.

1

menu

2

den

3

měsíc

4

rok

5

hodina

6

minuta

fw

verze FW při zapnutí (FW 1.1)

Parametry obvodu

ZDARMA

DONATE

Verze FW

FW 1.0 (zdarma)

-výchozí verze hodin

FW 1.1 (donate)

 -přidána podpora seriálu rx a tx (nastavení datumu a času přes počítač rozhraní USB-COM)
 -přidáno přepínání zobrazení na LED displeji. Datum se zobrazuje každou 0-5 a 30-35 vteřinu jinak pouze čas
 -přidán watchdog pro kontrolu běhu programu

FW 1.2 (donate)

 -přidáno ukládání a načítání do eeprom paměti
 -v menu přidáno nastavení letní/zimní čas (sám se mění dle roku)
 -v menu přidáno nastavení úrovně jasu displeje dle času. V noci svítí pouze čas (tečky neblikají a neukazuje se datum). Jas 20%
   zimní čas sníží jas v 17 hodin a zvýší v 8 hodin ráno, letní čas sníží jas ve 20 hodin a zvýší v 6 hodin ráno
 -přidán alarm 1 (AL1 = 0/1, H1 = hod, M1 = min, d1 = sec)
  po dobu alarmu na displeji svítí ALM1
 -přidán alarm 2 (AH2 = hod, AM2 = min, Ad2 = na dobu v sec)
  po dobu alarmu na displeji svítí ALM2 (pro alarm je nutné připojit na poslední volný pin D2 procesoru piezo pípák (který sám pípá) na 5V - nejlépe přes tranzistor), nebo tímto výstupem spínat co potřebujeme
 v menu nově rotujeme:
  den, měsíc,rok,hodina,minuta,používat jas, používat letní/zimní čas, použít alarm 1 , alarm 1 hodina, alarm 1 minuta, alarm 1 trvání v sec, použít alarm 2 , alarm 2 hodina, alarm 2 minuta, alarm 2 trvání  v sec -> následně uložíme a vyskočíme z menu, jinak můžeme z menu vyskočit resetem bez uložení
  (tedy: dE, ME, ro, Ho, MI, JA, LE, AL1, H1, M1, d1, AL2, H2, M2, d2 -> uložení a restart)
 -přidána možnost smazat vše do výchozího nastavení přes seriál a rozděleno menu nastavení na sekce:
 * C nastavení čas a datum
 * D smazání eeprom a času do defaultu 00:00:00 1.1.2016
 * A nastavení alarmu 1
 * B nastavení alarmu 2
 * M nastavení ostatních parametrů (jas, letní/zimní čas)

FW 1.3 (donate)

-přidán alarm 3 (AH3 = hod, AM3 = min, Ad3 = na dobu v sec) Nově v menu rotujeme: (dE, ME, ro, Ho, MI, JA, LE, AL1, H1, M1, d1, AL2, H2, M2, d2, AL3, H3, M3, d3 -> uložení a restart)

-upraveno menu pro vzdálené ovládání (přidán alarm 3)
-opravena chyba: posun času při vyplém zařízení (posun na zimní/letní čas, pokud bylo zařízení vyplé provede se změna času hned jak je to možné)

Při aktivaci alarmu se na LED displeji zobrazuje nápis ALM1, ALM2 nebo ALM3 (čas ani datum se po dobu alarmu nezobrazují!)

Okno sériového monitoru FW: 1.3

1.3

Okno sériového monitoru FW: 1.2

serial1.2

Vzdálené nastavení datumu a času přes USB a sériový monitor FW: 1.1

serial

Schéma zapojení obvodu

schema

Deska spojů obvodu

deska

deska bot

Foto hotové desky

DSC 0265

DSC 0281

DSC 0280

DSC 0283

Připojení piezo "pípáku" pro alarm (od FW 1.2)

DSC 0001

DSC 0002

Video - test zařízení (verze FW 1.0 od zapnutí k nastavení)

Video - test zařízení (verze FW 1.1 přepínání datum/čas)

Attachments:
Download this file (sa08-11gwa.pdf)Katalogový list[SA08-11GWA Kingbright]133 kB316 Downloads2016-10-06 11:34
Arduino
ATMEGA328