Не могу запустить Bluetooth Bee
- Войдите на сайт для отправки комментариев
Уважаемые, прошу помощи.
Не могу запустить Bluetooth Bee в режим ожидания соединения.
Подробнее. Плата Arduino UNO + Wireless shield SD + модуль Bluetooth Ручная настройка модуля проходит успешно: на Arduino залит пустой скетч, Wirelees shield в режиме USB, терминал на 38400 бод. Через терминал Arduino IDE удается включить модуль и настроить его на соединение (с блютусом компьютера, например). Все ответы с модуля выводятся в окно терминала, как положено.
Проблемы начинаются при попытке настроить Bluetooth модуль программно. Официальные скетчи для настройки соединения (приведены по ссылке на спецификацию модуля) не работают. А не работают, потому что модулю попросту не отправляются АТ-команды с помощью библиотеки SoftwareSerial. Стал разбираться с этой библиотекой. Выясняется, что даже examples скетчи для этой библиотеки не работают. Вот поясните, пожалуйста, каков должен быть видимый результат работы стандартного example-скетча:
#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3);
void setup()
{
Serial.begin(57600);
Serial.println("Goodnight moon!");
// set the data rate for the SoftwareSerial port
mySerial.begin(4800);
mySerial.println("Hello, world?");
}
void loop() // run over and over
{
if (mySerial.available())
Serial.write(mySerial.read());
if (Serial.available())
mySerial.write(Serial.read());
}
В моем понимании - чередование Гуднайтов и хеллоувордов...На деле - Гуднайт и молчок.
Ибо в виртуальный порт ничего не отправляется и available для него не наступает. В общем, прошу помочь разобраться с работой этой библиотеки и настройкой модуля, если кто этим уже занимался.
Вот поясните, пожалуйста, каков должен быть видимый результат работы стандартного example-скетча:
[...]
В моем понимании - чередование Гуднайтов и хеллоувордов...На деле - Гуднайт и молчок.
В моем понимании - отправка одного гуднайта в аппаратный UART и одного хеллоуолд- в программный.
А уж то, выведется или не выведется каждое из этих сообщений, зависит от того, какое устройство слушает каждый из этих портов. Из ваших многих слов как-то неясно, куда отправляются потоки: аппаратный в IDE-терминал, что-ли? А программный - через Bluetooth? Куда по Bluetooth дальше? Там и ищите пропавшую строку...
А setup исполняется один раз.
Хотите чередования - переносите отправки в loop.
Ну, или хотя бы попробуйте скорости аппаратного и программного портов согласовать.
Короче, разобрался...Пробема, как обычно была в голове - ну не догонял, как должен быть подключен модуль и Arduino и что означает строка SoftwareSerial mySerial (RX, TX). В-общем, все работает, и для того чтобы запустить Bluetooth Bee модуль, подключенный к шилду Wireless Shield SD, нужно иметь ввиду, что RX и TX пины шилда должны быть ОТКЛЮЧЕНЫ от RX TX Arduino (их можно просто в сторонку отогнуть перед установкой шилда, чтоб не мешались). Дополнительно, необходимо пробросить перемычки от пинов RX TX шилда к пинам, определенным в SoftwareSerial mySerial (RX, TX). 4-й пин использовать нельзя (если SD библиотека еще юзается в прошивке)