Realitzeu aquest rellotge digital de 7 segments amb circuit d'alerta de so

Proveu El Nostre Instrument Per Eliminar Problemes





En aquest post construirem un rellotge digital mitjançant pantalla LED de 7 segments amb disseny controlat per Arduino.

PER:



Com funcionen els circuits

El circuit de rellotge de 7 segments proposat és econòmic i fins i tot els principiants a Arduino poden aconseguir-ho amb facilitat. Aquest rellotge consta de quatre pantalles de 7 segments, dues per hores i dues per minuts.

La pantalla està emparellada amb IC 4026, dissenyada per conduir pantalles de 7 segments. Cada IC 4026 està controlat per Arduino.



Aquest rellotge té una funció d’alerta de pit, que emet un pit cada començament de l’hora, donant una idea aproximada del temps sense mirar el rellotge. Aquest rellotge no té funció d'alarma.

El codi Arduino no necessita cap biblioteca especial per compilar el programa. El rellotge té un disseny molt minimalista, només té quatre pantalles i dos LEDs per a l’indicador AM / PM i no té funcions elegants a part de sonar cada hora.

Prototip de l'autor:

Resultat de la prova del rellotge digital de 7 segments

Aquí teniu un prototip complet amb materials de cartró i ferralla:

El disseny:

El circuit consta de quatre IC 4026 per controlar quatre pantalles de 7 segments i el cervell del rellotge arduino. Es connecten dues resistències de tracció cap avall al pin de reinici de l'IC 4026 per evitar un restabliment accidental a causa de la càrrega estàtica. Indicador AM / PM connectat a arduino en combinació amb una resistència de limitació de corrent de 330 ohms.

Nota: s'hauria de connectar la resistència de 220 ohm a 330 ohm a cada segment de pantalla.

Rellotge digital de 7 segments amb circuit d

Configuració de pin de l'IC 4026:

Configuració de pin de l

El circuit sonor:

El circuit sonor és només un multivibrador monoestable dissenyat amb IC555. Quan s’alimenta un pols negatiu al pin número 2 de l’IC555, emet un pit aproximadament durant un segon. Aquesta alerta d'àudio ajuda l'usuari a tenir una idea aproximada de l'hora. El pin núm. 2 de l'IC555 hauria d'estar connectat al pin número 10 de l'arduino.

Circuit zumbador IC 555

Codi del programa:

//---------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---------------//

Com definir l'hora:

Al ser un disseny molt minimalista, es pot utilitzar el 'botó de reinici' per configurar el temps. Però l’usuari ha d’establir l’hora amb l’ajut del rellotge de referència. L’usuari ha de restablir l’arduino al rellotge exactament de 12’O. Un cop fet això, el rellotge actualitza l'hora per si sol.

Nota: Atès que el rellotge digital de 7 segments explicat anteriorment que utilitza Arduino no té 'xip de rellotge en temps real', per mantenir el temps precís, hi ha la possibilitat que el temps pugui produir-se / retardar a causa del canvi de la temperatura ambient.

Per corregir-ho, aquí teniu els passos següents:

• Si el rellotge porta uns quants segons el temps del rellotge de referència, cal reduir la velocitat, anoteu la diferència i introduïu el valor del programa en mil·lisegons.

delay (2000) // correcció d'errors (varia amb la temperatura). Això disminuirà uns segons cada hora.

• Substituïu el 2000 pel vostre valor.

• Si es retarden els rellotges, configureu el 'retard (0) // correcció d'errors (varia segons el temps)' i feu els canvis següents al programa:

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)

Substituïu 'delay (9700)' pel vostre valor per accelerar el temps cada minut.

Aquests passos no garanteixen que el temps sigui sempre precís, però ajuda a mantenir el temps amb la mínima inexactitud. El disseny proposat és de 12 hores de rellotge.




Anterior: Circuit indicador de càrrega completa de la bateria amb dos transistors Següent: Generador d'efectes Corona