Оглавление:

HiFive1 Arduino с модулем Bluetooth HC-05: 7 шагов
HiFive1 Arduino с модулем Bluetooth HC-05: 7 шагов

Видео: HiFive1 Arduino с модулем Bluetooth HC-05: 7 шагов

Видео: HiFive1 Arduino с модулем Bluetooth HC-05: 7 шагов
Видео: № 111 Еженедельный обзор № 26 – Новые продукты для производителей 2024, Ноябрь
Anonim
HiFive1 Arduino с модулем Bluetooth HC-05 Учебное пособие
HiFive1 Arduino с модулем Bluetooth HC-05 Учебное пособие

HiFive1 - первая Arduino-совместимая плата на базе RISC-V, построенная с процессором FE310 от SiFive. Плата примерно в 20 раз быстрее, чем Arduino UNO, и, поскольку UNO не имеет возможности беспроводного подключения. К счастью, на рынке есть несколько недорогих модулей, позволяющих смягчить это ограничение.

Для подключения к Wi-Fi с ESP01 / ESP32 / ESP8266 вы можете проверить руководства AT, WEB и MQTT.

В этом руководстве мы используем модуль Bluetooth HC-05. Это дешево, может работать как ведомое или ведущее устройство и с ним легко работать с помощью AT-команд. Другой вариант - ESP32, но он дороже и требует отдельного программирования.

Этот проект направлен на создание беспроводного соединения между HiFive1 и ПК с Windows или телефоном Android с помощью модуля Bluetooth HC-05. Через соединение мы будем управлять цветами встроенных светодиодов RGB HiFive1.

Для этого проекта вам понадобятся:

  • Доска HiFive1
  • Модуль Bluetooth HC-05
  • Кабель-перемычка x 4
  • Телефон Android или ПК с ОС Windows

Шаг 1. Настройка среды

Настройка среды
Настройка среды
Настройка среды
Настройка среды
  1. Установите Arduino IDE
  2. Следуйте инструкциям по установке пакета Arduino платы HiFive1 и драйвера USB.

Шаг 2: Подключение HC-05

Подключение HC-05
Подключение HC-05
Подключение HC-05
Подключение HC-05
Подключение HC-05
Подключение HC-05

DI / O 10 (HiFive1) -> Tx (HC-05) DI / O 11 (HiFive1) -> Rx (HC-05) GND (HiFive1) -> GND (HC-05) 3,3 В (HiFive1) -> VCC (HC-05)

Убедитесь, что перемычка IOREF установлена на 3,3 В, как показано на рисунке красным кружком.

Шаг 3: программирование

Перед программированием установите «Tools-> Board» на плату HiFive1, «Tools-> CPU Clock Frequency» на «256MHz PLL», «Tools-> Programmer» на «SiFive OpenOCD» и установите правильный последовательный порт.

После соединения всего этого мы можем попытаться поговорить с HC-05 через последовательный монитор Arduino. Для этого нам нужно запрограммировать простой скетч, прикрепленный ниже. Он прослушивает AT-команды, поступающие от монитора через последовательный канал HW, и пересылает их на HC-05 через канал SoftwareSerial32. Он прослушивает ответы HC05 от канала SoftwareSerial32 и пересылает их на монитор через последовательный канал HW.

Если на предыдущих шагах все было настроено правильно, каждая AT-команда должна возвращать ответ «ОК» от HC-05.

Примечание: Не забудьте установить Serial Monitor на скорость 9600 бод с помощью "Both NL & CR".

Скетч основан на коде, найденном здесь

Подробнее об AT-командах можно найти здесь.

Шаг 4: Настройка HC-05

На этом этапе мы будем настраивать HC-05. Вам нужно сделать этот шаг только один раз, так как конфигурация будет сохранена в HC-05.

  • Войдите в режим AT на HC-05. Для этого отсоедините кабель VCC от HC-05, затем нажмите кнопку в правом нижнем углу и снова подключите VCC. Если все сделано правильно, свет должен включаться и выключаться с интервалом ~ 2 секунды.
  • Откройте Serial Monitor в среде IDE, которая соответствует плате, подключенной к HC-05. Убедитесь, что Serial Monitor установлен на скорость передачи 9600 и выбрано "Both NL + CR". Если все сделано правильно, когда вы отправляете «AT», он должен вернуть «OK».
  • Введите «AT + ORGL» (это вернет модуль к заводским настройкам).
  • Введите «AT + ROLE = 0» (это устанавливает для модуля роль «Slave»).
  • Введите «AT + CMODE = 0» (это устанавливает модуль для подключения к любому устройству).
  • Введите «AT + NAME = _». Замените символы подчеркивания именем по вашему выбору (это имя будет отображаться в обнаружении Bluetooth).
  • Введите «AT + UART = 38400, 0, 0» (это устанавливает скорость передачи модуля на 38400).
  • Введите «AT + RESET», чтобы выйти из режима AT.
  • Теперь загрузите окончательный эскиз, прикрепленный к этому шагу.
  • Шаг 5: Настройка пульта дистанционного управления (ПК с Windows)

    Настройка пульта дистанционного управления (ПК с Windows)
    Настройка пульта дистанционного управления (ПК с Windows)
    Настройка пульта дистанционного управления (ПК с Windows)
    Настройка пульта дистанционного управления (ПК с Windows)

    Примечание. Если вместо этого вы используете телефон Android, перейдите к следующему шагу.

    1. Включите Bluetooth.
    2. В разделе «Устройства» найдите имя, которое вы дали на шаге 3 - Настройка ведомого устройства.
    3. Код сопряжения - 1234.
    4. В диспетчере устройств вы должны увидеть новый COM-порт для Bluetooth. *
    5. Скачайте и установите PuTTY.
    6. Откройте PuTTY.
    7. Отметьте опцию «Последовательный» и замените «COM1» на «COM_» (подчеркивание должно быть вашим новым номером COM-порта).

    * Если было добавлено более одного COM-порта, попробуйте выполнить шаг 7 с разными портами, пока один из них не заработает.

    Шаг 6. Настройка пульта дистанционного управления (телефон Android)

    Настройка пульта дистанционного управления (телефон Android)
    Настройка пульта дистанционного управления (телефон Android)
    1. Включите Bluetooth.
    2. В разделе «Устройства Bluetooth» найдите имя, которое вы дали на шаге 4 - Настройка HC-05.
    3. Код сопряжения - 1234.
    4. Откройте приложение Arduino Bluetooth.
    5. Он должен предложить вам снова выбрать устройство.
    6. Откройте терминал.

    Шаг 7: окончательный результат

    Конечный результат
    Конечный результат
    Конечный результат
    Конечный результат
    Конечный результат
    Конечный результат

    Перезагрузите плату HiFive1 (на всякий случай) и откройте Serial Monitor.

    Введите «r», «g» или «b» в свой терминал, затем выберите интенсивность от 0 до 255 и добавьте «n» в конце выбранной интенсивности («n» используется в качестве символа завершения).

    При этом загорится встроенный светодиод RGB со значениями в соответствии с выбранной вами интенсивностью.

Рекомендуемые: