Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.sci.electronics > #243571 > unrolled thread

Audio-Line-In für den ATmega328

Started byManuel Reimer <manuel.nulldevice@nurfuerspam.de>
First post2018-05-05 11:12 +0200
Last post2018-05-08 02:10 +0200
Articles 13 — 9 participants

Back to article view | Back to de.sci.electronics


Contents

  Audio-Line-In für den ATmega328 Manuel Reimer <manuel.nulldevice@nurfuerspam.de> - 2018-05-05 11:12 +0200
    Re: Audio-Line-In für den ATmega328 "MaWin" <me@private.net> - 2018-05-05 11:59 +0200
      Re: Audio-Line-In für den ATmega328 Manuel Reimer <manuel.nulldevice@nurfuerspam.de> - 2018-05-05 15:00 +0200
        Re: Audio-Line-In für den ATmega328 Gerhard Hoffmann <gerhard@hoffmann-hochfrequenz.de> - 2018-05-05 15:39 +0200
        Re: Audio-Line-In für den ATmega328 Christian Müller <spamalottomat@yahoo.de> - 2018-05-05 15:45 +0200
    Re: Audio-Line-In für den ATmega328 Rafael Deliano <rafael_deliano@arcor.de> - 2018-05-05 12:24 +0200
    Re: Audio-Line-In für den ATmega328 Eric Bruecklmeier <usenet@nerdcraft.de> - 2018-05-05 13:11 +0200
      Re: Audio-Line-In für den ATmega328 Manuel Reimer <manuel.nulldevice@nurfuerspam.de> - 2018-05-05 14:56 +0200
        Re: Audio-Line-In für den ATmega328 Christian Müller <spamalottomat@yahoo.de> - 2018-05-05 15:57 +0200
    Re: Audio-Line-In für den ATmega328 Marte Schwarz <marte.schwarz@gmx.de> - 2018-05-06 13:21 +0200
    Re: Audio-Line-In für den ATmega328 Volker Bartheld <news2018@bartheld.net> - 2018-05-07 12:44 +0200
      Re: Audio-Line-In für den ATmega328 Marte Schwarz <marte.schwarz@gmx.de> - 2018-05-07 20:40 +0200
        Re: Audio-Line-In für den ATmega328 Sieghard Schicktanz <Sieghard.Schicktanz@SchS.de> - 2018-05-08 02:10 +0200

#243571 — Audio-Line-In für den ATmega328

FromManuel Reimer <manuel.nulldevice@nurfuerspam.de>
Date2018-05-05 11:12 +0200
SubjectAudio-Line-In für den ATmega328
Message-ID<pcjsid$cd3$1@dont-email.me>
Hallo,

zu allererst: Mir geht es nicht um "Genauigkeit" sondern das ganze wird 
ein "Spielprojekt".

Ich möchte basierend auf einem Audio-Signal, bzw. dessen 
Frequenzverlauf, einige LEDs steuern.

Dafür muss erstmal ein "Line-In" an einen Analogeingang.

Ich hab mir das gerade mal am Oszi angeschaut und das Line-Signal 
scheint nicht über +-2V rauszugehen.

Pragmatische und einfache Lösung, die mir gerade vorschwebt: Den 
Analogeingang mit zweimal 2K Widerständen als Spannungsteiler auf 2,5V 
hängen und dann das Analogsignal über einen Kondensator (100nF?) einkoppeln.

Bedenken habe ich nur in der Form, dass ein Signal mit höherem Pegel den 
Analogeingang dann wohl doch kleiner 0V oder größer 5V treiben könnte.

Bessere Vorschläge? Mir geht es eigentlich nur darum, dass der Atmel 
nicht verreckt. Wie erwähnt muss nichts "genau" sein. Eine einfache FFT 
muss laufen. Mehr nicht. Und allzuviel Teile-Vorrat habe ich auch nicht 
da. Als Eingangsspannung stehen nur +5V und +3,3V zur Verfügung.

Gruß

Manuel

[toc] | [next] | [standalone]


#243573

From"MaWin" <me@private.net>
Date2018-05-05 11:59 +0200
Message-ID<pcjvan$4jd$1@news.albasani.net>
In reply to#243571
"Manuel Reimer" <manuel.nulldevice@nurfuerspam.de> schrieb im Newsbeitrag 
news:pcjsid$cd3$1@dont-email.me...

> Pragmatische und einfache Lösung, die mir gerade vorschwebt: Den 
> Analogeingang mit zweimal 2K Widerständen als Spannungsteiler auf 2,5V 
> hängen und dann das Analogsignal über einen Kondensator (100nF?) 
> einkoppeln.

100nF bestimmt natürlich die untere Grenzfrequenz.

> Bedenken habe ich nur in der Form, dass ein Signal mit höherem Pegel den 
> Analogeingang dann wohl doch kleiner 0V oder größer 5V treiben könnte.

Bau noch einen Widerstand vor den Koppelkondensator.
Der wirkt zwar als Spannungsteiler, aber auch als Strombegrenzung wenn doch
mal eine Spannung angelegt wird, wie es beim Anschliessen unsymmetrisch
versorgter Audioquellen möglich sind kann.

> Bessere Vorschläge? Mir geht es eigentlich nur darum, dass der Atmel nicht 
> verreckt. Wie erwähnt muss nichts "genau" sein. Eine einfache FFT muss 
> laufen. Mehr nicht. Und allzuviel Teile-Vorrat habe ich auch nicht da. Als 
> Eingangsspannung stehen nur +5V und +3,3V zur Verfügung.

                   VCC
                    |
                   22k
                    |
Audio --10k--100nF--+-- A/D
                    |
                   22k
                    |
                   GND

-- 
MaWin, Manfred Winterhoff, mawin at gmx dot net
Homepage http://www.oocities.org/mwinterhoff/
dse-FAQ: http://dse-faq.elektronik-kompendium.de/

[toc] | [prev] | [next] | [standalone]


#243581

FromManuel Reimer <manuel.nulldevice@nurfuerspam.de>
Date2018-05-05 15:00 +0200
Message-ID<pck9tu$7eh$1@dont-email.me>
In reply to#243573
On 05/05/2018 11:59 AM, MaWin wrote:
> 100nF bestimmt natürlich die untere Grenzfrequenz.

Stimmt. Ich werde also wohl doch besser einen kleinen Elko mit ein paar 
µF da hinbauen.

>                    VCC
>                     |
>                    22k
>                     |
> Audio --10k--100nF--+-- A/D
>                     |
>                    22k
>                     |
>                    GND

Danke. Genau so werde ich es versuchen. Den Kondensator mache ich 
entsprechend größer.

Muss es ein Unipolarer sein oder reicht es den Pluspol zur Quelle zu setzen?

Gruß

Manuel

[toc] | [prev] | [next] | [standalone]


#243582

FromGerhard Hoffmann <gerhard@hoffmann-hochfrequenz.de>
Date2018-05-05 15:39 +0200
Message-ID<fl5qheFkii9U1@mid.individual.net>
In reply to#243581
Am 05.05.2018 um 15:00 schrieb Manuel Reimer:
> On 05/05/2018 11:59 AM, MaWin wrote:
>> 100nF bestimmt natürlich die untere Grenzfrequenz.
> 
> Stimmt. Ich werde also wohl doch besser einen kleinen Elko mit ein paar 
> µF da hinbauen.
> 
>>                    VCC
>>                     |
>>                    22k
>>                     |
>> Audio --10k--100nF--+-- A/D
>>                     |
>>                    22k
>>                     |
>>                    GND
> 
> Danke. Genau so werde ich es versuchen. Den Kondensator mache ich 
> entsprechend größer.
> 
> Muss es ein Unipolarer sein oder reicht es den Pluspol zur Quelle zu 
> setzen?

Gemeint ist wohl "muss es ein bipolarer sein..."
und mit "Eingangsspannung 3.3/5V" ist wohl Versorgungsspannung gemeint.

Wenn "audio" um 0V zentriert ist, dann muss der Pluspol nach rechts, 
weil Vcc/2 positiver ist als 0.

Bei einem unipolaren Alu-Elko ist der schwaze Streifen auf der 
Minus-Seite, bei einem Tantal auf der Plus-Seite.
Folienkondensatoren gehen natürlich immer, da ist es egal.

Gruß, Gerhard

[toc] | [prev] | [next] | [standalone]


#243583

FromChristian Müller <spamalottomat@yahoo.de>
Date2018-05-05 15:45 +0200
Message-ID<fl5r2bFkmd9U1@mid.individual.net>
In reply to#243581
Manuel Reimer schrieb:

> Muss es ein Unipolarer [Kondensator] sein oder reicht es den Pluspol zur Quelle zu setzen?

Wenn die Quelle ein positiveres Potential als der Mittelpunkt deines Spannungsteilers hat,
muss der Pluspol zur Quelle zeigen.
Damit ist das statische Potential gemeint - nicht die zu übertragenden Wechselspannung.


Gruß Christian 

[toc] | [prev] | [next] | [standalone]


#243574

FromRafael Deliano <rafael_deliano@arcor.de>
Date2018-05-05 12:24 +0200
Message-ID<pck0pl$k29$1@dont-email.me>
In reply to#243571
 > Analogeingang Widerständen als Spannungsteiler auf 2,5V
> hängen

Man könnte parallel zu den Widerständen Schottky-Dioden
( BAT43 bedrahtet ) vorsehen.

> einige LEDs steuern ... einfache FFT muss laufen.

Der AVR ist zwar relativ schnell für 8 Bit CPU, kann
aber mühsam werden.
Die Alternative zu FFT ist Filterbank, aber
selten unaufwendiger. Es sei denn, man hat nur wenige
Kanäle/LEDs.
D.h. muß man sich klarwerden darüber wieviel LEDs und
welche obere Grenzfrequenz man will.

MfG  JRD

[toc] | [prev] | [next] | [standalone]


#243577

FromEric Bruecklmeier <usenet@nerdcraft.de>
Date2018-05-05 13:11 +0200
Message-ID<fl5hrhFhc2bU3@mid.individual.net>
In reply to#243571
Am 05.05.2018 um 11:12 schrieb Manuel Reimer:
> Hallo,
> 
> zu allererst: Mir geht es nicht um "Genauigkeit" sondern das ganze wird 
> ein "Spielprojekt".
> 
> Ich möchte basierend auf einem Audio-Signal, bzw. dessen 
> Frequenzverlauf, einige LEDs steuern.
> 
> Dafür muss erstmal ein "Line-In" an einen Analogeingang.
> 
> Ich hab mir das gerade mal am Oszi angeschaut und das Line-Signal 
> scheint nicht über +-2V rauszugehen.
> 
> Pragmatische und einfache Lösung, die mir gerade vorschwebt: Den 
> Analogeingang mit zweimal 2K Widerständen als Spannungsteiler auf 2,5V 
> hängen und dann das Analogsignal über einen Kondensator (100nF?) 
> einkoppeln.

Warum das C so klein?


-- 
Werbung:
https://www.buecher.de/shop/bier/bier-brauen/bruecklmeier-jan/products_products/detail/prod_id/48123843/

[toc] | [prev] | [next] | [standalone]


#243580

FromManuel Reimer <manuel.nulldevice@nurfuerspam.de>
Date2018-05-05 14:56 +0200
Message-ID<pck9m1$4un$1@dont-email.me>
In reply to#243577
On 05/05/2018 01:11 PM, Eric Bruecklmeier wrote:
> Warum das C so klein?

Weil das ein Schuss ins Blaue war. Ist mir schon klar, dass jede 
R/C-Kombination einen Filter darstellt. Bin mir nur noch nicht sicher 
welche Werte hier optimal sind wenn der Audio-Bereich durchgelassen 
werden soll.

Gruß

Manuel

[toc] | [prev] | [next] | [standalone]


#243584

FromChristian Müller <spamalottomat@yahoo.de>
Date2018-05-05 15:57 +0200
Message-ID<fl5rl7Fkqn6U1@mid.individual.net>
In reply to#243580
Manuel Reimer schrieb:

> Bin mir nur noch nicht sicher welche Werte hier optimal sind
> wenn der Audio-Bereich durchgelassen werden soll.

sowie:

> Mir geht es nicht um "Genauigkeit" sondern das ganze wird
> ein "Spielprojekt".

> Ich möchte basierend auf einem Audio-Signal, bzw. dessen Frequenzverlauf, einige LEDs steuern.

Wieviel "Gezappel" sollen die Leuchtdioden denn darstellen?
Wenn das angelegte Audio-Signal noch in den höchsten Höhen
eine wahrnehmbare Reaktion bei den LED haben soll, musst du
die Grenzfrequenz deines Filters entsprechend hoch setzen.

Lade dir doch für dein Smartphone eine App "Spektrumanalyzer" runter.
Da kannst du sehen, welche Frequenzen bei Musik auftreten.
Dann halte ein Blatt Papier über die rechte Seite der Anzeige und
verschiebe es nach links, bis du mit dem Ergebnis unzufrieden wirst.
Die höchste Frequenz, die du dann noch sehen kannst, ist die
Grenzfrequenz deines Filters für deine LED-Ansteuerung.


Gruß Christian 

[toc] | [prev] | [next] | [standalone]


#243613

FromMarte Schwarz <marte.schwarz@gmx.de>
Date2018-05-06 13:21 +0200
Message-ID<pcmofh$1ol$1@news2.open-news-network.org>
In reply to#243571
Hi Manuel,

> Ich hab mir das gerade mal am Oszi angeschaut und das Line-Signal 
> scheint nicht über +-2V rauszugehen.

Ich würde die bereits vorgeschlagene Schaltung für 1,1 V interne 
Referenz machen, also den Spannungsteiler so auslegen, dass Du auf +- 
0,5 V bei 0,5 V Offset kommst. So kannst Du den Dynamikumfang voll 
ausnutzen und kannst dann mit 8 Bit Wandeln und rechnen. Das dürfe die 
Rechenzeit positiv beeinflussen. Wenn Du dann noch den Hochpass bewusst 
höher ziehst, kannst Du den Teiler günstiger ausnutzen, weil die großen 
Pegel in der Regel nur bei Bässen kommen. Wenn die mit dem HP gedämpft 
werden, dann kannst Du die Höhen mehr abtasten.

Marte

[toc] | [prev] | [next] | [standalone]


#243648

FromVolker Bartheld <news2018@bartheld.net>
Date2018-05-07 12:44 +0200
Message-ID<uz86ks3ntpol$.dlg@news.bartheld.net>
In reply to#243571
Hallo!

On Sat, 5 May 2018 11:12:45 +0200, Manuel Reimer wrote:
> Ich möchte basierend auf einem Audio-Signal, bzw. dessen Frequenzverlauf,
> einige LEDs steuern. [...] Eine einfache FFT muss laufen. [..]

Ergänzend zu dem, was meine Vorredner schon gesagt haben: Im Arduino läuft
der ADC mit dem Systemtakt dividiert durch den sog. Prescale-Faktor.
Standardmäßig sind das 16MHz/128=125kHz. Für die Konvertierung sind IIRC 13
ADC Taktzyklen notwendig, die Samplerate beträgt also irgendwas um 9600kHz.

Für eine FFT willst Du aber evtl. etwas mehr Samples haben (mindestens
zwei) um die jeweilige Frequenz aufzulösen und die Rechnerei mit den
Winkelfunktionen kostet ebenfalls Zeit.

Wenn man etwas Genauigkeit aufgibt, kann man den Prescaler auf 16 setzen,
das ergäbe dann ca. 77kHz.

Irgendwo aus der ATMEL-Doku:

"[...] The ADC accuracy also depends on the ADC clock. The recommended
maximum ADC clock frequency is limited by the internal DAC in the
conversion circuitry. For optimum performance, the ADC clock should not
exceed 200 kHz. However, frequencies up to 1 MHz do not reduce the ADC
resolution significantly.

Operating the ADC with frequencies greater than 1 MHz is not characterized.
[...]"

Evtl. dürfte Dich auch
https://sites.google.com/site/measuringstuff/the-arduino
interessieren.

Ciao,
Volker

[toc] | [prev] | [next] | [standalone]


#243652

FromMarte Schwarz <marte.schwarz@gmx.de>
Date2018-05-07 20:40 +0200
Message-ID<pcq6jg$3pc$1@news2.open-news-network.org>
In reply to#243648
Hi Volker,
> Im Arduino läuft
> der ADC mit dem Systemtakt dividiert durch den sog. Prescale-Faktor.
> Standardmäßig sind das 16MHz/128=125kHz. Für die Konvertierung sind IIRC 13
> ADC Taktzyklen notwendig, die Samplerate beträgt also irgendwas um 9600kHz.

Ist es bei Arduino eigentlich noch immer so, dass man nur 
Einzelmessungen macht? Aber Arduino sollte auch alles verstehen, was 
gcc-avr auch versteht. Demnach sollte der OP sich da mal einlesen, wie 
man mit dem Timer den ADC startet und dann via Interrupt die erfolgte 
Wandlung übermittelt bekommt, sonst wird das ohnehin nichts Gutes.

> Für eine FFT willst Du aber evtl. etwas mehr Samples haben (mindestens
> zwei) um die jeweilige Frequenz aufzulösen und die Rechnerei mit den
> Winkelfunktionen kostet ebenfalls Zeit.

Winkelfunktionen will man da ohnehin nicht, viel zu langsam. Bei 8 Bit 
Auflösung macht man da besser eine Lookup-Tabelle. Für viel mehr als 8 
Bit Integer, wird die Rechenleistung ohnehin nicht reichen.

Marte

[toc] | [prev] | [next] | [standalone]


#243658

FromSieghard Schicktanz <Sieghard.Schicktanz@SchS.de>
Date2018-05-08 02:10 +0200
Message-ID<20180508021058.1adc4d1d@Achmuehle.WOR>
In reply to#243652
Hallo Marte,

Du schriebst am Mon, 7 May 2018 20:40:47 +0200:

> > Für eine FFT willst Du aber evtl. etwas mehr Samples haben (mindestens
...
> Winkelfunktionen will man da ohnehin nicht, viel zu langsam. Bei 8 Bit
> Auflösung macht man da besser eine Lookup-Tabelle. Für viel mehr als 8

Bei FFT werden doch sowieso keine Winkelfunktionen gebraucht, und nichtmal
eine Lookup-Tabelle dafür. Da sind diese Zusammenhänge im Algorithmus
enthalten. Man braucht lediglich eine Tabelle der Bit-reversierten Werte
der Stützstellen.

-- 
-- 
(Weitergabe von Adressdaten, Telefonnummern u.ä. ohne Zustimmung
nicht gestattet, ebenso Zusendung von Werbung oder ähnlichem)
-----------------------------------------------------------
Mit freundlichen Grüßen, S. Schicktanz
-----------------------------------------------------------

[toc] | [prev] | [standalone]


Back to top | Article view | de.sci.electronics


csiph-web