Table of Contents

Smart Pocket Calculator cu Feedback Audio

Introducere

Proiectul constă într-un Calculator de Buzunar Smart cu Feedback Audio. Acesta rezolvă operații matematice de bază (+, -, *, /) și, spre deosebire de un calculator standard implementat pe breadboard, oferă o confirmare sonoră instantanee.

Scopul proiectului este de a crea un dispozitiv fiabil și interactiv, eliminând incertitudinea apăsărilor pe tastatură (fenomenul de ghosting sau taste neînregistrate). Ideea de la care am pornit a fost necesitatea de a avea certitudinea preluării corecte a input-ului fizic fără a fi nevoie să privim constant ecranul, inspirată de interfețele de la casele de marcat sau bancomate. Utilitate: Este un proiect extrem de util pentru consolidarea noțiunilor de debouncing, lucrul cu mașini de stări pentru parsarea input-ului și integrarea eficientă a mai multor periferice externe folosind protocoale diferite.

Descriere generală

Sistemul utilizează microcontrolerul ca unitate centrală de procesare și integrează 3 periferice externe (cerință de regulament), folosind conceptele a cel puțin 3 laboratoare (GPIO, Timere/PWM, I2C).

Sistemul este alcătuit din următoarele module:

Interacțiunea modulelor: La apăsarea unei taste pe matricea 4×4, microcontrolerul execută o rutină de debouncing. Dacă acțiunea este validată, se declanșează un semnal PWM către buzzer pentru feedback sonor scurt și se actualizează datele pe LCD prin magistrala I2C. Logica internă (o mașină de stări software) memorează primul număr, operatorul și al doilea număr, executând calculul la apăsarea tastei ”=”.

Hardware Design

Designul hardware a fost gândit pentru a fi simplu de implementat și robust, respectând cerința de a avea un cablaj curat și un aspect ordonat, fără fire redundante.

Listă de piese:

Conexiuni principale (Schemă bloc simplificată):

Software Design

Descrierea codului aplicaţiei (firmware):

  • mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR)
  • librării şi surse 3rd-party (e.g. Procyon AVRlib)
  • algoritmi şi structuri pe care plănuiţi să le implementaţi
  • (etapa 3) surse şi funcţii implementate

Rezultate Obţinute

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

Concluzii

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