Mini Etch a Sketch

Autor: Graur Dan-Mihai

Grupa: 332CD

Introducere

Mini Etch a Sketch este o implementare electronică a clasicului joc de desen, folosind o matrice de LED-uri 8×8 controlată cu ajutorul unui joystick analog. Utilizatorul poate deplasa un cursor pe grid pentru a „desena” diferite forme sau imagini. Proiectul include funcționalități avansate, precum salvarea desenelor pe un USB , redarea acestora printr-o galerie interactivă, generarea aleatorie de imagini și feedback sonor la fiecare acțiune.

Proiectul urmărește să combine elemente de interacțiune vizuală, memorie externă și control analogic, oferind în același timp un exercițiu practic de integrare a întreruperilor, manipulare a fișierelor pe USB și interfațare cu diverse periferice. Scopul este dezvoltarea unei mini-console creative, ușor de utilizat, dar complexă din punct de vedere tehnic, reprezentând o platformă educațională pentru lucrul cu microcontrolere.

Proiectul este util pentru familiarizarea cu module periferice comune precum joystick-ul, matricea LED, driveurile usb și buzzer-ul, dar și pentru înțelegerea gestionării memoriei și a fluxurilor de interacțiune într-un sistem embedded.

Descriere generală

Mini Etch a Sketch este compus din următoarele module principale:

Fluxul de funcționare

  1. La pornire, sistemul inițializează matricea LED, joystick-ul, Flash drive-ul usb și buzzer-ul.
  2. Utilizatorul controlează cursorul cu joystick-ul și „desenează” aprinzând LED-uri.
  3. La apăsarea butonului de salvare, desenul este salvat pe drive-ul usb.
  4. La apăsarea butonului de galerie, sistemul intră într-un mod de navigare a imaginilor salvate.
  5. La fiecare acțiune (mișcare, salvare, galerie), buzzer-ul emite un sunet scurt.
  6. Opțional, utilizatorul poate genera o imagine randomizată apăsând un al treilea buton sau o combinație.
  7. Funcționalitățile butoanelor sunt tratate prin întreruperi pentru a asigura răspuns imediat.

Hardware Design

Listă componente:

  1. Placă Arduino UNO R3
  2. Modul matrice LED 8×8 cu driver MAX7219
  3. Joystick analog XY
  4. Modul Flash drive USB
  5. Buzzer activ
  6. 2 butoane (salvare/paint și galerie)
  7. Rezistențe (10kΩ)
  8. Breadboard
  9. Cabluri jumper

Schemă electrică 8-o

Software Design

Mediu de dezvoltare: Arduino IDE

Librării folosite:

  • MaxMatrix.h – control matrice LED cu MAX7219
  • Ch376msc.cpp - control USB

Funcționalități software:

  • Control cursor pe matrice LED în funcție de poziția joystick-ului.
  • Stocare imagine curentă într-un fișier binar pe usb.
  • Parcurgere a imaginilor salvate și afișarea lor pe matrice.
  • Feedback sonor pentru acțiuni cu tone().
  • Generare imagine aleatoare prin umplerea matricei cu 1 și 0 random.

Rezultate Obţinute

Concluzii

Proiectul Mini Etch a Sketch demonstrează cu succes integrarea mai multor module hardware și software într-un sistem embedded interactiv. Prin combinarea joystick-ului analog, matricei LED și a memoriei externe USB, utilizatorul poate crea și stoca desene într-un mod simplu și intuitiv. Implementarea feedback-ului sonor și a generării de imagini aleatoare adaugă un plus de funcționalitate și divertisment, făcând acest proiect o platformă educațională valoroasă pentru aprofundarea cunoștințelor despre microcontrolere și periferice.

Resurse

Repo Github: Github

pm/prj2025/iotelea/dan_mihai.graur.txt · Last modified: 2025/05/28 09:16 by dan_mihai.graur
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