ЭЛЕКТРОНИКА Нужна помощь с блютуз модулем BT201

Сергей Прохоров

✩✩✩✩✩✩✩
25 Июн 2022
3
0
@bort707,
Когда чип начнет играть, он вернет в порт нижеуказанную информацию:
M1 + 0000000E Файл, воспроизводимый текущим устройством, имеет размер 0x0E.
M2 + 0000000F Общее количество файлов на текущем устройстве составляет 0x0F.
MT + 0000001E Общее время текущего файла составляет 0x1E секунд.
MK + 00000004 Текущий файл был воспроизведен до 0x04 секунд
MF + XXXXXXX Имя воспроизводимого в данный момент файла: xxxxxx.

Как эту информацию "раскидать" по переменным, чтобы вывести их на дисплей в десятичном формате?
 

bort707

★★★★★★✩
21 Сен 2020
3,046
909
это называется "парсинг" - разбор текстовых сообщений, поищите в инете
Если кратко - ищете в принятой строке комбинацию символов "M1" - а цифры после нее предтавлю собой размер файла...
 

Сергей Прохоров

✩✩✩✩✩✩✩
25 Июн 2022
3
0
@bort707, С обработкой массива пока разобрался, взял за основу пример, часть проблемы решена.
// тест парсера строк
#include <GParser.h>

void setup() {
Serial.begin(9600);

// строка для примера
// данные разделены разделителем, например запятой
// могут быть получены из Serial/UDP/TCP/MQTT итд
char str[] = "QM+01";

// кормим строку парсеру, указываем разделитель (умолч. запятая)
GParser data(str, '+');

// ВНИМАНИЕ! Операция "ломает" исходную строку, заменяя разделители на NULL
int am = data.split(); // разделяем, получаем количество данных

//Serial.println(am); // выводим количество

// можем обратиться к полученным строкам как data или data.str
//for (byte i = 0; i < am; i++) Serial.println(data);

// также можно получить их в виде int и float чисел
// передав индекс строки
//Serial.println(data.getInt(1));
//Serial.println(data.getFloat(1));

// можно сравнить со строкой (номер парс строки, строка для сравнения)
if (data.equals(0, "QM") && data.equals(1, "01")) Serial.println("BT On");
if (data.equals(0, "QM") && data.equals(1, "02")) Serial.println("USB On");

}

void loop() {

}

Появился другой вопрос, как записать строку для обработки (QM+01) из Serial в char str[] ? В С++ не силён.
 

Arisat

✩✩✩✩✩✩✩
23 Фев 2023
1
0
Всем привет. Приобрёл данный данную плату для мини колонки. После нажатия кнопки PP модуль выключается. Но стоит снова его включить через кнопку PP модуль включится но блютуз перестанет работать. Подскажите кто сталкивался с данной проблемой и как её решить. Стоит отключить питание от батареи и подключить снова модуль включить блютуз. Хотелось бы с кнопки чтобы всё работало.
Или она вообще не должна отключаться и включаться с этой кнопки?
 
Изменено:

motoGiS

✩✩✩✩✩✩✩
5 Янв 2024
2
0
Кстати, мне удалось забросить прошивку от BT301 на BT201 с FM Radio и AUX. Единственное, нужно перебросить светодиод на другую ногу контроллера и перевесить кнопки управления на вывод микрофона (легко понять, если открыть схему обоих модулей). Единственное, в прошивке с AUX и FM не работает в фоне Bluetooth, он запускается и фонит только если принудительно переключиться на него. Это описано в документации и аргументировано недостатком памяти микроконтроллера. Поэтому даже BT301 в стоке идет без FM, нужно шить кому он требуется.
 

motoGiS

✩✩✩✩✩✩✩
5 Янв 2024
2
0
@Константин 271, кусок провода. Ну естественно нужно запаять хотя бы отсутствующий конденсатор на пару-тройку десятков пФ. А так в инструкции указана полная схема из пары конденсаторов и одной индуктивности.
 

kven

✩✩✩✩✩✩✩
16 Фев 2024
1
0
никто не встречался с подвисанием карты\тф ?.. модуль ее типа видит, MU+01 и даже режим включает QM+02 и тут же сам переключается на блюпуп QM+01
сброс не памагает и даже прошивка не закидываеца
 

Vikz

✩✩✩✩✩✩✩
13 Июн 2024
15
0
Хз жива тема или нет. Подскажите знающие пожалуйста. модуль выдает ER+6 после команды AT+AJ/02test/02test.mp3 хотя на флехе в корне папка 02test ну и в ней 02test.mp3
 

mir0tv0rec

✩✩✩✩✩✩✩
14 Янв 2019
15
0
ER+6\r\n Specify the path of the device [TF or U disk], and the path does not have a return error - значит что-то не так в пути к файлу (названии файла). Тоже сейчас мучаюсь с разбором данных, поступающих с плеера...
 

mir0tv0rec

✩✩✩✩✩✩✩
14 Янв 2019
15
0
Их обязательно нужно отправлять, иначе плеер не воспринимает команды.
Можно так: Serial1.println(str0 + "\r\n");
Тут можно в 0 терминал уже без них команды вбивать.
 

mir0tv0rec

✩✩✩✩✩✩✩
14 Янв 2019
15
0
Судя по номеру ошибки, как раз плеер путь не нашел до файла, а не команда не правильная...
 

Старик Похабыч

★★★★★★★
14 Авг 2019
4,251
1,297
Москва
Вполне логично, после команды плеер ждет два служебных символа, а затем путь к файлу и опять 2 служебных символа. Если первых нет, то и пути нет.
Можно гадать передает ли Vikz эти символы, судя по строке нет.
 

Vikz

✩✩✩✩✩✩✩
13 Июн 2024
15
0
@Старик Похабыч,
AT+AJ\r\n/02test/02test.mp3\r\n
Прям один в один как вы написали передал команду ииииии ошибка все равно :(
Флешка в fat32
Хз пробовал точку убирать перед mp3 и заменять пробелом и слитно и по всякому мош сработает. Но ничего не получается.

@mir0tv0rec,
Так а на вашем модуле команда AT+AJ срабатывает?
 
Изменено:

mir0tv0rec

✩✩✩✩✩✩✩
14 Янв 2019
15
0
На моем тоже работать не хочет, тоже специально попробовал сегодня. Тоже ER6
 

Vikz

✩✩✩✩✩✩✩
13 Июн 2024
15
0
@mir0tv0rec,
Это плохо ведь это лишает возможности выбора трека. Ну через написание своей логики не получится сформировать плейлист например. Попробуйте что ли китайцу написать мош там в проше что то наменяли? Я написал тому у кого заказывал но там молчанка. Я даже хз не уж то люди довольствуются просто листанием треков по порядку?
 

mir0tv0rec

✩✩✩✩✩✩✩
14 Янв 2019
15
0
Да, я его несколько лет назад заказывал, все руки никак не доходили... Думаю, уже и лота такого нет. Сейчас нужно к усилителю сделать плеер, вот и хочу, чтобы функционал нормальный был. Взялся за него снова. Ну так у него есть рандомный режим, и он работает. Осталось только названия на кириллице нормально на дисплей выводить...
 

Vikz

✩✩✩✩✩✩✩
13 Июн 2024
15
0
@mir0tv0rec,
Рандом конечно это хорошо но не то. Инфы по плееру конечно в сети что то не оч.
 

mir0tv0rec

✩✩✩✩✩✩✩
14 Янв 2019
15
0
Его скорее всего китайцы уже забросили, описание есть по прошивке 2019 года последнее. У меня сейчас от 2020 года прошивка стоит...
 

Константин 271

★★★✩✩✩✩
12 Июл 2020
950
105
Привет, посоветуйте на Али стерео-усилок простой для обычных динамиков 4 Ом 4 см. Наподобие того, что в обсуждаемой тут плате стоит, но там моно.

Попутно - кто-то делал пароль на блютус к BT201? По умолчанию он выключен и кто угодно может подключиться, если свободно. К примеру, соседи, к примеру, случайно, к примеру, при просмотре взрослого видео :LOL: