Documente Academic
Documente Profesional
Documente Cultură
Facultatea de Inginerie
Arduino -
o platformă
pe înțelesul tuturor
4 EEPROM 1K 1K 4K
5 Pini digitali I/O 14 14 54
6 Pini PWM 6 6 14
7 Pini Intrări 8 6 16
Analogice
8 Porturi 1 1 4
Comunicație
11 USB DA DA DA
Arduino Uno – procesor ATMEGA328
Arduino Uno – Pini
Arduino Nano - procesor ATMEGA328P
setup():
este o funcție care este rulată o singură
dată la începutul programului, când se
inițializează setările.
loop():
este o funcție apelată în mod repetat până la
oprirea alimentării cu energie a plăcuței.
Mediul de Programare IDE
https://www.arduino.cc/en/Main/Software
Tipuri de variabile
tip nume = valoare ;
int LED = 7;
https://www.arduino.cc/reference/en/#variables
Tipuri de funcții
Returnează valoarea logică a pinului:
digitalRead(pin)
HIGH (1) respectiv LOW (0)
https://www.arduino.cc/reference/en/#functions
Exemplu de aplicație
Sistem de comandă
cu Arduino NANO
Comada unui motor curent continuu
Curent
+ -
+ +
- -
- + Curent
Releu 1 + - Releu 2
+Vcc
Sens orar
Releu 1 + - Releu 2
Sens antiorar
+Vcc Oprire motor
+ - Releu 2
Releu 1
+Vcc
Releu 1 + - Releu 2
Program aplicație – Definire variabile
int Val_Ref=0;
int Contor=0;
int Sens_H =HIGH; // Definire variabile
int Sens_L =LOW;
Program aplicație – Funcția setup()
void setup()
{
pinMode (CMD_Releu_R, OUTPUT);
pinMode (CMD_Releu_L, OUTPUT);
digitalWrite (CMD_Releu_R, Releu_INV);
digitalWrite (CMD_Releu_L, Releu_INV);
}
Program aplicație – Funcția Loop
void loop()
{
if ( digitalRead(Limitator_R)==0 & digitalRead(Limitator_L)==1 )
{
digitalWrite(CMD_Releu_R,Sens_H);
digitalWrite(CMD_Releu_L, Sens_L);
goto FIN_Tst;
}
FIN_Tst:
Program aplicație – Funcția Loop
if ( Contor>= 10)
{
Val_Ref = analogRead(Int_Referinta);
Val_Ref = map(Val_Ref, 0, 1024, 0, 255);
Contor=0;
}
else
{
delay(10);
Contor = Contor + 1; // Contor++
}
} // void loop()
Încărcare program
Încărcare
program
Vă mulțumesc