Differences

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

Link to this comparison view

pm:prj2023:fstancu:georgina [2023/05/29 17:24]
georgina.poting
pm:prj2023:fstancu:georgina [2023/05/29 23:40] (current)
georgina.poting [Software Design]
Line 58: Line 58:
 ===== Software Design ===== ===== Software Design =====
  
 +Dezvoltarea codului am realizat-o in Arduino IDE (care ar putea fi mult mai imbunatatit)
 +
 +Pe partea de software am folosit bibliotecile:​
 +  - LiquidCrystal_I2c.h
 +  - Servo.h
 +  - Wire.h
 +
 +Pentru generarea categoriilor am creat un array bidimensional numit categories[][],​ in care primul element e marimea sirului de caractere.
 +
 +Pentru fiecare categorie am creat alte tabele, urmand exemplul celui de mai sus.
 +
 +Am setat ca pini de input butoanele, iar ca output Servomotorul si LCD-ul.
 +
 +Deoarece am avut nevoie de mai multe generari de numere random, am cautat o metoda de a crea aceste numere cu un seed de asemenea random: conectand la pinul analog A0 un fir lasat in aer -> iar valoarea aceasta sa fie folosita pentru randomSeed().
 +
 +Functia randomFunction() ia ca parametru un int de la 1 la 3 (pentru cele 3 cazuri de butoane) si in cadrul switchului returneaza valori pentru toate butoanele. De exemplu: daca vreau sa se invarta servomotorul pentru un timp random (de la 1 la 3 secunde), functia returneaza un numar de la 1 la 5. Daca apas butonul de generare de categorii -> se returneaza un numar de la 1 la 5.
 +
 +Aceste rezultate sunt ulterior tratate in loop pentru delay-ul servomotorului si indexul intrebarilor.
 +
 +Pentru afisarea intrebarilor a trebuit sa mai fac o functie, [b]chooseQuestion(int category, int questionIndex)[/​b],​ care leaga practic indexul categoriei cu categoria de intrebari in sine si printeaza la LCD intrebarea.
 +
 +In afara de fuctionarea principala, am adaugat niste tonuri (la fel, random) in loop. Sunetul porneste la un interval intre 1 si 3 minute: semnal pentru jucatori sa dea un shot :)
 +
 +Functiile folosite in cod:
 ===== Rezultate obtinute ====== ===== Rezultate obtinute ======
 === Cutia interioara =) === === Cutia interioara =) ===
Line 85: Line 109:
  
 ===== Download ===== ===== Download =====
 +<​note>​
 +Codul cutiei magice: {{:​pm:​prj2023:​fstancu:​codginapmzip.zip|}}
 +PDF: <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
 +</​note>​
 +
  
-{{:​pm:​prj2023:​fstancu:​codginapmzip.zip|}} 
  
  
-<​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​ 
  
  
pm/prj2023/fstancu/georgina.1685370297.txt.gz · Last modified: 2023/05/29 17:24 by georgina.poting
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