Infotex Мир Хобби
Hard&Soft => Радиолюбителю => Arduino UNO => Тема начата: Koshak от 05 Августа 2017, 14:00:14
-
По просьбам накидан код для RB :-) Заливать можно в любую Ардуину :-)
#include <SoftwareSerial.h>
#include "DFPlayer_Mini_Mp3.h"
#define PIN_BUTTON 9
#define PIN_LED 13
#define PIN_BUSY 8
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);
Serial.begin(9600);
mySerial.begin (9600);
mp3_set_serial (mySerial); //set softwareSerial for DFPlayer-mini mp3 module
mp3_set_volume (15);
}
// 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++;
mp3_next();
delay(100);
}
break;
case 2:
if (digitalRead(PIN_BUSY))
{
digitalWrite(PIN_LED, LOW);
fsmState = 0;
}
break;
}
}
Подключение:
Arduino DFPlayer
D8-----> BUSY
D10----> RX (UART) подключать через резюки на 3,3к! вход у плеера не толерантный к VCC 5V!
D11----> TX (UART)
Кнопу PTT вешаем на D9 относительно земли, подтяжек к VCC не нужно.
Выход управления берём с D13, вешаем транзистор в базу резистор на 10к
Вроде всё :D Просьба отписаться и видосы как работает)))
-
Спасибо!!!
-
Пришло два модуля плеера, ни один не запускается, замыкая корпус на ио2 играет,по сериал работать не хочет, что может быть?
-
Нашел, тх и rx, спутаны были подключил по аналогии, мп3 звонка, все заработало.
-
Ещё просьба, использовать любой вход ардуино, для того чтобы устанавливать определенный трек, т.е не мучать людей постоянным рандомом :D, а например я включил включатель и плеер поет именно классический бип, например это будет 001 композиция. Выключил тумблер опять рандом :D
-
Сейчас пока не до этого :-) В дальнейшем думаю будет такой функционал.
-
Ок, подождем, времени вагон и маленькая тележка
-
Добрый день, как вы боролись с земляными помехами? Получается когда работает плеер, идет фон, если подать питание на сам плеер отдельно от другого источника питания фона нет, все чистенько. Подал общий на Dabvss, стало лучше, но фон все равно есть. Может кто чего подскажет
-
А с какой лапки снимается аудио сигнал?
-
О хорошо, что ответили, снимаю не с усилителя, а с левого или правого канала, усилитель сдул на всякий случай с платки, думал из за него идет фон. Кстати фон идет типа по тональности герц 100-200, зависящий от темпа проигрываемой мелодии, т.е я так понял типа если декодер загружен сильнее тем больше этих помех. Устраняет дело подключение стороннего питания на сам плеер, но где мне его взять в трансивере, ставить еще один преобразователь, это импульсные помехи трансиверу на прием. Нужно попробовать, но чувствую это будут сплошные помехи в эфире.
-
На ардуину сколько подаёшь и от какого источника?
-
На ардуино подаю, от внутреннего стабилизатора 8в, чтоб встроенная кренка на 5в меньше грелась. Ее выход цеплял через диод на плеер, пробовал отдельно питать через 7805 стаб, тоже зудит, дело в развязке шин общего провода. Типа каждое устройство должно питаться отдельными проводами питания от одного же источника.
-
Ну тут нужно юзать две земли одну для цифры другую для аналога, землю заводите надеюсь не по одному проводку :po:
Вообще к какой станцульке подключаете? Подключать лучше после micpream плюс повесить примитивный фнч.
-
Добрый день, рация alan8001, сегодня попробую доразбираться с землями, я писал выше, что подал на dacvss отдельно землю, стало лучше но зудение осталось. Кстати многие мучаются с этим вопросом, особенно на заграничных форумах. Многие даже и не задаются такими вопросами. А фнч зачем? Подаю как раз на микпреамп, в ардуино просто volume (3) поставил, но пришлось еще подстроечник поставить, чтоб еще снизить сигнал плеера.
-
Решил вопрос, накидыванием толстого провода массы на плеер, зуд ушел :D, скоро засниму как люди будут воспринимать мой бип :D
-
На счет фнч, я понял вы имеете ввиду, что бы частоты выше к примеру 5кГц, не загружали последующие каскады трансивера, я правильно понял?
-
Да ФНЧ нужен, отрезать всё не нужное в спектре плеера.
-
Второй вариант. Мелодии положить в папку 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;
}
}
-
Приветствую!!! Давно не заходил сюда, вобщем вы извините меня но видео не записал, когда тестил роджер, при первом включении после установки антенны GP, народ не однозначно это воспринял, кто то начал говорить типа о прикольно, веселый ты по ходу там :D :D :D, давай еще :D :D :D :D, а некоторые после смеха дятла вуди :D :D :D, начали материться :D :D :D, ну в принципе я этого ожидал, поэтому спасибо за код сейчас прошью, а то нытики :nexx: ноют там, флешь пока вытащил а то некоторые волосы рвут у себя на одном месте :D :D :D
-
Работает! Люди успокоились, :D,
-
Отлично :$
-
В скетч добавте эффек FADE
#include <SoftwareSerial.h>
#include "DFPlayer_Mini_Mp3.h"
#define PIN_BUTTON 5
#define PIN_LED 7
#define PIN_BUSY 2
SoftwareSerial mySerial(3, 4); // 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);
Serial.begin(9600);
mySerial.begin (9600);
mp3_set_serial (mySerial); //set softwareSerial for DFPlayer-mini mp3 module
mp3_set_volume (25);
}
// 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++;
mp3_next();
delay(100);
}
break;
case 2:
if (digitalRead(PIN_BUSY))
{
digitalWrite(PIN_LED, LOW);
fsmState = 0;
}
break;
}
}
-
void loop () {
boolean play_state = digitalRead(3);// Кнопка на прерывании D3
if (play_state == LOW) {
digitalWrite(13, HIGH);
delay (10);
mp3_next ();
delay(190000); // --- Вот сюда вставить команду ожидания конца трека.
digitalWrite(13, LOW);
for (int i = vol; i >= 1; i--) { // Эффект FADE
mp3_set_volume (i);
delay (100);
}
}
delay (10);
mp3_stop ();
delay (10);
mp3_set_volume (vol);
}
-
?
-
А зачем для RogerBeep эффект Fade :3:
-
для музыкального звонка
-
для музыкального звонка
Тема про звонок тут http://infotex58.ru/forum/index.php?topic=989.0
Fade будет))
-
nou не будет.
Не работает с тем скетчем. Nano.
-
Для того что бы сделать корректный FADE нужно знать длину трека, если чип таких данных не отдаёт будет не реально сделать, вообщем нужно почитать документацию :-)
-
Документация не при чём.
Схемотехнику переделывать, подтяжку вешать, радио кнопку, итд.