Taula de continguts:

Reprodueix cançons amb Arduino mitjançant ADC a PWM a Flyback Transformer o Speaker: 4 passos
Reprodueix cançons amb Arduino mitjançant ADC a PWM a Flyback Transformer o Speaker: 4 passos

Vídeo: Reprodueix cançons amb Arduino mitjançant ADC a PWM a Flyback Transformer o Speaker: 4 passos

Vídeo: Reprodueix cançons amb Arduino mitjançant ADC a PWM a Flyback Transformer o Speaker: 4 passos
Vídeo: Exemple 4. Tons regulats amb un sensor analògic. 2024, Desembre
Anonim
Reprodueix cançons amb Arduino mitjançant ADC a PWM a Flyback Transformer o Speaker
Reprodueix cançons amb Arduino mitjançant ADC a PWM a Flyback Transformer o Speaker
Reprodueix cançons amb Arduino utilitzant ADC per PWM a Flyback Transformer o Speaker
Reprodueix cançons amb Arduino utilitzant ADC per PWM a Flyback Transformer o Speaker
Reprodueix cançons amb Arduino mitjançant ADC a PWM a Flyback Transformer o Speaker
Reprodueix cançons amb Arduino mitjançant ADC a PWM a Flyback Transformer o Speaker
Reprodueix cançons amb Arduino mitjançant ADC a PWM a Flyback Transformer o Speaker
Reprodueix cançons amb Arduino mitjançant ADC a PWM a Flyback Transformer o Speaker

Hola nois, Aquesta és la segona part de la meva altra instrucció (que era molt difícil). Bàsicament, en aquest projecte he utilitzat l'ADC i els TIMERS del meu Arduino per convertir el senyal d'àudio en un senyal PWM.

Això és molt més fàcil que el meu anterior instructable, aquí teniu l'enllaç del meu primer instructable si voleu veure-ho. enllaç

Per entendre la teoria del senyal d'àudio, la velocitat de bits, la profunditat de bits, la freqüència de mostreig, podeu llegir la teoria al meu últim tutorial sobre instructable. L’enllaç és a sobre.

Pas 1: coses que necessitem per a aquest projecte (requisits)

1. Taula Arduino (podem utilitzar qualsevol tauler (328, 2560), és a dir, Mega, Uno, Mini, etc, però amb pins diferents específics)

2. PC amb Arduino Studio.

3. Tauler de perfils o tauler de perfils

4. Connexió de cables

5. TC4420 (controlador Mosfet o tal cosa)

6. Potència Mosfet (canal N o P, si us plau, connecteu-lo en conseqüència) (he utilitzat el canal N)

7. Altaveu o transformador Flyback (Sí, ho heu llegit bé !!)

8. Font d'alimentació adequada (0-12V) (he utilitzat la meva pròpia font d'alimentació ATX)

9. Dissipador de calor (he recuperat del meu antic PC).

10. Un amplificador (amplificador de música normal) o un circuit d'amplificador.

Pas 2: teoria de l'ADC a PWM

Teoria de l'ADC a PWM
Teoria de l'ADC a PWM
Teoria de l'ADC a PWM
Teoria de l'ADC a PWM

Per tant, en aquest Projecte he utilitzat en ADC d'Arduino construït per fer mostreig de dades d'un senyal d'àudio.

ADC (convertidor analògic a digital) com el seu nom defineix, ADC converteix el senyal analògic en mostres digitals. I per a Arduino amb una profunditat màxima de 10 bits. Però, per a aquest projecte, farem servir mostreig de 8 bits.

Mentre fem servir l’ADC d’Arduino, hem de tenir present el voltatge ADC_reference.

Arduino Uno ofereix 1.1V, 5V (referència interna, que es pot definir definint en codi) o una referència externa (que hem d'aplicar externament al pin AREF).

Segons la meva experiència, s’hauria d’utilitzar un mínim de 2,0 V com a tensió de referència per obtenir un bon resultat de l’ADC. Com que 1.1V no em va anar bé almenys. (Experiència personal)

* IMPORTANT * * IMPORTANT ** IMPORTANT ** IMPORTANT ** IMPORTANT *

Hem d’utilitzar un senyal d’àudio amplificat d’un amplificador o un circuit d’amplificació amb un voltatge màxim (tensió màxima) de 5V

Perquè he establert la referència de tensió interna de 5V per al nostre projecte. I estic fent servir un senyal amplificat mitjançant un amplificador normal (amplificador de música), que està disponible principalment a la nostra llar o podeu crear-ne un per vosaltres mateixos.

Així que ara la part principal. Taxa de mostreig, que és la quantitat de mostres que pren el nostre ADC per segon, més és la taxa de conversió, millor serà el resultat de sortida, més similar serà l’ona de sortida en comparació amb l’entrada.

Per tant, utilitzarem una freqüència de mostreig de 33,33 Khz en aquest projecte, establint el rellotge ADC a 500 Khz. Per entendre com és així, hem de veure la pàgina de sincronització ADC a la fitxa tècnica del xip Atmega (328p).

Podem veure que necessitem 13,5 cicles de rellotge ADC per completar una mostra amb mostreig automàtic. Amb una freqüència de 500 Khz, significa 1/500 Khz = 2uS per a un cicle ADC, el que significa que es necessiten 13,5 * 2uS = 27uS per completar una mostra quan s’utilitza el mostreig automàtic. En donar 3uS més al microcontrolador (per al costat segur), obteniu un total de 30uS totalment per a una mostra.

Per tant, 1 Mostra a 30uS significa 1 / 30uS = 33,33 KSamples / S.

Per establir la freqüència de mostreig, que depèn de TIMER0 d'Arduino, perquè el disparador de mostreig automàtic ADC depèn d'aquest en el nostre cas, com també podeu veure al codi i a la fitxa tècnica, hem fet el valor de OCR0A = 60 (Per què?) ???)

Perquè segons la fórmula donada al full de dades.

freqüència (o aquí Sample Rate) = Freqüència de rellotge d'Arduino / Prescaler * Valor de OCR0A (en el nostre cas)

Freqüència o freqüència de mostra que volem = 33,33 KHz

Freqüència de rellotge = 16 MHz

Valor del preescalador = 8 (en el nostre cas)

Valor de OCR0A = volem trobar ??

que simplement dóna OCR0A = 60, també al nostre codi Arduino.

TIMER1 s'utilitza per a l'ona portadora d'un senyal d'àudio, i no entraré en tants detalls d'això.

Per tant, aquesta era la breu teoria del concepte d’ADC a PWM amb Arduino.

Pas 3: Esquema

Esquema
Esquema

Connecteu tots els components tal com es mostra a l'esquema. Teniu aquí dues opcions: -

1. Connecteu un altaveu (connectat amb 5V)

2. Connecteu un transformador Flyback (connectat amb 12V)

He provat les dues coses. I tots dos funcionen força bé.

* IMPORTANT * * IMPORTANT ** IMPORTANT ** IMPORTANT ** IMPORTANT * Necessitem utilitzar un senyal d'àudio amplificat d'un amplificador o un circuit d'amplificador amb una tensió màxima (tensió màxima) de 5V

Exempció de responsabilitat: -

* Recomano utilitzar Flyback Transformer amb precaució, ja que pot ser perillós perquè produeix altes tensions. I no seré responsable de cap dany. *

Pas 4: prova final

Per tant, pengeu el codi donat al vostre Arduino i connecteu el senyal amplificat al pin A0.

I no oblideu connectar tots els pins de terra a una terra comuna.

I simplement gaudeix escoltant música.

Recomanat: