Forum: Mikrocontroller und Digitale Elektronik ATTiny13A: Komparator und ADC


von Karlheinz (Gast)


Lesenswert?

Hallo,

für ein neues Projekt möchte ich den ATTiny13A nehmen. Wichtig ist, dass 
ich die Spannung eines Signals mit dem ADC messe und gleichzeitig per 
Komparator überwache. Hat das schon jemand probiert? Im Datenblatt steht 
(siehe unten), wenn ein Analogpin auf den Komparator gelegt wird (damit 
ich mit den Pins hinkomme), dass der ADC abgeschaltet werden muß. Kann 
mir jemand sagen, warum dies so ist?

Viele Grüße

Karlheinz


It is possible to select any of the ADC3..0 pins to replace the negative 
input to the Analog Comparator. The ADC multiplexer is used to select 
this input, and consequently, the ADC must be switched off to utilize 
this feature. If the Analog Comparator Multiplexer Enable bit (ACME in
ADCSRB) is set and the ADC is switched off (ADEN in ADCSRA is zero), 
MUX1:0 in ADMUX select the input pin to replace the negative input to 
the Analog Comparator, as shown in Table 13-1. If ACME is cleared or 
ADEN is set, AIN1 is applied to the negative input to the Analog
Comparator.

von MWS (Gast)


Lesenswert?

Das warum steht doch genau drin im zitierten Text, weil der MUX dafür 
verwendet wird und den gibt's nur einmal. Des Englischen nicht mächtig ?

von (prx) A. K. (prx)


Lesenswert?

Die Frage war aber m.E. doch, ob das gemuxte Signal nicht gleichermassen 
an ADC und AC geführt und dementsprechend gleichzeitig genutzt werden 
kann. Der Text erklärt nicht, warum dies nicht geht.

von MWS (Gast)


Lesenswert?

Nun ja, es ist zwar müssig sich über das warum Gedanken zu machen, wenn 
explizit im Datenblatt drinsteht dass es nicht geht.

Denn um einen Nutzen davon zu haben, müsste man es ändern können. Sollte 
man nun im Gegensatz zu Atmel meinen es geht doch, dann würd' ich sagen 
Versuch macht kluch.

Meine Meinung dazu über das warum, allerdings nur als Vermutung:

Der Komparator wird für die ADC Wandlung verwendet und ist nur einmal 
vorhanden, da nun auch der MUX nur einmal vorhanden ist, hat man sich 
das Feature einfach gespart, Beides gleichzeitig machen zu können.

Im Übrigen könnte man immer noch Komparator und ADC muxen, muss man nur 
aufpassen, wieviel Zyklen die Umsachaltung jeweils benötigt.

von Peter D. (peda)


Lesenswert?

Du kannst Komparator und ADC gleichzeitig verwenden, nur ist dann der 
Komparator auf einen bestimmten Eingang festgelegt.

Welchen Sinn soll das aber haben, damit die gleiche Spannung zu testen?

Wenn ich eh messe, kann ich den Wert auch per Software vergleichen.


Peter

von Gast (Gast)


Lesenswert?

>dass ich die Spannung eines Signals mit dem ADC messe und gleichzeitig per
>Komparator überwache.

Welchen Grund sollte es geben, die Spannung auch noch mit einem 
Komparator zu überwachen, wenn man sie schon aufgrund einer ADC-Messung 
kennt?

von MWS (Gast)


Lesenswert?

Das würd' ich nun nicht sagen, es ist ein Unterschied ob nur der 
positive Eingang des AC woandershin schaltbar, oder der AC gleichzeitig 
für etwas anderes verwendbar ist. Letzteres ist er nicht.

Schau auf Seite 79 des Datenblattes für den Tiny13A, Fig 13-1, da kannst 
Du sehen dass mit ACBG der positive Eingang des AC zwar entweder auf 
interne oder externe Referenz geschaltet werden, aber es ist immer 
derselbe Komperator, der nun mal nicht zwei Jobs zur gleichen Zeit 
erledigen kann. Unten sieht man den Ausgang vom ADC MUX, der auch den 
Komperator benutzt.

Das sollte es erklären, meine Aussage belegen und die Frage beantworten.

von Karlheinz (Gast)


Lesenswert?

>>> Welchen Sinn soll das aber haben, damit die gleiche Spannung zu testen?

Diese Frage von dir ist schon verwunderlich.

Hier die Antwort: Um 1. schnell (< 10 µs) auf das Absinken der Spannung 
zu reagieren (es wird praktisch keine Rechenzeit benötigt) und 2. 
regelmäßig (10 mal/s ) die Höhe der Spannung für Berechnungen 
heranzuziehen.

von Gast (Gast)


Lesenswert?

Einfach zwei Pins zusammenschalten? (Analog Komparator + einen 
ADC-Kanal)

von Karlheinz (Gast)


Lesenswert?

>>> Das sollte es erklären, meine Aussage belegen und die Frage beantworten.

Nein tut es nicht. Du hast weder meine Frage noch das Datenblatt bzw. 
die Funktion von ADC und Komparator verstanden.

von Karlheinz (Gast)


Lesenswert?

@Gast: das ist eine Lösung und ich würde sie auch gern nehmen. Leider 
habe nur einen Pin frei und möchte diesen mit der ADC plus 
Komparator-Kombination nutzen.

von Peter D. (peda)


Lesenswert?

Karlheinz wrote:
> Hier die Antwort: Um 1. schnell (< 10 µs) auf das Absinken der Spannung
> zu reagieren

Die Frage sollte implizit bedeuten:
Wann braucht man es denn schon so schnell?

Wenn man nur beim Absinken der Netzspannung Werte in den EEPROM 
schreiben will, reicht die Überwachung per ADC jede 10ms (100Hz-Periode) 
völlig aus.


Peter

von MWS (Gast)


Lesenswert?

>Nein tut es nicht. Du hast weder meine Frage noch das Datenblatt bzw.
>die Funktion von ADC und Komparator verstanden.

@Karlheinz

da hat ja einer wieder mal den vollen Durchblick, merkwürdig nur dass Du 
überhaupt fragen musst.

Und auch merkwürdig, daß Fig 13-1, Dein aus dem Datenblatt zitierter 
Text und meine Aussage übereinstimmt.

Bezweifle, daß Du das abgebildete Schema verstehen kannst, sonst würdest 
Du nicht obiges schreiben.

Aber poste doch bitte Dein Ergebnis hier, damit wir auch noch was lernen 
können.

von Johannes M. (johnny-m)


Lesenswert?

@MWS:
Karlheinz hat völlig Recht, Du hast es nicht verstanden! Und bevor Deine 
Äußerungen hier noch unverschämter und arroganter werden, hier mal ein 
paar Infos für Dich:

Der Analog-Komparator und der ADC sind zwei voneinander unabhängige 
Peripheriekomponenten, die sehr wohl gleichzeitig benutzt werden können. 
Es ist auch nicht der ADC, der den Komparator benutzt (schließlich geht 
der ADC MUX auf einen Eingang des Komparators!), sondern es ist genau 
umgekehrt: Der Komparator kann den MUX des ADC benutzen, wenn mehrere 
Eingänge abgefragt werden sollen (was auch durchaus Sinn machen kann, da 
der Komparator eine deutlich geringere Stromaufnahme hat als der ADC, 
und wenn es nur um eine Schwellwertüberwachung geht, reicht der 
Komparator).

In diesem Thread geht es nur um die Frage, warum der ADC deaktiviert 
werden muss, damit der Komparator den MUX nutzen kann, was auch im 
Prinzip zunächst nicht nachvollziehbar ist. Der Komparator und der ADC 
können ohne Probleme gleichzeitig betrieben werden, bei einigen neueren 
AVRs ist es sogar möglich, den Komparator-Ausgang als 
Auto-Trigger-Quelle für den ADC zu benutzen. Das geht eben nur dann 
nicht, wenn der Komparator den MUX benutzen soll.

von MWS (Gast)


Lesenswert?

Johannes,

schön, noch ein Spezialist. Also beantworte doch Du bitte die Frage von 
Karlheinz. Bin ja gern bereit zuzugeben, wenn ich falsch liege.

Machen wir's mal ganz einfach: Was ist denn nicht zu verstehen ? Das 
Datenblatt sagt doch eindeutig aus:

"The ADC multiplexer is used to select this input, and consequently, the 
ADC must be switched off..."

Die logische Verknüpfung von ADEN laut Datenblatt, kuckst Du Fig 13-1, 
da ist links so ein kleines Und-Gatter mit ADEN und so 'nen kleinen 
Punkt dran, der uns sagt, daß dieses ein invertierender Eingang ist. Der 
MUX kann also nur für den AC aktiv werden, wen ACME = 1 und ADEN = 0, 
ADEN löschen schaltet den ADC aus, siehe hier:

"..and the ADC is switched off (ADEN in ADCSRA is zero),"

Damit kann der MUX >NIE< für beides zugleich verwendet werden und das 
ist ja das, was der Karlheinz mangels freier Pins gerne möchte.

Also stimmt doch meine Aussage, darfst halt nicht nur lesen, musst den 
Inhalt des Datenblatts auch verstehen.

Und bzgl. anderer, neuerer Atmels: ist doch völlig wurst was andere 
können, hier geht's einzig um die interne Konfiguration des Tiny13A, und 
da isses halt wie im Datenblatt.

Bzgl. Ausgang des MUX hatte ich einen Denkfehler drin, geb' ich gern zu, 
aber das ändert nix am Resultat.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.