WTV020SD как сделать воспроизведение без пауз?
- Войдите на сайт для отправки комментариев
Пт, 11/12/2015 - 09:44
Здравствуйте, есть звуковой модуль WTV020SD, при цикличном воспроизведении мелодии - присутствует пауза. Модуль хочу использовать для имитации звука работающего двигателя в игрушечной модели. Звук должен быть непрерывным естественно. Может кто сталкивался с этой бедой? Как сделать воспроизведение без пауз?
Чуть не забыл))
#include <Wtv020sd16p.h> const int buttonPin = 12; int resetPin = 2; // The pin number of the reset pin. int clockPin = 3; // The pin number of the clock pin. int dataPin = 4; // The pin number of the data pin. int busyPin = 5; // The pin number of the busy pin. int buttonState = 0; /* Create an instance of the Wtv020sd16p class. 1st parameter: Reset pin number. 2nd parameter: Clock pin number. 3rd parameter: Data pin number. 4th parameter: Busy pin number. */ Wtv020sd16p wtv020sd16p(resetPin, clockPin, dataPin, busyPin); void setup() { pinMode(buttonPin, INPUT); wtv020sd16p.reset(); } void loop() { //Plays synchronously an audio file 0. Busy pin is used for this method. buttonState = digitalRead(buttonPin); if (buttonState == HIGH) { wtv020sd16p.asyncPlayVoice(0); delay(300); } else { wtv020sd16p.stopVoice(); } }Думаю что не получится, у меня не получилось во всяком случае. Буду рад если кто подскажет как эту задержку побороть.
А если по существу то между тем как вы подали команду STOP, и готовностью модуля к приему следующей команды PLAY проходит проходит некоторое время. Дома могу посмотреть, разбирался в свое время с этим модулем. Мне надо было сделать речевой информатор. В принципе та задержка между проигрыванием файлов что имеет этот модуль мне подходила.
Да я уж решил, как буду делать: делаю 2 секундный звуковой файл запуска двигателя, 20 минутный звуковой файл работы двигателя. Аудиомодуль будет подключен к атмеге 8 (которая преднаязначена будет только для воспроизведения двух этих звуковых файлов). При включении кнопки на пульте д\у - ардуино мини будет запитывать атмегу, которая будет проигрывать звук запуска и работы двигателя. Так же с пульта будет обесточиваться атмега. Звук уже готов, код накидан.
#include <Wtv020sd16p.h> int resetPin = 2; // The pin number of the reset pin. int clockPin = 3; // The pin number of the clock pin. int dataPin = 4; // The pin number of the data pin. int busyPin = 5; // The pin number of the busy pin. /* Create an instance of the Wtv020sd16p class. 1st parameter: Reset pin number. 2nd parameter: Clock pin number. 3rd parameter: Data pin number. 4th parameter: Busy pin number. */ Wtv020sd16p wtv020sd16p(resetPin, clockPin, dataPin, busyPin); void setup() { wtv020sd16p.reset(); } void loop() { wtv020sd16p.asyncPlayVoice(3); delay(2000); wtv020sd16p.playVoice(0); delay(100); }Как кто так, топорно конечно, но зато сын будет доволен)