Forum: Mikrocontroller und Digitale Elektronik Brauche 13 ADCs am ATMega32


von Sebastian (Gast)


Lesenswert?

Hallo,

ich weiß, das Thema hatten wir schon, aber so konkret habe ich nichts
gefunden.

Die Sache ist die: Ich habe einen ATMega32 und 13 analoge Spannungen
(0...5V), die dieser verarbeiten soll. Jetzt habe ich ja grundsätzlich
zwei Möglichkeiten:

a) Multiplexer und internen ADC

b) externen ADC und dann TWI oder so. UART ist schon belegt.

Welchen Weg würdet Ihr gehen? Ich habe sowohl mit ADC als auch mit TWI
noch nix gemacht, deshalb stelle ich diese Grundsatzfrage.

Weiterhin beschäftigen mich folgende Unterpunkte:

ad a): was für ein Multiplexer kommt in Frage?

ad b) auch hier fehlt mir die Erfahrung, geeignete Typen zu finden. Bei
Maxim habe ich geschaut, da habe ich nix brauchbares gefunden, bei
Analog Devices habe ich immerhin den 7856 gefunden, der hat 8 Kanäle
und TWI. Kann ich zwei davon an den Bus hängen und separat auslesen?

Die Rahmendaten: Samplerate (fast) egal. 1kHz ist schnell für meine
Anwendung. 8bit Auflösung reichen völlig. Dann sollten sich aber die
Messfehler in Grenzen halten.

Oder c) Kleinen Atmel mit 16 ADCs und dann programmieren... Lohnt der
Aufwand? Eher nicht, oder?

Gruß,
Sebastian

von Jadeclaw (Gast)


Lesenswert?

Erste Möglichkeit:
Du kannst einen ATTiny26 nehmen, da hast du schonmal einen ADC mit 11
Kanälen.
Die Daten holst du dann seriell ab, die verbleibenden 2 Kanäle machst
du mit dem Hauptprozessor.
Zweite Möglichkeit:
1 aus 8-Decoder und Analogschalter (CD4066). Der ADC-Eingang ist
hochohmig genug, dass der Durchgangswiderstand hier keine Probleme
macht.
(100MOhm des ADC gegenüber 300Ohm des Schalters)
Damit werden die ersten 8 Kanäle erledigt, den Rest kann der Prozessor
dann direkt.
Wenn du genügend Portpins am ATMega32 frei hast, kannst du natürlich
auch die ersten 7 Kanäle direkt machen und die restlichen 6 Kanäle über
Analogschalter und diese direkt mit Portleitungen steuern.
Dann entfällt der Decoder.

In beiden Fällen, kann alles mit Software erledigt werden.

Gruss
Jadeclaw.

von Sebastian (Gast)


Lesenswert?

Hallo,

@Jadeclaw: Danke für Deine Antwort. Über den Tiny26 habe ich auch schon
nachgedacht. Aber mir mißfällt, zwei uC auf einem Board für so eine
Aufgabe programmieren zu müssen.

@all: ich bin gerade auf den 74CH4067 (16->1 Multiplexer) gestoßen. Ist
vielleicht ein bisschen too much, da ich eigentlich mehrere ADC Eingänge
zur Verfügung habe, aber so brauche ich am Mega nur 5 Pins. Und ich
brauche den ADC-Kanal im Mega nicht umschalten, einfach über einen Port
ausgeben, welchen Kanal ich messen will, gefällt mir. Oder spricht
irgendwas gegen diesen? Habe ich etwas übersehen? Damit hätte ich auch
noch Reserven für zukünftige Erweiterungen.

Gruß,
Sebastian

von Thomas K. (thkais)


Lesenswert?

Mir schwirren gerade 4051,4052 und 4053 im Kopf herum. Da könnte etwas
für Dich dabei sein.

von Sebastian (Gast)


Lesenswert?

Danke, schaue ich mir an..

Gruß,
Sebastian

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.