Вопрос по 19 эксперименту

Тема в разделе "Arduino & Shields", создана пользователем angabanga, 24 дек 2015.

  1. angabanga

    angabanga Нерд

    ребят помогите. не могу ввести числа через сериал порт. ардуино тупо не реагирует. программу написал всю чисто как на сайте
     
  2. AlexU

    AlexU Гуру

    Что за программу на ПК используете для отправки данных через последовательный порт в Arduino?
     
  3. angabanga

    angabanga Нерд

    контрл шифт м нажимаю выходит окно . в нем же я получал данные с порта в предидущих эеспериментах
     
  4. AlexU

    AlexU Гуру

    Догадываюсь, что используете Arduino IDE (если, так, то наверно вряд ли буду полезен)...
    На всякий случай:
    После ввода чисел Enter жмёте? Т.е. вводите 200 и нажимаете Enter.
    Посмотрите настройки Com-порта в IDE, может сбились...
     
  5. angabanga

    angabanga Нерд

    да так и ввожу. ничего не происходит. все настройки в норме
     
  6. angabanga

    angabanga Нерд

    я не знаю что такое ИДЕ. я тупо скачал как на сайте написанно прогу и все. все стандартное у меня
     
  7. Mestniy

    Mestniy Гуру

    Действия по порядку в студию!
    1) Подключил ардуино к USB B.
    2) Захожу в Arduino IDE(Та программа с голубеньким фоном.)
    3) Ввожу такойто код(код в специальном окне)
    и т.д..
     
  8. AlexU

    AlexU Гуру

    Попробуйте отладку добавить:
    Код (C++):

    void loop()
    {
      String dbgMsg; // строка для хранения отладочного сообщения

      // передаваемые с компьютера данные поставляются байт за
      // байтом, в виде отдельных символов (англ. character). Нам
      // нужно последовательно их обрабатывать пока (англ. while)
      // в порту доступны (англ. available) новые данные
      while (Serial.available()) {
        // считываем (англ. read) пришедший символ в переменную
        char incomingChar = Serial.read();

        dbgMsg += incomingChar; // сохраняем принятый символ в строке отладки

        // не стоит путать целые числа и символы. Они соотносятся
        // друг с другом по таблице, называемой кодировкой. Например
        // '0' — это 48, '9' — 57, 'A' — 65, 'B' — 66 и т.п. Символы
        // в программе записываются в одинарных кавычках
        if (incomingChar >= '0' && incomingChar <= '9') {
          // если пришёл символ-цифра, добавляем его к сообщению
          message += incomingChar;
        } else if (incomingChar == '\n') {
          // если пришёл символ новой строки, т.е. enter, переводим
          // накопленное сообщение в целое число (англ. to integer).
          // Так последовательность символов '1', '2', '3' станет
          // числом 123. Результат выводим на светодиод
          analogWrite(LED_PIN, message.toInt());
          // обнуляем накопленное сообщение, чтобы начать всё заново
          message = "";

          Serial.println(dbgMsg);  // Отправляем отладочное сообщение обратно на ПК
          dbgMsg = "";
        }
      }
      // посылайте сообщения-числа с компьютера через Serial Monitor
    }
     
    После нажатия Enter должно вернутся назад число введенное Вами. Если не возвращается, то с портом что-то не то. Если возвращается, то смотрите светодиод и все что с ним связано.
     
  9. angabanga

    angabanga Нерд

    да я зашел в ардуино с голубым фоном подклоючил к юзб. прошил прогой из 19 эксперимента. все прошилось. на плату поставил светодиод с резистором как написано. нажимаю кнтр шифт М вылазиет окно. ввожу в него "123" и нажимаю энтер- ничего не происходит, хотя диод должен гореть
     
  10. angabanga

    angabanga Нерд

    что значит отладка? я написал программу как сказано на сайте\
     
  11. angabanga

    angabanga Нерд

    не вернулось ничего, но ведь в предидущих программах все писалось как надо. данные шли на комп
     
  12. Mestniy

    Mestniy Гуру

    Схему как надо собрали? С резистором?
     
  13. angabanga

    angabanga Нерд

    да все проверял, даже до прошивки от предидущей программы светодиод светился. я даже его менял на другой
     
  14. angabanga

    angabanga Нерд

    дебаговое собщение после нажатия ентер не приходит
     
  15. Mestniy

    Mestniy Гуру

    Ну значит у тебя глюк. Попробуй поменять пин!
     
  16. angabanga

    angabanga Нерд

    я попросил прогу тупо в сетапе вывести сообщение при включении- все вывела
    так дебаговое сообщение не приходит. пин тут не причем. он тупо не видит что я ему что-то ввожу
     
  17. angabanga

    angabanga Нерд

    блин парни. извините меня пожалуйста. только сей час заметил в цикл вайл вставил другую команду с дуру. вместо аваилейбл поставил рид и он тупо завис на цикле не понимая что происходит
     
  18. angabanga

    angabanga Нерд

    вот только одно- числа до сих пор не вводятся. он их не видит и цикл вайл как буд-то проходит мимо
     
  19. angabanga

    angabanga Нерд

    я ввожу но он не читает всеравно и опять же не выводит дебаговое сообщение после ентер
     
  20. AlexU

    AlexU Гуру

    А можно на скриншот программки, с помощью которой числа в порт отправляются?