Подключение Nextion дисплея к MMDVM через Bluetooth
В этой статье я расскажу о подключении Nextion дисплея к MMDVM, используя беспроводное соединение через Bluetooth.
Данное решение удобно при использовании мобильного MMDVM узла в автомобиле, сам узел располагается в багажнике, а дисплей можно установить в удобном для водителя месте.
Дисплей подключается к Raspberry PI через последовательный порт UART на скорости 9600kbps.
Нам понадобятся два китайских модуля HC-05. Это UART-Bluetooth адаптер, который можно запрограммировать с помощью АТ команд.
Для конфигурации модулей понадобится USB-UART переходиник, например как на фото.
Подготавливаем первый модуль для использования в SLAVE режиме.
Сделаем следующие соединения:
UART-USB HC-05
VCC ---------------------- VCC
GND ---------------------- GND
TXD ----------------------- TXD
RXD ----------------------- RXD
Скачиваем программу терминал для АТ команд. Идеально подходит Termite. Открываем, выбираем порт, открываем настройки программы, устанавливаем скорость 38400 и обязательно Append CR-LF
Отключаем от модуля питание, нажимаем находящуюся на модуле кнопку и, удерживая ее, подаем на модуль питание. Светодиоды должны медленно мигать, это означает что модуль находится в режиме приема АТ команд.
Вводим команду АТ и нажимаем ENTER
Модуль должен ответить ОК.
Далее вводим следующие команды:
AT+ORGL Сбрасываем модуль в исходное состояние
AT+RMAAD Очищаем память устройств, к которыми модуль ранее был подключен
AT+NAME=MMDVM_SLAVE Даем модулю имя
AT+PSWD=8888 Устанавливаем пароль, проверяем командой AT+PSWD?
AT+ROLE=0 Устанавливаем режим SLAVE, проверяем командой AT+ROLE?
AT+ADDR? Узнаем адрес устройства. Ответ в моем случае был 2006:11:145175. Записываем этот адрес, он нам будет нужен при спаривании модулей.
Отключаем питание от модуля, подаем заново, модуль должен быстро мигать светодиодами, означая что он готов к соединению.
Подготавливаем второй модуль для использования в MASTER режиме.
Соединяем модуль с конвертеромтакже как мы соединяли SLAVE модуль. Также подаем питание, удерживая нажатой кнопку.
Далее вводим следующие команды:
AT+ORGL Сбрасываем модуль в исходное состояние
AT+RMAAD Очищаем память устройств, к которыми модуль ранее был подключен
AT+NAME=MMDVM_MASTER Даем модулю имя
AT+PSWD=8888 Устанавливаем пароль, проверяем командой AT+PSWD?
AT+ROLE=1 Устанавливаем режим MASTER, проверяем командой AT+ROLE?
AT+CMODE=1 Разрешаем подключаться к любым адресам
Далее подаем питание на SLAVE модуль и дальнейшие команды MASTER модулю даем при включенном SLAVE модуле.
AT+INIT Инициализируем модуль, если появляется ответ ERROR, игнорируем
AT+INQ Этой командой модуль должен искать и показать находящиеся поблизости устройства. У меня эта команда ничего не показала, и я перешел к следующему шагу
AT+LINK=2006,11,145175 Собственно спаривание модуля со SLAVE модулем, имеющим определенный адрес, который мы узнали при программировании SLAVE модуля. В моем случае адрес SLAVE модуля 2006,11,145175 .
Соединение занимает некоторое время. При удачном соединении светодиоды на обоих модулях должны синхронно мигать (примерно одна вспышка в секунду).
MASTER модуль подключаем к дисплею.
Nextion HC-05
VCC ---------------------- VCC
GND ---------------------- GND
RX ----------------------- TXD
TX ----------------------- RXD
SLAVE модуль подключаем к Raspberry PI
Raspberry HC-05
VCC ---------------------- VCC
GND ---------------------- GND
RX ----------------------- TXD
TX ----------------------- RXD
Обсуждаем тут http://www.ham-dmr.ee/forum/index.php?topic=58.0
ES1BIS