Воспроизведение звука, шум в динамике.
- Войдите на сайт для отправки комментариев
Сб, 28/06/2014 - 13:57
Добрый день.
Играю звук вот этой библиотекой. Режим 8 бит моно.
http://www.hackerspace-ffm.de/wiki/index.php?title=SimpleSDAudio#Windows_users
Подключаю активный динамик (аудио вход tv, в качестве эксперимента просто) по схеме из примера:
Using amplifier / active speaker / line-in etc.:
Audio-Pin --||--------------[10k resistor]----+----[1k resistor]---- GND
100nF capacitor to amp
Программа играет подготовленные файлы, в зависимости от полученного по serial символа, библиотека деиницилизируется после каждого проигрывания. В наушнике все хорошо, а при подключении тв после проигрывания звука остается фоновый шум. В целом работает так: перезапуск контроллера - в динамике тишина, шума нет. Отправляю символ, играет звук (фоновый шум во время воспроизведения устраивает, 8 бит все-таки), файл заканчивается, шум остается (((
Вот код:
#include <SimpleSDAudio.h> void setup() { Serial.begin(9600); } void loop(void) { if(Serial.available()){ soundplay (Serial.read()); } } void soundplay (char s) { SdPlay.init(SSDA_MODE_FULLRATE | SSDA_MODE_MONO | SSDA_MODE_AUTOWORKER); switch (s) { case 'p': SdPlay.setFile("EXAMPLE.AFM"); subplay (); break; case 'o': SdPlay.setFile("RVP.AFM"); subplay (); break; case 'i': SdPlay.setFile("RVP.AFM"); subplay (); SdPlay.setFile("EXAMPLE.AFM"); subplay ();break; } SdPlay.deInit(); } void subplay() { Serial.println ("play"); // Start playback SdPlay.play(); // Optional: Wait until playback is finished while(!SdPlay.isStopped()) {;} delay (50); Serial.println ("done"); }
Как победить? Спасибо.
Попробуйте установить пин в хай\лоу после окончания проигрывания
Точно. ))) Помогло, спасибо. ;)