Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2022:rtilimpea:reaction_game [2022/06/01 17:31]
robert.raucescu [Introducere]
pm:prj2022:rtilimpea:reaction_game [2022/06/01 22:44] (current)
robert.raucescu [Download]
Line 14: Line 14:
  
 <note tip> <note tip>
-O schemă bloc cu toate modulele proiectului vostruatât software cât şi hardware însoţită ​de o descriere a acestora precum şi a modului în care interacţionează.+La inceputul joculuipe ecranul LCD apare textul "​Choose difficulty",​ iar programul asteapta alegerea uneia din cele 3 dificultati (easy, mid si hard) prin intermediul USART. Odata aleasa o dificultate,​ led-urile se aprind ​de 3 ori semnaland inceputul jocului. Pe rand, cate un led se aprinde pentru ​durata de timp aleasa prin intermediul dificultatii,​ iar jucatorul trebuie sa apese butonul corespunzator led-ului aprins. Daca acesta reuseste in timpul alocat, primeste un punct iar led-ul se stinge.
  
-Exemplu de schemă bloc: http://www.robs-projects.com/​mp3proj/​newplayer.html+La finalul jocului, se va afisa pe LCD scorul acumulat.
 </​note>​ </​note>​
  
 +Schema bloc:
 +
 +{{ :​pm:​prj2022:​rtilimpea:​unknown.png?​nolink&​800 |}}
 ===== Hardware Design ===== ===== Hardware Design =====
 +Schema Tinkercad:
  
-<note tip> +{{ :pm:prj2022:​rtilimpea:​schema_tinker_raucescu.png?​nolink&​800 |}}
-Aici puneţi tot ce ţine de hardware design: +
-  * listă de piese +
-  * scheme electrice (se pot lua şi de pe Internet şi din datasheet-uri,​ e.g. http://​www.captain.at/​electronic-atmega16-mmc-schematic.png+
-  * diagrame de semnal  +
-  * rezultatele simulării +
-</​note>​+
  
 +^ Nume piesa      ^ Numar       ^
 +| Arduino Uno    | 1     |
 +| Ecran LCD 1602 IIC/​I2C ​   | 1    |
 +| Breadboard 830 puncte ​   | 1     |
 +| Buton rotund | 4 |
 +| LED | 4 |
 +| Rezistenta 220Ω | 4 |
 +| Rezistenta 10kΩ | 1 |
 +| Fire Tata-Tata | 10 |
 +| Fire Tata-Mama | 4 |
 ===== Software Design ===== ===== Software Design =====
  
  
 <note tip> <note tip>
-Descrierea codului aplicaţiei (firmware):​ +Mediu de dezvoltare: Arduino IDE 
-  * mediu de dezvoltare ​(if any) (e.g. AVR Studio, CodeVisionAVR) + 
-  * librării şi surse 3rd-party (e.g. Procyon AVRlib) +Biblioteci utilizate: 
-  * algoritmi şi structuri pe care plănuiţi să le implementaţi +  * <​LiquidCrystal_I2C>​ 
-  * (etapa 3) surse şi funcţii implementate+  * <​Wire>​
 </​note>​ </​note>​
 +
 +La inceputul jocului se asteapta alegerea dificultatii prin intermediul Serial Monitor-ului,​ iar in functie de dificultatea aleasa se seteaza viteza si durata jocului. Apoi se ruleaza o rutina de inceput unde pe LCD se afiseaza un mesaj de start si un countdown, iar led-urile lumineaza intermitent. Pe durata jocului se va aprinde cate un led random, iar jucatorul trebuie sa apese butonul corespunzator led-ului aprins. La final se afiseaza scorul obtinut si jocul se termina.
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
Line 47: Line 57:
  
 ===== Concluzii ===== ===== Concluzii =====
 +In final, am reusit sa creez un joc simplu si simpatic care iti testeaza viteaza de reactie intr-un mod interesant. Acest lucru a fost posibil datorita laboratoarelor in care am lucrat cu fiecare piesa folosita in acest proiect, lucru ce a fost de mare ajutor in realizarea lui.
  
 +Consider ca se pot aduce imbunatatiri substantiale proiectului cum ar fi adaugarea unei carcase care sa separe butoanele de restul circuitelor pentru un acces mai simplu si utilizarea unor led-uri mai mari pentru a fi mai estetic. De asemenea firele ar putea fi lipite de breadboard pentru a nu incurca jucatorul.
 ===== Download ===== ===== Download =====
  
-<​note ​warning+<​note>​ 
-O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectuluisurse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).+Arhiva ce contine fisierul sursa: 
 + 
 +{{:​pm:​prj2022:​rtilimpea:​reaction_game.rar|}} 
 + 
 +Biblioteci necesare pentru rulare: 
 +  * <​LiquidCrystal_I2C>​
  
-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**. 
 </​note>​ </​note>​
  
Line 65: Line 81:
  
 <​note>​ <​note>​
-Listă cu documente, datasheet-uri,​ resurse Internet folosite, eventual grupate pe **Resurse Software** ​şi **Resurse Hardware**.+Datasheets:​ 
 +  ​[[http://​www.handsontec.com/​dataspecs/​module/​I2C_1602_LCD.pdf|LCD I2C 1602A 16x2]] 
 +  ​[[https://​ocw.cs.pub.ro/​courses/​_media/​pm/​doc8272.pdf|ATmega328p]] 
 + 
 +Resurse Software
 +  ​[[https://​ocw.cs.pub.ro/​courses/​pm/​lab/​lab1-2022|Laborator 1 - USART]] 
 +  ​[[https://​ocw.cs.pub.ro/​courses/​pm/​lab/​lab2|Laborator 2 - Intreruperi]] 
 +  ​[[https://​ocw.cs.pub.ro/​courses/​pm/​lab/​lab6-2022|Laborator 6 - I2C]] 
 +  ​[[https://​www.arduinolibraries.info/​authors/​marcoschwartz|Biblioteca LiquidCrystal_I2C]] 
 </​note>​ </​note>​
  
 <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​ <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
  
pm/prj2022/rtilimpea/reaction_game.1654093882.txt.gz · Last modified: 2022/06/01 17:31 by robert.raucescu
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