Дистанционное управление

Тема в разделе "Проводная и беспроводная связь", создана пользователем Rolf, 19 июн 2018.

  1. Airbus

    Airbus Оракул

    И приёмник Код как код ничего особенного работа с массивами.
    Код (C++):
    //левый мотор
    int IN2 = 8;
    int IN1 = 7;
    int EN1 = 6;

    //правый мотор
    int IN4 = 4;
    int EN2 = 3;
    int IN3 = 2;

    byte Byte3incoming[3] = {0,0,0};    //массив входящих 3-х байт

    void setup() {
    // инициализация обмена данными по серийному протоколу со скоростью 9600 bps:
    Serial.begin(9600);

    pinMode(EN1,OUTPUT);
    pinMode(IN1,OUTPUT);
    pinMode(IN2,OUTPUT);
    pinMode(EN2,OUTPUT);
    pinMode(IN3,OUTPUT);
    pinMode(IN4,OUTPUT);

    }
    void loop() {

    //читаем пришедший пакет
    Serial.readBytes(Byte3incoming, 3);

    digitalWrite (IN1,bitRead(Byte3incoming[0],0));
    digitalWrite (IN2,bitRead(Byte3incoming[0],1));
    digitalWrite (IN3,bitRead(Byte3incoming[0],2));
    digitalWrite (IN4,bitRead(Byte3incoming[0],3));
    analogWrite  (EN1,Byte3incoming[1]);
    analogWrite  (EN2,Byte3incoming[2]);

    }
     
  2. Airbus

    Airbus Оракул

    ИМХО у Вас ошибка где то в подключениях
     
  3. Rolf

    Rolf Нуб

    Спасибо экстрасенсу!)))
    Но это похоже на скетч, что прилагался под видео. Он у меня есть и именно его я заливал в ардуинку. При беглом просмотре вроде как всё одинаково. Да... Я знаю, что подключение по RX TX перекрёстное. Потенциометр как и положено на передатчике на аналоговый вход и "+" "-". Драйвер мотора тоже как положено. Там глупо ошибиться. Всего 3 провода. Ну ещё питание на драйвер. Перепроверял. Теперь только через неделю попробую. Я уже за городом. Но по Вашему совету сперва подключу ардуинки на прямую TX RX.
    Спасибо за советы! Через неделю отпишусь.
     
    Последнее редактирование: 22 июн 2018