Помогите разобраться с кодом

Тема в разделе "Arduino & Shields", создана пользователем Alexandr13, 30 окт 2019.

  1. Alexandr13

    Alexandr13 Нуб

    Добрый день. Не могу понять что делаю не так. При попытке загрузить данный скетч в Ардуино появляется ошибка error: 'mp3_set_serial' was not declared in this scope (ошибка: 'mp3_set_serial' не был объявлен в этой области) Сам плеер проверил, он работает.

    Код (C++):
    [code]
    #include <DFMiniMp3.h>
    #include <SoftwareSerial.h>
    SoftwareSerial mySerial(10,11);
    const int trigPin = 2;
    const int echoPin = 3;
    const int alarmPin = 6;
    long duration, cm;
    void setup() {
    pinMode (trigPin, OUTPUT);
    pinMode (echoPin, INPUT);
    Serial.begin (9600);
    mySerial.begin (9600);
    mp3_set_serial (mySerial);
    mp3_set_volume (15);
    }
    void loop() {
    digitalWrite(trigPin, LOW);
    delayMicroseconds(2);
    digitalWrite(trigPin, HIGH);
    delayMicroseconds(10);
    digitalWrite(trigPin, LOW);
    duration = pulseIn(echoPin, HIGH);
    cm = duration * 1.7 * 0.01;
    if (cm > 0 && cm < 100){ mp3_stop();
    }else{mp3_random_play();}
    delay (2000);
    }
     
    [/code]
     
  2. NikitOS

    NikitOS Король шутов Администратор

    Скорее всего, используется не та библиотека, для которой код.
    Попробуйте установить эту: https://iarduino.ru/file/140.html
    Подключается в код так:
    #include<DFPlayer_Mini_Mp3.h>
     
  3. Alexandr13

    Alexandr13 Нуб

    Нет не помогает. Пишет нет такого файла или каталога и подчеркивает первую строчку с библиотекой плеера. Если загружать библиотеку и не исправлять ничего в названии библиотеки в коде, вот так ( #include <DFRobotDFPlayerMini.h>), то возникает та-же ошибка что и с другой библиотекой.
     
  4. NikitOS

    NikitOS Король шутов Администратор

    Вы библиотеку верно установили?
    Ошибок быть не должно. Старую убираете, эту подключаете
     
  5. Alexandr13

    Alexandr13 Нуб

    Папку со скаченной библиотекой вставляю на диск С / Arduino/ libraries , старую библиотеку само собой убираю из кода. Перезапускаю Arduino IDE и добавляю библиотеку в код, далее исправляю #include <DFRobotDFPlayerMini.h> на #include<DFPlayer_Mini_Mp3.h> Где-то ошибка? Пробовал другую ардуинку то-же самое. Никак не разберусь что не так.
     
  6. NikitOS

    NikitOS Король шутов Администратор

    Попробуйте так добавить: Скетч -> Подключить библиотеку -> Добавить .zip библиотеку
    Потом: Скетч -> Подключить библиотеку, там выбираете добавленную бибилиотеку

    Ну и код покажите итоговый
     
  7. Не близкий путь...
    В скачанном архиве нет DFPlayer_Mini_Mp3.h, есть какие-то DFRobotDFPlayerMini.h с сигнатурами не похожими на те что у ТС (mp3_set_serial mp3_set_volume)
    Но есть библиотека DFPlayer-Mini-mp3 в которой есть и DFPlayer_Mini_Mp3.h и те самые mp3_set_serial mp3_set_volume
     
    Alexandr13 нравится это.
  8. NikitOS

    NikitOS Король шутов Администратор

    Странно :confused:
     
  9. Alexandr13

    Alexandr13 Нуб

    Спасибо. С этой библиотекой все заработало.
     
  10. Alexandr13

    Alexandr13 Нуб

    Вот ведь, пробовал разные библиотеки, а на эту не попадал. Спасибо ещё раз. Буду учится.
     
    Последнее редактирование: 31 окт 2019