Forum: Mikrocontroller und Digitale Elektronik 32 Analog-Quellen seriell einlesen


von Christoph (Gast)


Lesenswert?

Hallo

ich möchte mit einem PIC 32 verschieden analoge Quellen messen. Hab mir
überlegt dafür 4 Multiplexer mit je 8 Eingängen zu verwenden (C-MOS
4051). Da ich mit Pins sparen muss, will ich dafür nur 2 Pins
verwenden. Bei nur einem Multiplexer wär das noch kein Problem. Da kann
ich einen 4-Bit Zähler (74939) dranschalten und dann mit nur einem Pin
alle Eingänge durchgehen. Wenn ich jetzt aber vier Multiplexer nehmen
will, müsste ich ja noch dafür sorgen, dass immer nur einer sein Signal
drauflegt, also bei allen anderen den Inhibit-Eingang auf high setzen.
Hab da an ein Schieberegister gedacht aber ich bekomme es nich so hin.
Ziel soll sein, dass ich durch jeden Takt die nächste Quelle auf den
analogen Eingang legen kann und dann bei 32 Takten wieder von vorne
anfängt. Wäre nett, wenn mir da jemand helfen könnte

mfg
Chris

von Franz Neumann (Gast)


Lesenswert?

Du kannst auch z.B. 4 MAX186 12bit AD Wandler mit je 8 gemultiplexten
Eingängen ein einen SPI Bus hängen bzw. sowas ähnliches versuchen.

von Peter D. (peda)


Lesenswert?

Du brauchst 4 enable-Signale und 3 Auswahlsignale, also schiebst Du
einfach immer die 7 Bit in das Schieberegister (74HC164).


Peter

von Christoph (Gast)


Lesenswert?

Dann brauche ich aber einen Pin für Takt, einen für Daten und noch einen
für die analoge Messung, das ist leider schon zu viel. Möchte das ganze
nur mit einem Pin steuern, d.h. nur mit einem Taktsignal dann alle 32
hochzählen und dann wieder bei 0 anfangen.

von leo9 (Gast)


Lesenswert?

>>Möchte das ganze
nur mit einem Pin steuern, d.h. nur mit einem Taktsignal dann alle 32
hochzählen und dann wieder bei 0 anfangen.

.. und schon reicht ein "Verzähler" und der uP sieht den falschen
Eingang. Zumindestens das Nullsetzen würde ich über eine zweite Leitung
fahren. Wenns unbedingt ein Pin bleiben muß dann halt mit kurzem Impuls
zum Weiterzählen und langen Impuls fürs Nullsetzen (braucht halt etwas
externe HW).

grüße leo9

von Kurt (Gast)


Lesenswert?

Hallo Christoph,

Idee mit einem Ausgang:

Schieberegister verwenden,
Langer Impuls am Ausgangspin = Reset am SR (ext. Erkennung notwendig).
Muss auch die einzige "EINS" fürs SR erzeugen.

Dann einfach durchtakten (kurze Impulse).

viel Erfolg Kurt

von Christoph (Gast)


Lesenswert?

Wüsste nicht warum man sich verzählen sollte. Dafür ist doch der
Computer und überhaupt die Elektronik bekannt: dass sie sich eben NICHT
verzählt!
Die Frage ist jetzt, wie ich mit dem Zähler irgendwie die einzelnen
Multiplexer nacheinander aktivieren kann. Bei zwei Multiplexer hätte
ich noch kein Problem, da könnte ich den Inhibit Eingang bei einem
direkt und bei dem anderen über einen Inverter einfach an Bit3 vom
4-Bit Zähler anschließen und dan somit alle 16 Kanäle nacheinander
durchschalten. Bei 4 Multiplexern bekomm ich dass aber nich hin.

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.