Не могу запустить 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 библиотека еще юзается в прошивке)