Vorrei far riprodurre un suono tipo wave ad arduino prendendo il file dalla memoria SD inserita nello shield touch e mandarlo ad un modulo creato con LM386 e speaker.
Come posso fare? Utilizzo quale metodo?
Grazie
Vorrei far riprodurre un suono tipo wave ad arduino prendendo il file dalla memoria SD inserita nello shield touch e mandarlo ad un modulo creato con LM386 e speaker.
Come posso fare? Utilizzo quale metodo?
Grazie
L'Arduino (anzi, l'Atmega) necessita di essere programmato per per poter riprodurre file .wav. A ciò aggiungici che hai bisogno di amplificare il segnale perché non puoi pilotare un altoparlante direttamente con un pin di Arduino.
Ti consiglio di iniziare a studiarti questo prodotto di Adafruit:
E' uno shield che legge un file .WAV da una SD e lo decodifica via software. Dallo schema puoi prenderti anche il gruppo di amplificazione.
L'amplificatore sto cercando di realizzarlo io con LM386.
Adesso l'unica mia mission è leggere da SD e quindi codificare il wav. Quali librerie posso usare che siano libere da un componente specifico?
Grazie
Nella pagina che ti ho segnalato c'era un collegamento a questa pagina:
dove trovi una libreria scritta da Adafruit ed un esempio per leggere un file WAV.
Per convertire un file audio, segui questa guida:
Per riprodurre il file WAV devi usare un uscita digitale pilotata in PWM a 16kHz (due se il file è stereo) per ottenere 8 kHz di banda.
L'uscita deve essere seguita da un filtro RC con taglio a 8 kHz.
Ti consiglio, però, un modulo audio LPM11162 che ha una qualità decisamente superiore e costa relativamente poco:
Sto cercando di realizzare un sistema di allarme molto economico quindi dovrei riprodurre una sirena e alcune voci, non ho bisogno di un modulo da 22 dollari/euro avendo una LM386 e condensatori/resistenze a gogo vorrei sfruttare queste se possibile.
Non ho bisogno di realizzare un amplificatore per la musica ![]()
Una volta sviluppato questo elemento http://4.bp.blogspot.com/-y70HfpyuSSg/U6RiEv5XgpI/AAAAAAAAC20/XhZlF0xXH7E/s1600/lm386-200.gif come faccio a fissare a 16k hrz una porta digitale? Dovrei riprodurre l'audio in mono.
Grazie
Innanzitutto devi imparare ad usare i timer di Arduino per ottenere la frequenza di PWM di tuo interesse.
Dovrai lavorare con i registri dei timer e quindi imparare ad usarli.
Per facilitarti il calcolo puoi usare Arduino Companion del buon Leo e Guglielmo.
Ti avverto che non è una cosa semplice e solo questo ti richiederà diverse ore di studio.