Bluetooth HC-05 (Troyka-модуль)

Тема в разделе "Arduino & Shields", создана пользователем kolki, 16 авг 2018.

  1. kolki

    kolki Нерд

    Всем привет!

    Давно купил этот модуль и недавно решил разобраться в нем. Сначала захотел разобраться с включением/выключением модуля, нашел что за это отвечает пин "EN", который на этом Troyka-модуле не разведен. Решил покопаться в AT-командах, может через них можно как-нибудь включать/выключать. Не нашел такую команду, но протестировать AT-команды захотелось. Посмотрел видео от Толика (сотрудника Амперки), где он показывает как перевести модуль в режим AT-команд. Все сделал как там, лампочка начала мигать раз в 2-е секунды, но когда захожу в монитор порта, выставляют "38400 бод" и "NL & CR", и ввожу команду "AT" - ничего не происходит (пусто).

    Помогите, пожалуйста, решить эту проблему. Много всего прочитал, посмотрел, но ничего не выходит.

    Подключаю все с помощью "Iskra Neo", "Troyka shield" ну и сам Bluetooth модуль.

    Заранее спасибо!
     
  2. Mitrandir

    Mitrandir Гуру

    попробуйте скорость 9600 выставить
     
  3. kolki

    kolki Нерд

    То же самое
     
  4. Mitrandir

    Mitrandir Гуру

    Провод K подключен?
     
  5. kolki

    kolki Нерд

    При включении да, а потом вынимаю его (как на видео). Хотя пробовал и оставлять, тот же результат.
     
  6. NikitOS

    NikitOS Король шутов Администратор

    А я думал arduino leonardo не может быть мостом между uart и usb:confused::confused::confused:

    У нее же нет пинов, которые напрямую связаны с usb:eek:
     
  7. kolki

    kolki Нерд

    А что мне сделать надо в таком случае?
     
  8. NikitOS

    NikitOS Король шутов Администратор

    Написать небольшой скетч, который сделает ее мостом:)
     
  9. kolki

    kolki Нерд

    То есть ждать пока что-то придет с помощью "Serial.available" и если что-то пришло, то выводить это в монитор порта с помощью "Serial.println(Serial.read())"?
     
  10. NikitOS

    NikitOS Король шутов Администратор

    Данные с Serial1 отправляем в Serial, А данные с Serial в Serial1
     
  11. kolki

    kolki Нерд

    Код (C++):
    #include <SoftwareSerial.h>

    int gRxPin = 0;
    int gTxPin = 1;

    SoftwareSerial BTSerial(gRxPin, gTxPin);

    void setup() {
      BTSerial.begin(38400);
      Serial.begin(9600);
    }

    void loop() {
      if (BTSerial.available()) {
        Serial.write(BTSerial.read());
      }
      if (Serial.available()) {
        BTSerial.write(Serial.read());
      }
    }
    Так?

    RX блютус модуля у меня подключен к 0 пину, а TX блютус модуля к 1 пину.
     
    Последнее редактирование: 16 авг 2018
  12. NikitOS

    NikitOS Король шутов Администратор

    Зачем вам softwareserial?????
    На леонардо несколько uart и без него.
    Уберите softwareserial а btserial замените на serial1
     
    parovoZZ нравится это.
  13. kolki

    kolki Нерд

    Код (C++):
    void setup() {
      Serial1.begin(38400);
      Serial.begin(9600);
    }

    void loop() {
      if (Serial1.available()) {
        Serial.write(Serial1.read());
      }
      if (Serial.available()) {
        Serial1.write(Serial.read());
      }
    }
    А скорость у "Serial1" должна быть 38400?
     
  14. NikitOS

    NikitOS Король шутов Администратор

  15. NikitOS

    NikitOS Король шутов Администратор

    Интересно, а шрифт кода можно сменить?
    Сильно уж 1и l похожи
     
    Daniil нравится это.
  16. Mitrandir

    Mitrandir Гуру

    Можно. Нажми ф12 и подмени css
     
  17. kolki

    kolki Нерд

    Все, получилось, спасибо большое!
    Надо было только еще провода местами поменять: то есть RX блютус модуля к 1-ому пину, а TX блютус модуля к 0-ому пину.
     
  18. kolki

    kolki Нерд

    А можно ли как-то выключать/включать этот модуль?

    С этого вопроса у меня все и началось.
     
  19. parovoZZ

    parovoZZ Гуру

    kolki


    Ну ты красава! Держи пять! И уважуху!
     
  20. NikitOS

    NikitOS Король шутов Администратор

    Не, я подожду обновления форума до 2,0,х.
    Там все ок;)