Készítse el ezt a 7 szegmensű digitális órát hangjelző áramkörrel

Próbálja Ki A Műszerünket A Problémák Kiküszöbölésére





Ebben a bejegyzésben digitális órát fogunk építeni 7 szegmenses LED-kijelzővel, Arduino által vezérelt kivitelben.

ÁLTAL:



Hogyan működnek az áramkörök

A javasolt 7 szegmenses óraáramkör olcsó, és még az Arduino kezdője is könnyedén meg tudja valósítani. Ez az óra négy 7 szegmenses kijelzőből áll, kettő órákra és kettő percekre.

A kijelző párosítva van az IC 4026-szal, amelyet 7 szegmenses kijelző vezetésére terveztek. Minden egyes IC 4026-ot Arduino vezérel.



Ez az óra csipogó riasztási funkcióval rendelkezik, amely minden óra elején sípol, durva képet adva az időről anélkül, hogy az órára nézne. Ez az óra nem rendelkezik riasztási funkcióval.

Az Arduino kódnak nincs szüksége külön könyvtárra a program összeállításához. Az óra nagyon minimalista kialakítású, mindössze négy kijelző és két LED található az AM / PM jelző számára, és óránként csipogáson kívül nincs semmilyen divatos funkció.

A szerző prototípusa:

A 7 szegmenses digitális óra teszt eredménye

Itt van egy elkészült prototípus karton és hulladékanyagok felhasználásával:

A dizájn:

Az áramkör négy IC 4026-ből áll, amely négy 7 szegmenses kijelzőt és az óra arduino agyát vezérli. Két lehúzható ellenállás van csatlakoztatva az IC 4026 IC visszaállító csapjához, hogy elkerülje a statikus töltés miatti véletlen visszaállítást. AM / PM jelző az arduino-hoz csatlakozik 330 ohmos áramkorlátozó ellenállással kombinálva.

Megjegyzés: 220–330 ohmos ellenállást kell csatlakoztatni a kijelző minden szegmenséhez.

7 szegmensű digitális óra hangjelző áramkörrel

Az IC 4026 tűkonfigurációja:

Az IC 4026 tűkonfigurációja

A hangjelző áramkör:

A sípoló áramkör csak egy monostabil multivibrátor, amelyet az IC555 használatával terveztek. Ha negatív impulzust táplálnak az IC555 2. számú csapjába, nagyjából egy másodpercig sípol. Ez az audio figyelmeztetés segít a felhasználónak abban, hogy durva képet alkosson az időről. Az IC555 2. számú tűjét össze kell kötni az arduino # 10-es tűjével.

IC 555 hangjelző áramkör

Program kód:

//---------Program developed by R.Girish---------------//
int mint=13
int hrs=11
int beep=10
int rst=8 // reset to mint ic.
int rsth=9 //reset to hrs ic.
int am=7
int pm=6
int y=0
int t=0
int x=0
void setup()
{
pinMode(beep,OUTPUT)
pinMode(hrs,OUTPUT)
pinMode(am,OUTPUT)
pinMode(pm,OUTPUT)
pinMode(mint,OUTPUT)
pinMode(rst,OUTPUT)
pinMode(rsth,OUTPUT)
}
void loop()
{
digitalWrite(beep,1)
digitalWrite(13,0)
delay(10000)
delay(10000)
delay(10000)
delay(10000)
delay(10000)
delay(10000)
digitalWrite(13,1)
t=t+1
if(t==60)
{
digitalWrite(rst,1)
digitalWrite(rst,0)
digitalWrite(hrs,1)
digitalWrite(hrs,0)
digitalWrite(beep,0)
digitalWrite(beep,1)
x=x+1
y=y+1
t=0
delay(2000) // error fixing (varies with temperature)
}
if(x==13) // display 1'O clock after 12'O clock.
{
digitalWrite(rsth,1)
digitalWrite(rsth,0)
digitalWrite(hrs,1)
digitalWrite(hrs,0)
x=1
}
if(y<12)
{
digitalWrite(am,1)
digitalWrite(pm,0)
}
if(y>=12)
{
digitalWrite(pm,1)
digitalWrite(am,0)
}
if(y==24) y=0
}
//---------Program developed by R.Girish---------------//

Az idő beállítása:

Nagyon minimalista kialakítással a „reset gomb” használható az idő beállítására. De a felhasználónak referenciaóra segítségével kell beállítania az időt. A felhasználónak pontosan 12'O órakor kell visszaállítania az arduino-t. Az egyik ezt megtette, az óra önmagában frissíti az időt.

Megjegyzés: Mivel az Arduino-t használó, a fentiekben ismertetett 7 szegmensű digitális órának nincs „valós idejű óra chipje”, a pontos idő fenntartása érdekében fennáll annak a lehetősége, hogy az idő a környezeti hőmérséklet változása miatt vezethet / késhet.

Ennek kijavításához hajtsa végre a következő lépéseket:

• Ha az órája néhány másodperccel előzi meg a referenciaóra időpontját, lassítani kell, jegyezze fel a különbséget, és ezredmásodpercben írja be az értéket a programba.

delay (2000) // hibajavítás (a hőmérséklet függvényében változik) Ez óránként néhány másodpercet lelassul.

• Cserélje ki a 2000 értéket az Ön értékére.

• Ha késlelteti az órát, állítsa be a „delay (0) // hibajavítást (időtől függően változik)”, és hajtsa végre a következő változtatásokat a programban:

delay(10000)
delay(10000)
delay(10000)
delay(10000)
delay(10000)
delay(10000)
to
delay(10000)
delay(10000)
delay(10000)
delay(10000)
delay(10000)
delay(9700)

Cserélje ki a „delay (9700)” értéket az értékére, hogy percenként gyorsabb legyen az idő.

Ezek a lépések nem garantálják, hogy az idő mindig pontos legyen, de minimális pontatlansággal segít fenntartani az időt. A javasolt tervezés 12 órás.




Előző: Az akkumulátor teljes feltöltését jelző áramkör két tranzisztorral Következő: Corona Effect Generator