Differences

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

Link to this comparison view

pm:prj2024:avaduva:andi_mihai.ciupitu [2024/05/27 03:54]
andi_mihai.ciupitu [Hardware Design]
pm:prj2024:avaduva:andi_mihai.ciupitu [2024/05/27 04:21] (current)
andi_mihai.ciupitu [Bibliografie/Resurse]
Line 13: Line 13:
  
 <note tip> <note tip>
-{{:​pm:​prj2024:​avaduva:​hardware_deocamdata.png?​500|}}+{{:​pm:​prj2024:​avaduva:​hardware_deocamdata.png?​600|}}
  
-!POTENTIOMETRELE din schema reprezinta MODULE JOYSTICK! ​ 
  
 +!POTENTIOMETRELE din schema reprezinta MODULE JOYSTICK! ​
 Pini folositi: ​ Pini folositi: ​
  
Line 27: Line 27:
 Conectarea pinilor A4 și A5 la SDA și SCL permite transferul eficient de date între placa Arduino și dispozitivul I2C. Conectarea pinilor A4 și A5 la SDA și SCL permite transferul eficient de date între placa Arduino și dispozitivul I2C.
 </​note>​ </​note>​
-{{:​pm:​prj2024:​avaduva:​poza_idk2.jpg?​200|}}+
 ===== Hardware Design ===== ===== Hardware Design =====
  
Line 41: Line 41:
 Stadiul actual al implementarii hardware: Stadiul actual al implementarii hardware:
  
-{{:​pm:​prj2024:​avaduva:​poza_idk2.jpg?​200|}}+{{:​pm:​prj2024:​avaduva:​poza_idk2.jpg?​700|}}
 ===== Software Design ===== ===== Software Design =====
  
 <note tip> <note tip>
  
- ​Librării şi surse 3rd-party:+ **Librării şi surse 3rd-party**:
  
  #​include <​Wire.h>​ este utilizată pentru a configura și gestiona comunicația I2C pe Arduino.  #​include <​Wire.h>​ este utilizată pentru a configura și gestiona comunicația I2C pe Arduino.
Line 54: Line 54:
  #​include <​Adafruit_SSD1306.h>​ este utilizată pentru a gestiona direct afișajul OLED SSD1306. Aceasta se bazează pe Adafruit_GFX.h pentru a oferi funcții grafice, dar adaugă funcționalități specifice pentru controlul afișajului OLED.  #​include <​Adafruit_SSD1306.h>​ este utilizată pentru a gestiona direct afișajul OLED SSD1306. Aceasta se bazează pe Adafruit_GFX.h pentru a oferi funcții grafice, dar adaugă funcționalități specifice pentru controlul afișajului OLED.
  
-  ​algoritmi şi structuri ​pe care plănuiţi să le implementaţi +**Laboratoare utilizate** 
-  ​(etapa 3surse şi funcţii implementate+  - [[pm:​lab:​lab3-2023-2024|]] Functia tone() utilizează PWM pentru a genera un semnal audio pe pinul specificat (BEEPER). Utilizarea funcției millis() este o metodă comună pentru temporizare. 
 +  ​- [[pm:​lab:​lab4-2023-2024|]] Am folosit analogRead() pentru monitorizarea pozitiilor paletelor prin joystickuri,​ aceasta functie utilizeaza ADC pentru a converti tensiunea analogică de pe pinii analogici în valori digitale. 
 +  - [[pm:​lab:​lab6-2023-2024|]] protocolul I2C (Inter-Integrated Circuit) a fost folosit pentru a comunica cu ecranul OLED (Adafruit_SSD1306) conectat.
 </​note>​ </​note>​
 ======Algoritmi si functii implementate====== ======Algoritmi si functii implementate======
Line 265: Line 267:
 <note tip> <note tip>
 Care au fost rezultatele obţinute în urma realizării proiectului vostru. Care au fost rezultatele obţinute în urma realizării proiectului vostru.
 +  - **Funcționalitate completă a jocului**: Proiectul finalizează implementarea unui joc de ping-pong pe un afișaj OLED controlat de un microcontroller Arduino. Jucătorii pot controla paletele, mingea se mișcă și colisionează corect cu marginile și paletele, iar scorul este actualizat și afișat corect.
 +  - **Interacțiune cu utilizatorul**:​ Joystickurile permit controlul efectiv al paletelor de către jucători. Sunetele emise la coliziuni și puncte adaugă un nivel de feedback auditiv.
 +  - **Afișaj clar și precis**: Folosirea bibliotecilor Adafruit pentru grafica OLED asigură un afișaj clar și precis al jocului, inclusiv grafică simplă pentru teren, palete, minge și scor.
 </​note>​ </​note>​
  
 ===== Concluzii ===== ===== Concluzii =====
 +Proiectul implică conectarea și utilizarea diferitelor componente hardware, inclusiv afișaj OLED, joysticks și un buzzer. Aceasta oferă o înțelegere practică a modulului de funcționare și interfațare a acestor componente.
  
 +Proiectul a rezultat joc simplu dar captivant, care poate fi jucat de două persoane, oferind ore de distracție.
 ===== Download ===== ===== Download =====
  
 <note warning> <note warning>
-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ă ;-). +{{:pm:prj2024:avaduva:ciupitu_andi_mihai_331cd.zip|}}
- +
-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 285: Line 290:
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
-<​note>​ +
-Listă cu documente, datasheet-uri,​ resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. +
-</​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/prj2024/avaduva/andi_mihai.ciupitu.1716771252.txt.gz · Last modified: 2024/05/27 03:54 by andi_mihai.ciupitu
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