Códigos para motores DC
Código con funcións para manexar dous motores sen control de velocidade:
//defino os pines do Arduino que controlan o motor
int motEsqA=6;
int motEsqB=7;
int motDerA=8;
int motDerB=9;
// inicio os pines como saídas
void setup(){
pinMode(motEsqA,OUTPUT);
pinMode(motEsqB,OUTPUT);
pinMode(motDerA,OUTPUT);
pinMode(motDerB,OUTPUT);
}
void loop(){
//no codigo, chamo as funcions que defino mais abaixo
adiante();
delay(3000);
atras();
delay(3000);
xiraE();
delay(3000);
xiraD();
delay(3000);
para();
delay(3000);
}
//nestas funcions, emprego a loxica das pontes H que xa vimos no apartado anterior
void adiante(){
digitalWrite(motEsqA,LOW);
digitalWrite(motEsqB,HIGH);
digitalWrite(motDerA,LOW);
digitalWrite(motDerB,HIGH);
}
void atras(){
digitalWrite(motEsqA,HIGH);
digitalWrite(motEsqB,LOW);
digitalWrite(motDerA,HIGH);
digitalWrite(motDerB,LOW);
}
void xiraE(){
digitalWrite(motEsqA,HIGH);
digitalWrite(motEsqB,LOW);
digitalWrite(motDerA,HIGH);
digitalWrite(motDerB,LOW);
}
void xiraD(){
digitalWrite(motEsqA,LOW);
digitalWrite(motEsqB,HIGH);
digitalWrite(motDerA,LOW);
digitalWrite(motDerB,HIGH);
}
void para(){
digitalWrite(motEsqA,LOW);
digitalWrite(motEsqB,LOW);
digitalWrite(motDerA,LOW);
digitalWrite(motDerB,LOW);
}