почему не работает?
- Войдите на сайт для отправки комментариев
Втр, 29/11/2016 - 22:30
при создании машинки которая сама объезжает препятствие, был написан код.
После загрузки, расстояние определяется, а машинка не ездит
вот код:
//Драйвер моторов
const int PIN_IN1 = 5;//OUTPUT
const int PIN_IN2 = 4;//OUTPUT
const int PIN_IN3 = 3;//OUTPUT
const int PIN_IN4 = 2;//OUTPUT
int echoPin = 7;
int trigPin = 8;
void setup() {
Serial.begin (9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
//Драйвер моторов
pinMode(PIN_IN1, OUTPUT);
pinMode(PIN_IN2, OUTPUT);
pinMode(PIN_IN3, OUTPUT);
pinMode(PIN_IN4, OUTPUT);
Serial.println("Setup Motors");
}
void loop() {
int duration, cm;
digitalWrite(trigPin, LOW);
delayMicroseconds(3);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
cm = duration / 58;
Serial.print(cm);
Serial.println(" cm");
delay(100);
if ( cm <= 100 ) {
digitalWrite(PIN_IN1, LOW);
digitalWrite(PIN_IN2, HIGH);
digitalWrite(PIN_IN3, LOW);
digitalWrite(PIN_IN4, HIGH);
}
else {
digitalWrite(PIN_IN1, HIGH);
digitalWrite(PIN_IN2, LOW);
digitalWrite(PIN_IN3, HIGH);
digitalWrite(PIN_IN4, LOW);
}
}
Опубликуйте код как положено.
при создании машинки которая сама объезжает препятствие, был написан код.
После загрузки, расстояние определяется, а машинка не ездит
Принято к сведению. Когда у Вас появтся вопросы, не стесняйтесь их задавать.
//Драйвер моторов const int PIN_IN1 = 5;//OUTPUT const int PIN_IN2 = 4;//OUTPUT const int PIN_IN3 = 3;//OUTPUT const int PIN_IN4 = 2;//OUTPUT int echoPin = 7; int trigPin = 8; void setup() { Serial.begin (9600); pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); //Драйвер моторов pinMode(PIN_IN1, OUTPUT); pinMode(PIN_IN2, OUTPUT); pinMode(PIN_IN3, OUTPUT); pinMode(PIN_IN4, OUTPUT); Serial.println("Setup Motors"); } void loop() { int duration, cm; digitalWrite(trigPin, LOW); delayMicroseconds(3); digitalWrite(trigPin, HIGH); delayMicroseconds(10); digitalWrite(trigPin, LOW); duration = pulseIn(echoPin, HIGH); cm = duration / 58; Serial.print(cm); Serial.println(" cm"); delay(100); if ( cm <= 100 ) { digitalWrite(PIN_IN1, LOW); digitalWrite(PIN_IN2, HIGH); digitalWrite(PIN_IN3, LOW); digitalWrite(PIN_IN4, HIGH); } else { digitalWrite(PIN_IN1, HIGH); digitalWrite(PIN_IN2, LOW); digitalWrite(PIN_IN3, HIGH); digitalWrite(PIN_IN4, LOW); } }