Izveidojiet šo 7 segmentu digitālo pulksteni ar signāla signālu

Izmēģiniet Mūsu Instrumentu Problēmu Novēršanai





Šajā amatā mēs izveidosim digitālo pulksteni, izmantojot 7 segmentu LED displeju ar Arduino kontrolētu dizainu.

PĒC:



Kā darbojas ķēdes

Piedāvātā 7 segmentu pulksteņa shēma ir lēta, un pat iesācējs Arduino to var viegli paveikt. Šis pulkstenis sastāv no četriem 7 segmentu displejiem, diviem stundām un diviem minūtēm.

Displejs ir savienots pārī ar IC 4026, kas paredzēts 7 segmentu displeju vadīšanai. Katru IC 4026 kontrolē Arduino.



Šim pulkstenim ir skaņas signāla funkcija, kas iepīkstas katru stundas sākumu, sniedzot aptuvenu priekšstatu par laiku, neskatoties uz pulksteni. Šim pulkstenim nav trauksmes funkcijas.

Arduino kodam programmas sastādīšanai nav nepieciešama īpaša bibliotēka. Pulkstenim ir ļoti minimālistisks dizains, tikai četri displeji un divi gaismas diodes AM / PM indikatoram, un tajā nav nevienas izdomātas funkcijas, izņemot pīkstēšanu katru stundu.

Autora prototips:

7 segmentu digitālā pulksteņa testa rezultāts

Šeit ir pabeigts prototips, izmantojot kartona un lūžņu materiālus:

Dizains:

Shēma sastāv no četriem IC 4026, lai kontrolētu četrus 7 segmentu displejus un pulksteņa arduino smadzenes. IC 4026 atiestatīšanas tapai ir pievienoti divi nolaižamie rezistori, lai izvairītos no nejaušas atiestatīšanas statiskās uzlādes dēļ. AM / PM indikators savienots arduino kopā ar 330 omu strāvas ierobežojošo rezistoru.

Piezīme: Katram displeja segmentam jābūt savienotam ar 220 - 330 omu rezistoru.

7 segmentu digitālais pulkstenis ar signāla signālu

IC 4026 tapu konfigurācija:

IC 4026 tapu konfigurācija

Pīkstiena ķēde:

Pīkstiena ķēde ir tikai monostabils multivibrators, kas izstrādāts, izmantojot IC555. Kad IC555 tapai Nr. 2 tiek ievadīts negatīvs impulss, tas aptuveni vienu sekundi iepīkstas. Šis audio brīdinājums palīdz lietotājam saglabāt aptuvenu priekšstatu par laiku. IC555 tapai Nr. 2 jābūt savienotai ar aradīno ar tapu Nr. 10.

IC 555 skaņas signāla ķēde

Programmas kods:

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

Kā iestatīt laiku:

Tā kā dizains ir ļoti minimālistisks, laika iestatīšanai var izmantot atiestatīšanas pogu. Bet lietotājam ir jāiestata laiks ar atsauces pulksteņa palīdzību. Lietotājam ir jāatjauno arduino pulkstenis tieši 12’O ​​pulkstenī. Tas tiek darīts, un pulkstenis pats atjaunina laiku.

Piezīme: Tā kā iepriekš izskaidrotajam 7 segmentu digitālajam pulkstenim, kurā izmantots Arduino, nav “reālā laika pulksteņa mikroshēmas”, precīzā laika uzturēšanai pastāv iespēja, ka laiks var novest / aizkavēties apkārtējās vides temperatūras izmaiņu dēļ.

Lai to labotu, veiciet tālāk norādītās darbības.

• Ja jūsu pulkstenis atsauces pulksteņa laiku noved par dažām sekundēm, tas ir jāpalēnina, pierakstiet starpību un ievadiet vērtību programmā milisekundēs.

delay (2000) // kļūdu labošana (mainās atkarībā no temperatūras) Tas katru stundu palēninās dažas sekundes.

• Nomainiet 2000 ar savu vērtību.

• Ja jūs aizkavējat pulksteni, iestatiet “delay (0) // kļūdu labošana (mainās atkarībā no laika)” un veiciet šādas izmaiņas programmā:

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)

Nomainiet “delay (9700)” ar savu vērtību, lai paātrinātu laiku katru minūti.

Šīs darbības negarantē, ka laiks vienmēr būs precīzs, taču tas palīdz uzturēt laiku ar minimālu neprecizitāti. Piedāvātais dizains ir 12 stundu pulkstenis.




Pāri: Akumulatora pilnas uzlādes indikatora ķēde, izmantojot divus tranzistorus Nākamais: Corona Effect Generator