This is an old revision of the document!


Ceas digital

Introducere

Scopul proiectului este de a realiza un ceas digital cu alarma. Ora si data vor putea fi setate si vor fi reprezentate in mai multe formate iar utilizatorul va putea alege formatul in care vrea sa ii fie afisate ora si data. Utilizatorul va putea sa isi activeze si dezactiveze alarma la o oarecare ora si va putea sa isi aleaga o melodie (dintr-un set finit) care sa cante. Pe langa aceste functionalitati, vor fi afisate si temperatura si presiunea la fel in mai multe formate disponibile (unitati de masura) iar utilizatorul va avea posibilitatea sa isi aleaga formatul dorit.

Descriere generală

Toata informatia va fi afisata pe un ecran lcd iar cu ajutorul a 3 butoane utilizatorul va putea sa intre in meniu si sa schimbe setarile ceasului. Cu ajutorul unui modul RTC ceasul va avea proprietatea de a pastra ora curenta chiar daca e deconectat.

Schema Bloc

Hardware Design

Lista de componente:

  • Arduino UNO
  • Ecran LCD
  • Senzor temperatura
  • Buzzer
  • RTC
  • Butoane (3)

Schema electrica:

Software Design

Codul a fost scris in Arduino IDE.

Am folosit urmatoarele librarii:

  • ds3231.h - pentru folosirea componentei RTC
  • LiquidCrystal - pentru folosirea ecranului lcd
  • DHT.h - pentru senzorul de temperatura si umiditate

Am implementat codul orientat pe obiecte, astfel incat fiecare component reprezinta o clasa, iar obiectele pot comunica intre ele. Am folosit mai multe design patterns pentru a implementa cat mai elegant caracteristicile aplicatiei: strategy pattern pentru locurile unde se poate de extins programul (formatul datii, formatul orei, meniu command, music); facade pattern pentru componentele externe (RTC, buzzer, LCD).

Rezultate Obţinute

Care au fost rezultatele obţinute în urma realizării proiectului vostru.

Concluzii

Foarte interesant

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2022/dene/ceas-digital.1653662472.txt.gz · Last modified: 2022/05/27 17:41 by andrei.padureanu01
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0