Проблема c Mega2560 и HC-06

ZhenyaRUS39
Offline
Зарегистрирован: 08.10.2015

Добрый день. Подскажите, как решить проблему:

Имеется Mega2560 и блутуз модуль HC-06(в сборке).

Пытаюсь проверить работоспособность, как в этом примере http://zelectro.cc/HC-06_bluetooth_module

При подключении блутуз модуля на порты RX(0) и TX(1) (всё, как надо, наперекрест) телефон видит устройство и подключается к нему, но при отправлении значения ничего не происходит. На MEGA не загорается светодиод на 13PIN. Пробовал и другие порты RX и TX (на меге их хватает).

Думал, что проблема в модуле, подключил его к меге и мегу к ноуту и проверил его через AT-команды, откликается и выдаёт, что прошивка у него Libvor v1.8 (т.е. дефолтная скорость у модуля 115200), раз модуль откликается, значит модуль живой и RX TX у него рабочий.

Мои предположения:

1) Скорость модуля в 115200 слишком велика (если её уменьшить через AT, то после сброса питания она опять станет 115200)

2) Проблема взаимодйствия со смартфоном

Теперь не пойму, почему не работает, хотя по идее, всё верно. Прошу помощи. Пробовал делать и по этому примеру http://remotexy.com/ru/examples/firstproject/ , также не выходит.

Заранее, спасибо за помощь.

Gippopotam
Gippopotam аватар
Offline
Зарегистрирован: 12.09.2014

Не совсем понятно, что именно вы деолали.

При использовании аппаратных портов USB откоючали?
 

ZhenyaRUS39
Offline
Зарегистрирован: 08.10.2015

Да, пробовал и при отключеном USB на RX(0) TX(1) и на RX(19) TX(18).

Могу приложить вечером фото и ведео процесса для наглядности (на Яндекс диск).

Gippopotam
Gippopotam аватар
Offline
Зарегистрирован: 12.09.2014

Вы лучше приложите конкретный скетч и конкретную схему подключения.

ZhenyaRUS39
Offline
Зарегистрирован: 08.10.2015

Получилось настроить на порты RX(0) и TX(1).

на все остальные порты RX TX настроить не получается, не пойму почему...

скетч простой:

int val;
int LED = 13;

void setup()

{
Serial.begin(9600);
pinMode(LED, OUTPUT);

}
void loop()
{
if (Serial.available())
{
val = Serial.read();

// При символе "W" включаем светодиод
if (val == 'W')
{
digitalWrite(LED, HIGH);
}

// При символе "S" выключаем светодиод
if ( val == 'S')
{
digitalWrite(LED, LOW);
}

}
}

 

Yarik.Yar
Offline
Зарегистрирован: 07.09.2014

Через Seial вы подключаетесь к UART0,  а их  у Меги, если память не изменяет, 4...Serial1...Serial3 соответственно)

ZhenyaRUS39
Offline
Зарегистрирован: 08.10.2015

Спасибо, всё настроил. Тему можно закрывать.

next09
Offline
Зарегистрирован: 31.08.2019

Как решил проблему ?