Untitled
unknown
plain_text
3 years ago
2.6 kB
9
Indexable
#define IN1 4 #define IN2 5 #define IN3 6 #define IN4 7 #define EN_A 10 #define EN_B 9 int velocidade = 150; int atraso = 10; void parar(){ Serial.println("PARAR"); digitalWrite(IN1, HIGH); digitalWrite(IN2, HIGH); digitalWrite(IN3, HIGH); digitalWrite(IN4, HIGH); } void frente(){ parar(); digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW); analogWrite(EN_A, velocidade); analogWrite(EN_B, velocidade); } void atras(){ parar(); digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH); analogWrite(EN_A, velocidade); analogWrite(EN_B, velocidade); } void direita(){ parar(); digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); analogWrite(EN_A, velocidade); } void esquerda(){ parar(); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW); analogWrite(EN_B, velocidade); } void atras_direita(){ parar(); digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); analogWrite(EN_A, velocidade); } void atras_esquerda(){ parar(); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH); analogWrite(EN_B, velocidade); } void aumenta_velocidade(){ velocidade = 250; } void diminui_velocidade(){ velocidade = 140; } void setup() { pinMode(IN1, OUTPUT); pinMode(IN2, OUTPUT); pinMode(IN3, OUTPUT); pinMode(IN4, OUTPUT); pinMode(EN_A, OUTPUT); pinMode(EN_B, OUTPUT); Serial.begin(9600); } void loop() { if(Serial.available()){ char x = Serial.read(); Serial.println(x); switch(x){ case 'F': frente(); delay(atraso); break; case 'B': atras(); delay(atraso); break; case 'R': direita(); delay(atraso); break; case 'L': esquerda(); delay(atraso); break; case 'G': esquerda(); frente(); delay(atraso); break; case 'I': direita(); frente(); delay(atraso); break; case 'H': atras_esquerda(); atras(); delay(atraso); break; case 'J': atras_direita(); atras(); delay(atraso); break; case 'X': aumenta_velocidade(); break; case 'x': diminui_velocidade(); break; case 'S': parar(); break; default: parar(); break; } } }
Editor is loading...