Новости:

Форум Infotex WeaponMod

Тема: Квартирный звонок с MP3  (Прочитано 312894 раз)

Оффлайн ed13hell 21 Апреля 2017, 11:56:46 (#60)

  • Постоялец
  • ***
  • Сообщений: 28
  • Карма: +1/-0
  • Dum spiro - spero
    • Просмотр профиля
А если в программе изменять звук, не 20 как там а поставить 5,  качество улучшается?
Ничего не меняется при любом значении.

А свои идеи есть написания скетча. Я думаю писать никто не будет, надо время. А вот подправить можно.
Похоже я его сам только что подправил:

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

SoftwareSerial mySerial(10, 11); // RX, TX DF Плеера

void setup () {
  mySerial.begin (9600);
  pinMode(3, INPUT);
  digitalWrite(3, HIGH);
 pinMode(4, INPUT);
  digitalWrite(4, LOW);
  pinMode(13, OUTPUT);
  mp3_set_serial (mySerial);      //Работаем с "Софтовым" портом
  delay (10);
  mp3_set_volume (20);            // Громкость (0-30)
  delay (10);
  mp3_set_EQ (2);                 // Эквалайзер (0 - Normal, 1 - Pop, 2 - Rock, 3 - Jazz, 4 - Classic, 5 - Bass)
  delay (10);
}
void loop () {
bool  InputD4 = (digitalRead (4));
  boolean play_state = digitalRead(3);// Кнопка на прерывании D3
  if (InputD4 == HIGH)               // Читаем порт D4, закончился ли играть трек
  {                   
    digitalWrite(13, LOW);   
  if (play_state == LOW)
  {
    digitalWrite(13, HIGH);
    delay (10);
    mp3_next ();
  }
  }
    delay (100);
    }

Программная регулировка громкости заработала.
Всем спасибо за помощь....   :D
  • « Последнее редактирование: 21 Апреля 2017, 12:48:29 от ed13hell »

Оффлайн Алекс 21 Апреля 2017, 14:27:25 (#61)

  • Постоялец
  • ***
  • Сообщений: 27
  • Карма: +1/-0
  • Здесь может быть Ваша подпись
    • Просмотр профиля
Чёто я в программе не вижу регулировки громкости))

Оффлайн Алекс 21 Апреля 2017, 14:38:13 (#62)

  • Постоялец
  • ***
  • Сообщений: 27
  • Карма: +1/-0
  • Здесь может быть Ваша подпись
    • Просмотр профиля
Судя со скетча громкость можно задавать при начальном програмировании.

Но если дойдёт ум до мр3 модуля то там можно кнопками сделать.

Оффлайн ed13hell 21 Апреля 2017, 15:47:25 (#63)

  • Постоялец
  • ***
  • Сообщений: 28
  • Карма: +1/-0
  • Dum spiro - spero
    • Просмотр профиля
Чёто я в программе не вижу регулировки громкости))
Вот часть скетча, все равно не видите?

  mp3_set_serial (mySerial);      //Работаем с "Софтовым" портом
  delay (10);
  mp3_set_volume (20);            // Громкость (0-30)
  delay (10);
  mp3_set_EQ (2);                 // Эквалайзер (0 - Normal, 1 - Pop, 2 - Rock, 3 - Jazz, 4 - Classic, 5 - Bass)
  delay (10);
}

Но если дойдёт ум до мр3 модуля то там можно кнопками сделать.
Если Вы имеете ввиду кнопками на самом DF-плеере, то вынужден Вас огорчить...
Да, на самом плеере можно регулировать громкость кнопками, НО
при отключении/включении питания громкость автоматом устанавливается на максимум, а при программной регулировке останется на заданном уровне.

Еще один попутный вопрос:
как подкорректировать скетч, чтобы звонок проигрывал треки в случайном порядке?
  • « Последнее редактирование: 21 Апреля 2017, 19:17:54 от ed13hell »

Оффлайн Koshak 21 Апреля 2017, 20:38:21 (#64)

  • Отпусти меня чудо халфа
  • КотЭ
  • Ветеран
  • *
  • Сообщений: 2825
  • Карма: +271/-16
    • Просмотр профиля
    • Infotex Мир Хобби
как подкорректировать скетч, чтобы звонок проигрывал треки в случайном порядке?

https://www.dfrobot.com/wiki/index.php/DFPlayer_Mini_SKU:DFR0299

Вроде есть 0x08   Specify playback mode(0/1/2/3)   repeat/folder repeat/single repeat/random
В библиотеке вроде должен быть этот функционал  :-)
У кошки четыре ноги: вход, выход, земля и питание

Оффлайн ed13hell 21 Апреля 2017, 22:21:39 (#65)

  • Постоялец
  • ***
  • Сообщений: 28
  • Карма: +1/-0
  • Dum spiro - spero
    • Просмотр профиля
https://www.dfrobot.com/wiki/index.php/DFPlayer_Mini_SKU:DFR0299
Вроде есть 0x08   Specify playback mode(0/1/2/3)   repeat/folder repeat/single repeat/random
В библиотеке вроде должен быть этот функционал  :-)
Та он то там есть, вот только если бы я знал как его к скетчу прикошачить....

Оффлайн Koshak 24 Апреля 2017, 07:05:38 (#66)

  • Отпусти меня чудо халфа
  • КотЭ
  • Ветеран
  • *
  • Сообщений: 2825
  • Карма: +271/-16
    • Просмотр профиля
    • Infotex Мир Хобби
Та он то там есть, вот только если бы я знал как его к скетчу прикошачить....
Вот что нужно void mp3_random_play (); Я так понимаю нужно просто добавить в основной цикл программы.
У кошки четыре ноги: вход, выход, земля и питание

Оффлайн Алекс 24 Апреля 2017, 07:57:03 (#67)

  • Постоялец
  • ***
  • Сообщений: 27
  • Карма: +1/-0
  • Здесь может быть Ваша подпись
    • Просмотр профиля
Я пробывал там очень все не так, как хочется, в общем не работает в случайном порядке. Надо что бы включено было всё время.

Оффлайн Koshak 24 Апреля 2017, 19:54:56 (#68)

  • Отпусти меня чудо халфа
  • КотЭ
  • Ветеран
  • *
  • Сообщений: 2825
  • Карма: +271/-16
    • Просмотр профиля
    • Infotex Мир Хобби
А если так mp3_play(random(1, 5)); Должен играть пять треков рандомно  :-)
У кошки четыре ноги: вход, выход, земля и питание

Оффлайн ed13hell 26 Апреля 2017, 17:40:38 (#69)

  • Постоялец
  • ***
  • Сообщений: 28
  • Карма: +1/-0
  • Dum spiro - spero
    • Просмотр профиля
А если так mp3_play(random(1, 5)); Должен играть пять треков рандомно  :-)
Все никак, с этой командой рандомно играет, но без остановки,
с предыдущей вообще никак.

Оффлайн Koshak 27 Апреля 2017, 20:47:25 (#70)

  • Отпусти меня чудо халфа
  • КотЭ
  • Ветеран
  • *
  • Сообщений: 2825
  • Карма: +271/-16
    • Просмотр профиля
    • Infotex Мир Хобби
Скинь весь код.
У кошки четыре ноги: вход, выход, земля и питание

Оффлайн ed13hell 27 Апреля 2017, 21:13:34 (#71)

  • Постоялец
  • ***
  • Сообщений: 28
  • Карма: +1/-0
  • Dum spiro - spero
    • Просмотр профиля
Какой код?
Вообщето я уже писал ранее, что я с Ардуинами пока "чайник", сорри  ???
Если Вы о скетче, то вот он весь.

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

SoftwareSerial mySerial(10, 11); // RX, TX DF Плеера

void setup () {
  mySerial.begin (9600);
  pinMode(3, INPUT);
  digitalWrite(3, HIGH);
 pinMode(4, INPUT);
  digitalWrite(4, LOW);
  pinMode(13, OUTPUT);
  mp3_set_serial (mySerial);      //Работаем с "Софтовым" портом
  delay (10);
  mp3_set_volume (20);            // Громкость (0-30)
  delay (10);
  mp3_set_EQ (2);                 // Эквалайзер (0 - Normal, 1 - Pop, 2 - Rock, 3 - Jazz, 4 - Classic, 5 - Bass)
  delay (10);
}
void loop () {
bool  InputD4 = (digitalRead (4));
  boolean play_state = digitalRead(3);// Кнопка на прерывании D3
  if (InputD4 == HIGH)               // Читаем порт D4, закончился ли играть трек
  {                   
    digitalWrite(13, LOW);   
  if (play_state == LOW)
  {
    digitalWrite(13, HIGH);
    delay (10);
    mp3_next ();
  }
  }
    delay (100);
    }

Оффлайн Koshak 27 Апреля 2017, 21:28:23 (#72)

  • Отпусти меня чудо халфа
  • КотЭ
  • Ветеран
  • *
  • Сообщений: 2825
  • Карма: +271/-16
    • Просмотр профиля
    • Infotex Мир Хобби
Попробуй замени mp3_next (); на mp3_random_play ();
У кошки четыре ноги: вход, выход, земля и питание

Оффлайн ed13hell 27 Апреля 2017, 22:40:05 (#73)

  • Постоялец
  • ***
  • Сообщений: 28
  • Карма: +1/-0
  • Dum spiro - spero
    • Просмотр профиля
Попробуй замени mp3_next (); на mp3_random_play ();
Включаем питание, нажимаем кнопку и......
после проигрывания первой мелодии продолжает играть в случайном порядке без остановки.


  • « Последнее редактирование: 15 Мая 2017, 15:13:33 от ed13hell »

Оффлайн ed13hell 15 Мая 2017, 15:14:14 (#74)

  • Постоялец
  • ***
  • Сообщений: 28
  • Карма: +1/-0
  • Dum spiro - spero
    • Просмотр профиля
Я так понимаю, что по-этому поводу  (случайное воспроизведение) больше ни у кого умных мыслей нет......
Жаль....