Differences

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

Link to this comparison view

pm:prj2024:vstoica:valentin.ionescu02 [2024/05/22 12:47]
valentin.ionescu02 [Bibliografie/Resurse]
pm:prj2024:vstoica:valentin.ionescu02 [2024/05/26 21:10] (current)
valentin.ionescu02 [Download]
Line 109: Line 109:
 **Funcția setup** este utilizată pentru a inițializa hardware-ul și setările necesare. **Funcția setup** este utilizată pentru a inițializa hardware-ul și setările necesare.
 <note tip> <note tip>
-  ​void setup() { + void setup() { 
-   ​Serial.begin(9600);​  +  Serial.begin(9600);​ 
-   pinMode(in1, OUTPUT)+  DDRD |= (1 << ​in1) (1 << ​in2) (1 << ​in3) (1 << ​in4); 
-   ​pinMode(in2, OUTPUT)+  DDRB |= (1 << ​ena) (1 << ​enb) | (1 << led); 
-   ​pinMode(in3, OUTPUT)+  PORTB |= (1 << ​led); 
-   ​pinMode(in4, OUTPUT); +  analogWrite(ena,​ 0); 
-   pinMode(ena, OUTPUT)+  analogWrite(enb,​ 0); 
-   ​pinMode(enb, OUTPUT); + 
-   pinMode(led,OUTPUT); +  lcd.init();​ 
-   ​analogWrite(ena,​ 0); +  lcd.backlight();​ 
-   ​analogWrite(enb,​ 0); +  lcd.setCursor(1,​ 0); 
-   //​Inițializarea ecranului LCD +  lcd.print("​SPEED IS 0"); 
-   ​lcd.init();​ +} 
-   ​lcd.backlight();​ + 
-   ​lcd.setCursor(1,​ 0); +
-   ​lcd.print("​SPEED IS 0"); +
-  +
 </​note>​ </​note>​
   * Inițializare comunicarea serială (Serial.begin(9600)) ​   * Inițializare comunicarea serială (Serial.begin(9600)) ​
Line 170: Line 167:
     else if (value == '​M'​ || value == '​N'​)     else if (value == '​M'​ || value == '​N'​)
     {     {
-        ​digitalWrite(led, LOW);+        ​PORTB &= ~(1 << ​led);
     }     }
      else if (value == '​m'​ || value == '​n'​)      else if (value == '​m'​ || value == '​n'​)
     {     {
-        ​digitalWrite(led,HIGH ); +        ​PORTB |= (1 << ​led); 
-    } +    } 
 +    ​
   }   }
 +}
 </​note>​ </​note>​
 Funcțiile **“Forward()“,​“BACK()“ ,​“LEFT()“,​ “RIGHT()“ și “STOP()“** sunt responsabile de controlul mișcării masinii. Funcțiile **“Forward()“,​“BACK()“ ,​“LEFT()“,​ “RIGHT()“ și “STOP()“** sunt responsabile de controlul mișcării masinii.
 <note tip> <note tip>
 void Forward() { void Forward() {
-  ​digitalWrite(in1, HIGH)+  ​PORTD |= (1 << ​in1) (1 << in3); 
-  digitalWrite(in2, LOW); +  ​PORTD &= ~((1 << in2(1 << ​in4));
-  ​digitalWrite(in3, HIGH)+
-  digitalWrite(in4, LOW);+
 } }
  
 void Back() { void Back() {
-  ​digitalWrite(in1, LOW)+  ​PORTD |= (1 << in2(1 << in4); 
-  digitalWrite(in2, HIGH); +  ​PORTD &= ~((1 << in1) | (1 << ​in3));
-  ​digitalWrite(in3, LOW)+
-  digitalWrite(in4,​ HIGH);+
 } }
  
 void Left() { void Left() {
-  ​digitalWrite(in1, HIGH); +  ​PORTD |= (1 << ​in1) | (1 << in4); 
-  ​digitalWrite(in2, LOW)+  ​PORTD &= ~((1 << ​in2) (1 << ​in3));
-  digitalWrite(in3, LOW)+
-  digitalWrite(in4,​ HIGH);+
 } }
  
 void Right() { void Right() {
-  ​digitalWrite(in1,​ LOW); +  ​PORTD |= (1 << ​in2) (1 << ​in3); 
-  digitalWrite(in2, HIGH)+  ​PORTD &= ~((1 << in1) | (1 << ​in4));
-  digitalWrite(in3, HIGH); +
-  ​digitalWrite(in4, LOW);+
 } }
 +
 void Stop() { void Stop() {
-  ​digitalWrite(in1, LOW)+  ​PORTD &= ~((1 << ​in1) (1 << ​in2) (1 << ​in3) (1 << ​in4));
-  digitalWrite(in2, LOW)+
-  digitalWrite(in3, LOW)+
-  digitalWrite(in4, LOW);+
 } }
 +
 </​note>​ </​note>​
  
Line 219: Line 209:
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
-<note tip> +https://​drive.google.com/​file/​d/​1ADtn8xu3hT9tyJ2f52uw-6Ngnt1La_3Z/view?​usp=drive_link
-Care au fost rezultatele obţinute în urma realizării proiectului vostru. +
-</note> +
 ===== Concluzii ===== ===== Concluzii =====
  
 Finalizarea acestui proiect a fost o experiență extrem de satisfăcătoare,​ oferindu-mi ocazia de a integra și aplica cunoștințele de hardware și software într-un mod creativ și util. Proiectarea și construirea unei mașini de jucărie controlate prin Bluetooth, echipată cu LED-uri pentru faruri și stopuri, și cu o elice pentru tăiatul ierbii, mi-au permis să explorez numeroase aspecte ale ingineriei și programării. Afișarea vitezei pe un ecran LCD a adăugat un plus de interactivitate și funcționalitate proiectului. Acest proiect nu doar că mi-a îmbogățit abilitățile tehnice, dar mi-a și stimulat dorința de a lucra la proiecte similare în viitor. Finalizarea acestui proiect a fost o experiență extrem de satisfăcătoare,​ oferindu-mi ocazia de a integra și aplica cunoștințele de hardware și software într-un mod creativ și util. Proiectarea și construirea unei mașini de jucărie controlate prin Bluetooth, echipată cu LED-uri pentru faruri și stopuri, și cu o elice pentru tăiatul ierbii, mi-au permis să explorez numeroase aspecte ale ingineriei și programării. Afișarea vitezei pe un ecran LCD a adăugat un plus de interactivitate și funcționalitate proiectului. Acest proiect nu doar că mi-a îmbogățit abilitățile tehnice, dar mi-a și stimulat dorința de a lucra la proiecte similare în viitor.
 ===== Download ===== ===== Download =====
- +{{:pm:prj2024:vstoica:proiect_pm.zip|}}
-<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ă ;-). +
- +
-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>​ +
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
pm/prj2024/vstoica/valentin.ionescu02.1716371224.txt.gz · Last modified: 2024/05/22 12:47 by valentin.ionescu02
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