Differences

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

Link to this comparison view

pm:prj2023:adarmaz:utictactoe [2023/05/26 16:26]
mihai_cosmin.rosu
pm:prj2023:adarmaz:utictactoe [2023/05/27 18:17] (current)
mihai_cosmin.rosu
Line 1: Line 1:
 ====== Ultimate Tic-Tac-Toe - Roșu Mihai Cosmin - 333CA ====== ====== Ultimate Tic-Tac-Toe - Roșu Mihai Cosmin - 333CA ======
 +
 +===== Demo =====
 +
 +<​html>​
 +  <​iframe ​
 +    src="​https://​www.youtube.com/​embed/​XRYpv7-YvOo" ​
 +    title="​YouTube video player" ​
 +    frameborder="​0" ​
 +    allow="​accelerometer;​ autoplay; clipboard-write;​ encrypted-media;​ gyroscope; picture-in-picture;​ web-share" ​
 +    allowfullscreen
 +    style="​aspect-ratio:​ 16/9; width: 100%;"
 +  ></​iframe>​
 +</​html>​
  
 ===== Introducere ===== ===== Introducere =====
Line 57: Line 70:
   * Pentru dezvoltarea proiectului am folosit **Arduino IDE**, în cadrul căruia am importat următoarele biblioteci:   * Pentru dezvoltarea proiectului am folosit **Arduino IDE**, în cadrul căruia am importat următoarele biblioteci:
     - **Adafruit GFX**, bibliotecă ce se poate importa direct din IDE, necesară pentru a desena/​scrie pe ecran     - **Adafruit GFX**, bibliotecă ce se poate importa direct din IDE, necesară pentru a desena/​scrie pe ecran
-    - **Arduino ST7789 Fast**, bibliotecă externă, folosită pentru a comunica cu ecranul prin **SPI**, folosește **Adafruit GFX**+    - **Arduino ST7789 Fast**, bibliotecă externă, folosită pentru a comunica cu ecranul prin **SPI**, folosește **Adafruit GFX** și **SPI.h**
   * În cadrul implementării am folosit și operații cu registre pentru:   * În cadrul implementării am folosit și operații cu registre pentru:
     - **ADC**: Am ales să configurez și să folosesc ADC astfel, fiindcă am avut nevoie să controlez prescalerul folosit de acesta. Acest lucru era necesar fiindcă pentru o citire de ADC, de fapt au loc 100 de citiri, pentru a reduce noise-ul.     - **ADC**: Am ales să configurez și să folosesc ADC astfel, fiindcă am avut nevoie să controlez prescalerul folosit de acesta. Acest lucru era necesar fiindcă pentru o citire de ADC, de fapt au loc 100 de citiri, pentru a reduce noise-ul.
     - **PWM**: Pentru a trimite un semnal PWM buzzer-ului,​ am ales să folosesc registre pentru a configura **Timer1** în modul **FastPWM**. De asemenea, pentru a determina când trebuie oprit semnalul PWM, folosesc întreruperea de overflow a timer-ului.     - **PWM**: Pentru a trimite un semnal PWM buzzer-ului,​ am ales să folosesc registre pentru a configura **Timer1** în modul **FastPWM**. De asemenea, pentru a determina când trebuie oprit semnalul PWM, folosesc întreruperea de overflow a timer-ului.
-    - **Întreruperi**:​ Pentru întreruperile externe **INT0**, **INT1** și **TIMER1_OVF**.+    - **Întreruperi**:​ Pentru întreruperile externe **INT0**, **INT1** și întreruperea de timer **TIMER1_OVF**.
  
 ==== Implementare generală ==== ==== Implementare generală ====
Line 133: Line 146:
  
 ===== Download ===== ===== Download =====
-<note important>​important</​note>​+<note important>​**Codul sursă, biblioteca Arduino_ST7789_Fast,​ schemele și imaginile din această documentație pot fi găsite în următoarea arhivă: {{:​pm:​prj2023:​adarmaz:​pm_rosu_mihai_cosmin_333ca_2023.zip|}}.** 
 + 
 +**De asemenea, proiectul poate fi găsit și pe GitHub: [[https://​github.com/​mehigh8/​UltimateTicTacToePM|Ultimate Tic-Tac-Toe]]**</​note>​ 
 + 
 +===== Bibliografie/​Resurse ===== 
 + 
 +==== Resurse documentație ==== 
 +  * [[https://​miro.com/​index/​|Tool folosit la realizarea schemei bloc]] 
 +  * [[https://​fritzing.org/​|Tool folosit la realizarea schemei circuitului]] 
 + 
 +==== Resurse hardware și software ==== 
 +  * [[https://​ocw.cs.pub.ro/​courses/​_media/​pm/​atmel-7810-automotive-microcontrollers-atmega328p_datasheet.pdf|Documentație ATMega328P]] 
 +  * [[https://​docs.arduino.cc/​built-in-examples/​digital/​Button|Tutorial conectare buton Arduino]] 
 +  * [[https://​www.youtube.com/​watch?​v=-nECx4DOE84|Tutorial folosire ecran ST7789]] 
 +  * [[https://​docs.arduino.cc/​tutorials/​generic/​secrets-of-arduino-pwm|Tutorial PWM cu registre]] 
 +  * [[https://​github.com/​cbm80amiga/​Arduino_ST7789_Fast|Biblioteca Arduino_ST7789_Fast]] 
 +  * [[pp:​22:​teme:​prolog-ultimate-ttt|Sursă inspirație pentru prioritățile folosite în modul Singleplayer]] 
  
 <​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/prj2023/adarmaz/utictactoe.1685107569.txt.gz · Last modified: 2023/05/26 16:26 by mihai_cosmin.rosu
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