Помогите разобраться с UART DFPlayer Mini 2.0

Тема в разделе "Arduino & Shields", создана пользователем Unruly, 27 ноя 2014.

  1. sasha_1973

    sasha_1973 Нуб

    Не работает, ответа нет.
    Пробовал и 4 байта и 6 байт, результат один, модуль не отвечает!
     
  2. sasha_1973

    sasha_1973 Нуб

    буфер_модуля(10)

    контольная_сумма = сумма ( буфер_модуля(2) .... буфер_модуля(7) )
    контольная_сумма = 0 - контольная_сумма


    я правильно считаю?

    По крайней мере, всё работает, кроме ответов модуля.
     
  3. Onkel

    Onkel Гуру

    тогда разбирайтесь с железом. Посмотрите выход Tx осциллографом, или поставьте себе осц. на звуковой карте. Я привел пример опробованного запроса.
     
  4. sasha_1973

    sasha_1973 Нуб

    Глухо, как в танке!
     
  5. sasha_1973

    sasha_1973 Нуб

    Пробовал 2 модуля, реакция абсолютно одинаковая.
     
  6. Onkel

    Onkel Гуру

    пяток модулей, с которыми я работал, отвечает. Был один дефектный- но дефектом было сгорание выходного чипа, все равно отвечал. Вход Rx мк подтянут?
     
  7. sasha_1973

    sasha_1973 Нуб

    Пробовал и так и этак, ответа нет.
     
  8. Onkel

    Onkel Гуру

    а напрямую с uart через usb не пробовали? Через usb/uart переходничёк?
     
  9. sasha_1973

    sasha_1973 Нуб

    Так через него и работаю, в ноуте нет COM порта.
     
  10. sasha_1973

    sasha_1973 Нуб

    Проблема решена заменой МК. RxD нормально работал с компьютером, и наотрез отказывался работать с модулем.
     
  11. Onkel

    Onkel Гуру

    в хозяйстве полезно иметь модуль USB/UART, я намекал парой постов выше, вы бы себе много времени съэкономили, попробовав через модуль с терминала пк без мк. Видно, мой вопрос
    был неправильно понят. Я имел в виду связку пк-usb/uart-плейер связку, без мк.
     
  12. sasha_1973

    sasha_1973 Нуб

    Прямо с ПК с модулем работать вообще не получилось, использовал Terminal1.9b. Пожалуйста, посоветуйте другую терминальную программу.
     
  13. Taraserker

    Taraserker Нерд

    Тоже столкнулся с данной проблемой.
    Звук по SofwareSerial то запускается то молчит.
    Уменьшил с килоома до 330 Ом, улучшения стабильности не заметил.
    Пробовал без резисторов, стабильность запуска прежняя, но очень звук "рычит" - резисторы нужны.
    Пока добился стабильности тем что посылаю 3 раза команду на запуск файла,
    но все равно иногда даже это не помогает :(

    Имея небольшой опыт работы с различными интерфейсами, рискую предположить что в модуле не 9600, а где то около, или частота вообще плавает, неплохо бы было немного поиграться с частотой и посмотреть как стабильно будет работать, но сейчас нет на это времени.
    Посажу на запуск от ножки, тут хоть проблем нету, а дальше будет видно.
     
  14. Onkel

    Onkel Гуру

    2 Taraserker
    прямо с терминалом пробовали? Кто рычит? У меня не рычит.
    2 Sasha... Я использую терминал HTerm.
     
  15. Taraserker

    Taraserker Нерд

    Звук "рычит". У ардуины есть какие то внутренние шумы, это не только в этом устройстве со звуком замечено.
    Пока что и без терминала получил результат, докапываться до истины нет времени и желания.
    3 раза вызываю запускаемый файл, но и это давало иногда сбои.
    еще добавил инициализацию порта, так работает и стабильно запускает файл.
    Код (C++):
       
    mp3_set_serial (mp3Serial);
    mp3_set_volume (29);
    mp3_play (1);
    mp3_play (1);
    mp3_play (1);
     
     
  16. ostrov

    ostrov Гуру

    Перед play добавьте задержку миллисекунд на 50.
     
  17. Basilio83

    Basilio83 Нерд

    помогите трек играет по продолжительности паузы
    т.е. ф-ия ЛУП постоянно гоняет в плеер ф-ию mp3_play()
     
  18. Basilio83

    Basilio83 Нерд

    причем у меня пока один мпз файл 0001 если писать mp3_play(1) то длительность зависит от паузы если просто mp3_play() то трек играет полностью
     
  19. Tomasina

    Tomasina Сушитель лампочек Модератор

    где скетч?
     
  20. Basilio83

    Basilio83 Нерд

    #include <SoftwareSerial.h>
    #include <DFPlayer_Mini_Mp3.h>

    //
    void setup () {
    Serial.begin (9600);
    mp3_set_serial (Serial); //set Serial for DFPlayer-mini mp3 module
    mp3_set_volume (15);
    }


    //
    void loop () {
    mp3_play (1);
    delay (6000);