Цитата:
Сообщение от Admin
Для обьединения скетчей нужно добавить функции управления моторами
|
а эти объявления функций в библиотеку добавить? я пробовал на типе этого, вот:
PHP код:
#include <AFMotor.h> // Подключаем библиотеку для управления двигателями
AF_DCMotor motor1(1); //создаем мотор №1
AF_DCMotor motor2(2); //создаем мотор №2
AF_DCMotor motor3(3); //создаем мотор №1
AF_DCMotor motor4(4); //создаем мотор №2
int led = 53; //встроенный светодиод (Будет мигать как только Ардуино получит данные с роутера)
int incomingByte = 0; //в этой переменной храним поступившие данные
int speedgo = 0; //переменная для хранения скорости движения
void setup()
{
Serial.begin(9600); //включаем передачу данных на скорости 9600 бит/c
pinMode(led, OUTPUT); //указываем выход на пин 13 (Светодиод, индикатор данных)
motor1.setSpeed(255); //Скорость движка №1
motor2.setSpeed(255); //Скорость движка №2
motor3.setSpeed(255); //Скорость движка №1
motor4.setSpeed(255); //Скорость движка №2
}
void loop()
{
if(Serial.available() > 0)
{
digitalWrite(led, HIGH); //Зажигаем встроенный светодиод
incomingByte = Serial.read();
switch(incomingByte){
case 'w':{
motor1.run(FORWARD); //движемся вперед
motor2.run(FORWARD); //движемся вперед
motor3.run(FORWARD); //движемся вперед
motor4.run(FORWARD); //движемся вперед
break;
}
case 'a':{
motor2.run(FORWARD); //Повернем влево
motor3.run(FORWARD); //Повернем влево
motor1.run(BACKWARD); //Останавливаем колеса
motor4.run(BACKWARD); //Останавливаем колеса
delay(250); //Включаем на 250 милисек
break;
}
case 's':{
motor1.run(BACKWARD); //движемся вперед
motor2.run(BACKWARD); //движемся вперед
motor3.run(BACKWARD); //движемся вперед
motor4.run(BACKWARD); //движемся вперед
break;
}
case 'd':{
motor1.run(FORWARD); //Повернем вправо
motor4.run(FORWARD); //Повернем вправо
motor2.run(BACKWARD); //Останавливаем колеса
motor3.run(BACKWARD); //Останавливаем колеса
break;
}
case 'x':{
motor1.run(RELEASE);
motor2.run(RELEASE);
motor3.run(RELEASE);
motor4.run(RELEASE);
break;
}
}
digitalWrite(led, LOW); //Зажигаем встроенный светодиод
}
}
по сути то же самое, что и в вашем коде, только вместо вызова функций сразу код выполнения) мне бы именно с Dx_high, Dx_low чтобы работал)