Table of Contents

Micro Invaders

Introducere

Prezentarea pe scurt a proiectului:

Descriere generală

Jocul este implementat pe microcontroller-ul ATmega328p și include următoarele funcționalități:

* Afișaj video: Comunicarea cu ecranul LCD se realizează prin protocolul SPI.

* Controlul mișcării: Coordonatele navei sunt controlate prin joystick. Tensiunile potențiometrelor aferente axelor X și Y sunt convertite în valori numerice prin modulul ADC integrat pe microcontroller.

* Acțiuni: Butoanele sunt conectate la pinii digitali (GPIO). Pentru a filtra zgomotul mecanic (contact bounce) fără a folosi funcții blocante precum delay(), se utilizează un algoritm de debouncing bazat pe Timere.

Hardware Design

Bill of Materials

Nr. crt. Nume componentă Specificații Cantitate
1 Arduino Uno Placă de dezvoltare bazată pe microcontroller-ul ATmega328p 1
2 Modul ecran LCD Modul LCD de 1.44'' cu SPI și Controller ST7735 (128×128 px) 1
3 Joystick analogic Modul joystick cu 2 potențiometre (axa X, axa Y) 1
4 Buton (Push button) Microîntrerupător tactil 2
5 Breadboard Placă de test 830 de puncte 1
6 Fire de conexiune Set fire Dupont (Male-Male, Male-Female) 1 set
7 Cablu USB Pentru alimentare și programare 1

Descriere componente

Placa Arduino Uno: Aceasta conține microcontroller-ul ATmega328p care gestionează logica jocului, afișajul pe display și citește inputurile date de joystick și butoane.

Ecran LCD: Pe acest ecran va fi afișat jocul “Micro Invaders” prin protocolul SPI.

Joystick: Acesta conține 2 potențiometre care determină poziția navei pe ecran prin maparea valorilor sale la coordonatele X și Y.

Butoane: Folosite pentru a trage cu proiectile către inamici.

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