Новости:

Форум Infotex WeaponMod

Тема: Roger Beep MP3  (Прочитано 705 раз)

Оффлайн Love777888 22 Августа 2017, 11:02:58 (#15)

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

Оффлайн Koshak 22 Августа 2017, 19:15:26 (#16)

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

Оффлайн Koshak 05 Сентября 2017, 20:40:20 (#17)

  • Отпусти меня чудо халфа
  • КотЭ
  • Ветеран
  • *
  • Сообщений: 2458
  • Карма: +224/-16
    • Просмотр профиля
    • Infotex Мир Хобби
Второй вариант. Мелодии положить в папку mp3, один файл переименовать в 0001.mp3 или 0001.wav в зависимости от типа файла.
Кнопку переключения режимов вешаем на D7 относительно земли.

Цитировать
#include <SoftwareSerial.h>
#include "DFPlayer_Mini_Mp3.h"

#define PIN_BUTTON  9
#define PIN_LED     13
#define PIN_BUSY    8
#define PIN_TG_BUT  7 //переключение режима воспроизведения (0 - по порядку, 1 - файл с названием "0001.mp3")

SoftwareSerial mySerial(10, 11); // RX, TX

int fsmState = 0;

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin
  pinMode(PIN_BUTTON, INPUT);
  digitalWrite(PIN_BUTTON, HIGH);
  pinMode(PIN_LED, OUTPUT);
  digitalWrite(PIN_LED, LOW);
  pinMode(PIN_BUSY, INPUT);
  digitalWrite(PIN_BUSY, HIGH);
  pinMode(PIN_TG_BUT, INPUT);
  digitalWrite(PIN_TG_BUT, HIGH);
 

  Serial.begin(9600);
  mySerial.begin (9600);
 
  mp3_set_serial (mySerial);  //set softwareSerial for DFPlayer-mini mp3 module
  mp3_set_volume (15);
  mp3_single_loop (false);
}

// the loop function runs over and over again forever
void loop() {

  switch (fsmState) {
    case 0:
      if (!digitalRead(PIN_BUTTON))
      {
        delay(100);
        if (!digitalRead(PIN_BUTTON))
        {
          delay(100);
          if (!digitalRead(PIN_BUTTON))
          {
            fsmState++;
            digitalWrite(PIN_LED, HIGH);
          }
        }
      }
    break;
   
    case 1:
      if (digitalRead(PIN_BUTTON))
      {
        fsmState++;
        if (digitalRead(PIN_TG_BUT)) mp3_play(1);
        else mp3_next();
        delay(100);
      }
    break;
   
    case 2:
      if (digitalRead(PIN_BUSY))
      {
        digitalWrite(PIN_LED, LOW);
        fsmState = 0;
      }
    break;
  }
}
У кошки четыре ноги: вход, выход, земля и питание