23

Модуль BT201 + STM32 (Arduino)

Модуль BT201 5.0 Bluetooth представляет собой единый чип 4-в-1, который поддерживает Bluetooth, USB-флешку и TF-карту.

Функции:

  • Поддержка Bluetooth-аудио, передача данных BLE, воспроизведение U-диска, воспроизведение TF-карты, SPIFLASH. Поддержка декодирования форматов MP3, WAV, WMA, FLAC, AAC, APE.

  • 16-битный стерео ЦАП с усилителем для наушников, отношение сигнал/шум >= 95 дБ

  • Последовательный порт управления командой AT. Поддержка изменения скорости передачи данных для изменения имени Bluetooth, указания воспроизведения устройства и передачи данных мобильного телефона.

  • Поддержка двухрежимной передачи данных BLE и SPP, в то же время может воспроизводить звук Bluetooth, без конфликтов.

  • Поддержка вызова Bluetooth, много кнопочного управления, последней музыки, следующей музыки, воспроизведения паузы, регулировки громкости и других простых функций.

  • Поддержка получения полного имени файла последовательного порта воспроизведения, указанного пути воспроизведения, цикла или одиночного воспроизведения.

  • Поддержка функции записи 128KBS. Запись на TF-карту или U-диск, запись, удаление, воспроизведение и т. д.

При тестировании модуля BT201 был выбран микроконтроллер STM32 (плата разработчика STM32F103C8T6), так он содержит несколько UART портов, один будет использован для вывода информации в монитор порта, другой (Serial3) для отправки АТ команд в модуль BT201.

Как прошивать STM32 в среде Arduino IDE написано в — http://rcl-radio.ru/?p=68376

Так как STM32 прошивается через переходник USB to COM (RS232) YP-01 на чипе PL2303HX, в котором имеются 2 источника напряжения, то напряжение 3,3 В будут использованы для питания STM32, а напряжение 5 В для питания модуля BT201.

Подключения STM32 к USB to COM и BT201

Тестовый скетч

void setup(){ Serial.begin(115200); Serial3.begin(115200); Serial.println(); delay(500); }  void loop(){ if (Serial.available() > 0) { String str = Serial.readString(); Serial.println(str); Serial3.print(str+"\r\n"); }  if (Serial3.available() > 0) { String str = Serial3.readString(); Serial.println(str); } }

Команды управления отсылаете через монитор порта, и они пересылаются на модуль BT201.
Все, что приходит с модуля (ответы, сообщения и т.д.), пишется в монитор порта.

Список АТ команд —BT201 Module _KT1025A_B_User Manual _V2.3.pdf

Список основных АТ команд:

  • AT+CB  — стоп\паузы

  • AT+CC — следующий трек

  • AT+CD — предыдущий трек

  • AT+CE — громкость +++

  • AT+CF — громкость —

  • AT+CA15 — громкость уровень 15 (0-30)

  • AT+CM01 — Bluetooth

  • AT+CM02 — USB

Ниже показан пример управления модулем BT201 при помощи STM32 и нескольких кнопок, режимы работы и другая информация отображается на дисплее 0.96′ I2C 128X64 OLED.

Дисплей 0.96′ I2C 128X64 OLED на контроллере SSD1306 имеет разрешение 128х64 пиксел и подключается к микроконтроллеру по интерфейсу I2C.

Параметры дисплея SSD1306:

  • Технология дисплея: OLED

  • Разрешение дисплея: 128 на 64 точки

  • Диагональ дисплея: 0,96 дюйма

  • Угол обзора: 160°

  • Напряжение питания: 2.8 В ~ 5.5 В

  • Мощность: 0,08 Вт

  • Габариты: 27.3 мм х 27.8 мм х 3.7 мм

Кнопки управления:

  • PLAY / STOP — воспроизведение \ пауза в режиме Bluetooth и USB

  • >>> — следующий трек (файл, ролик) в режиме Bluetooth и USB

  • <<< — предыдущий трек (файл, ролик) в режиме Bluetooth и USB

  • Bluetooth \ USB — кнопка выбора Bluetooth или USB

  • VOLUME UP — громкость прибавить на 1 ед.

  • VOLUME WD — громкость удавить на 1 ед.

Меню Bluetooth

  1. Bluetooth

  2. Режим работы:

    1. not connected — нет соединения

    2. connected — соединение установлено

    3. play — воспроизвидение

  3. Уровень громкости

Меню USB

  1. USB

  2. Номер воспроизводимого файла (кол-во файлов на носителе*)

  3. Время звучания воспроизводимого файла

  4. текущее время проигрывания файла

  5. Уровень громкости

*Звуковые файлы на USB устройстве должны быть записаны й в корень файловой системы.

Подключения STM32, кнопок и дисплея

** Подключение кнопок

Подключения STM32 к  BT201

Скетч - http://rcl-radio.ru/?p=129611

TECHNO BROTHER

2.1K поста13.7K подписчик

Правила сообщества

1-Мы А-политическое сообщество. 2-Запрещено оскорбление: Администрации Пикабу, сообщества, участников сообщества а также родных, близких выше указанных.

3-Категорически запрещается разжигание межнациональной розни или действий, направленных на возбуждение национальной, расовой вражды, унижение национального достоинства, а также высказывания о превосходстве либо неполноценности пользователей по признаку их отношения к национальной принадлежности или политических взглядов. Мат - Нежелателен. Учитесь выражать мысли без матерщины