Forum: Mikrocontroller und Digitale Elektronik ADC multiplexen?


von J-M M. (ldericher)


Angehängte Dateien:

Lesenswert?

Moin,

da mal wieder keine Lüftersteuerung so ist, wie ich sie gerne hätte, 
möchte ich mal meine AVR-/Elektronik-Erfahrung auffrischen … ein paar 
NTCs auswerten, 12V-PWM generieren, und einstellbare Drehzahlbereiche. 
Also Sachen, die ein Tiny13 ja mit Bravur beherrscht.

Nun hab ich schon länger nichts mehr in der Richtung gebastelt, und 
komme einfach nicht mehr drauf, wie ich per Jumper zwischen zwei Modi 
wählen kann:
* Ist JP1 gesetzt, möchte ich an den ADC1,ADC2-Eingängen die Pegel der 
Trimmer R1,R2 anliegen haben. ADC3 nicht von Belang.
* Ansonsten sollen an ADC1..3 die Pegel hinter den NTCs an SENS1..3 
anliegen.

Zur Zeichnung: Ich weiß, funktioniert so nicht. Ein 
"Multiplex"-Schaltungsteil fehlt natürlich ganz. Und die 
RESET-Beschaltung und Abblockkondensatoren füge ich hinzu, sobald ich 
den Rest gelöst habe :)

Grüße, euer LDer

von C Programmierer (Gast)


Lesenswert?

Immer diese ATTiny-Bastler... :P

Nimm doch einfach zum Beispiel einen ATMega88. Da hast du einen 
Multiplexer integriert und kannst damit alle deine 5 Spannungen 
einlesen.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Du nimmst statt des Jumpers einen 2-fach Umschalter, an deren Mitte die 
ADC1 und ADC2 Eingänge anliegen. Auf die eine Seite des Schalters kommen 
die Trimmer, an die andere Seite die NTC mit Spannungsteiler.
Du kannst dir auch ein Jumperfeld mit 6 Stiften aufbauen und steckst 
dann zwei Jumper um:
1
         ADC1
2
          |
3
NTC1---O<>O  O--Trimmer1
4
5
NTC2---O  O<>O--Trimmer2
6
          |
7
         ADC2
Hier habe ich mal ADC1 auf den NTC und ADC2 auf den Trimmer gesteckt.
Wenns partout nur ein Jumper sein darf, musst du einen externen 
Multiplexer a la CD4053 oder so vorsehen, der dann mit dem Jumper 
umgeschaltet wird.

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

C Programmierer schrieb:
> Immer diese ATTiny-Bastler... :P
>
> Nimm doch einfach zum Beispiel einen ATMega88.

oder einen analog multiplexer CD HEF (74 HC) 4053 für 2 Signale auf 
einen AD umschalten.

: Bearbeitet durch User
von J-M M. (ldericher)


Lesenswert?

Matthias Sch. schrieb:
> Du nimmst statt des Jumpers einen 2-fach Umschalter, an deren Mitte die
> ADC1 und ADC2 Eingänge anliegen. Auf die eine Seite des Schalters kommen
> die Trimmer, an die andere Seite die NTC mit Spannungsteiler.

Kann ich den nicht wieder mit einem Jumper steuern? Also 
NPN-Transistoren auf eine Seite, PNPs auf die Andere?

> Du kannst dir auch ein Jumperfeld mit 6 Stiften aufbauen und steckst
> dann zwei Jumper um:
>
1
>          ADC1
2
>           |
3
> NTC1---O<>O  O--Trimmer1
4
> 
5
> NTC2---O  O<>O--Trimmer2
6
>           |
7
>          ADC2
8
>
> Hier habe ich mal ADC1 auf den NTC und ADC2 auf den Trimmer gesteckt.

Ah, ja, das gefällt mir ganz gut, aber ich will halt ein möglichst 
kompaktes Platinendesign, wenn möglich mit einzelnem Jumper. Und bin 
immer froh, einen der Tiny13 loszuwerden, von denen ich mir in einem 
Anfall von Größenwahn mal knapp 50 Stück zugelegt hatte :D

> Wenns partout nur ein Jumper sein darf, musst du einen externen
> Multiplexer a la CD4053 oder so vorsehen, der dann mit dem Jumper
> umgeschaltet wird.

Hmm, nicht das erste Mal, dass ich von dem Bauteil lese. Finde aber 
entweder Threads, in denen die Leute eh schon wissen, wie das Teil 
benutzt wird, oder das Datenblatt, aus dem ich auch nicht wirklich 
schlauer werde. Gibt es dazu vielleicht eine Erklärung für Doofe? (Auch 
wenn ich das Gefühl hab, ein zusätzlicher IC täte meinem Minimal-Design 
nicht besonders gut)

Ich versuche mal, die Transistoren-Schaltung zu Papier zu bringen, die 
mir in den Sinn kommt, melde mich dann wieder.

Danke für die Denkanstöße, bis später!

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

Jörn - M. M. schrieb:
>> Multiplexer a la CD4053 oder so vorsehen, der dann mit dem Jumper
>> umgeschaltet wird.
>
> Hmm, nicht das erste Mal, dass ich von dem Bauteil lese. Finde aber
> entweder Threads, in denen die Leute eh schon wissen, wie das Teil
> benutzt wird, oder das Datenblatt, aus dem ich auch nicht wirklich
> schlauer werde. Gibt es dazu vielleicht eine Erklärung für Doofe?

ist ein normaler Umschalter

http://www.geofex.com/article_folders/cd4053/cd4053-2.gif

an 12 und 13 können Signale x0 oder x1 rein und je nach x (14) wieder 
raus je nach Spannung an A (11) das selbe gilt für die anderen,

es kann Spannung von x1 oder x0 nach x geschaltet werden oder das Signal 
kann auch umgekehrt von x nach x0 oder x1 geschaltet werden weil dem 
analog Schalter keine Signalrichtung interessiert, kann auch als IO 
Porterweiterung dienen als in oder out port.

1 Bit für den Schalter kann also beim 4053 mit 3 Schalter drei IO zu 6 
IO verdoppeln wenn alle 3 Schalter zusammen von einem Port gesteuert 
werden.

https://www.youtube.com/watch?v=kpGEL7Xynjc

: Bearbeitet durch User
von J-M M. (ldericher)


Angehängte Dateien:

Lesenswert?

Kann das gut gehen? Bzw. benutzt man das so?

Habe mich doch für die Lösung mit 4053 entschieden, weil einfach 
sauberer … mir kommt's vor, als müsste es eine Möglichkeit geben, sich 
da ein paar Widerstände zu sparen um die Spannungen an den 
Abgreifstellen genauer einstellen zu können …

: Bearbeitet durch User
von J-M M. (ldericher)


Angehängte Dateien:

Lesenswert?

So, hoffe, ich habe nichts vergessen, und der 4053 funktioniert so, wie 
ich das verstanden habe (Ich bin mir bei eagle bei den Hohlsteckern 
immer unsicher … hab ich den Pluspol nach innen gepackt?)

von Joachim B. (jar)


Lesenswert?

Jörn - M. M. schrieb:
> So, hoffe, ich habe nichts vergessen, und der 4053 funktioniert so, wie
> ich das verstanden habe

welchen Temperaturbereich willst du denn messen?

evt. sind auch DS18B20 für dich sinnvoller?

statt alle 3 NTC manuell per Jumper umzuschalten ist das eventuell die 
bessere Lösung, ein ADC und ein 4052 da kannst du 4 NTC auf einen ADC 
umschalten oder 4051 8 zu 1 die freien ADC könntest du zum umschalten 
nutzen.

Oder eine Kette DS18B20 1W Sensoren an einer Portleitung.

Jörn - M. M. schrieb:
> Ich bin mir bei eagle bei den Hohlsteckern
> immer unsicher … hab ich den Pluspol nach innen gepackt?)

Musterbau oder Probeaufbau ist nie verkehrt oder um dich davon frei zu 
machen, Graetzbrücke Elko und DC/DC Wandler Recom R785 0,5A und Spannung 
beliebig vom Netzteil +- egal 9-12V was so rumliegt.

Achtung bei den Hohlsteckern und Buchsen gibt es meist aussen 5,5mm und 
innen mal 2,5mm mal 2,1mm entweder Wackelkontakt oder geht nicht an oder 
rein.

Also passen müssen die schon zusammen.

: Bearbeitet durch User
von Peter D. (peda)


Lesenswert?

Warum nimmst Du nicht einen ATtiny24, da hast Du genug Pins.

von J-M M. (ldericher)


Angehängte Dateien:

Lesenswert?

Joachim B. schrieb:
> Jörn - M. M. schrieb:
>> So, hoffe, ich habe nichts vergessen, und der 4053 funktioniert so, wie
>> ich das verstanden habe
>
> welchen Temperaturbereich willst du denn messen?

Wie gesagt, wird eine Lüfterregelung (für PC) werden … vermutlich also 
Temperaturen um die 30°C (Einen Messbereich von 0-80°C halte ich aber 
für sinnvoll), ich dachte an B57164K223J.

> evt. sind auch DS18B20 für dich sinnvoller?

War meine erste Idee, halte ich aber doch für mit Kanonen auf Spatzen 
geschossen – 3 Temperaturmesspunkte reichen für die allermeisten Fälle.

> statt alle 3 NTC manuell per Jumper umzuschalten ist das eventuell die
> bessere Lösung, ein ADC und ein 4052 da kannst du 4 NTC auf einen ADC
> umschalten oder 4051 8 zu 1 die freien ADC könntest du zum umschalten
> nutzen.

Oh, Missversständnis! Die JNTC1..3 sollen nur Pinheader sein für den 
Anschluss der 3 NTC über Litzen und Molex ...

* Wie mache ich das klarer?

> Musterbau oder Probeaufbau ist nie verkehrt oder um dich davon frei zu
> machen, Graetzbrücke Elko und DC/DC Wandler Recom R785 0,5A und Spannung
> beliebig vom Netzteil +- egal 9-12V was so rumliegt.
>
> Achtung bei den Hohlsteckern und Buchsen gibt es meist aussen 5,5mm und
> innen mal 2,5mm mal 2,1mm entweder Wackelkontakt oder geht nicht an oder
> rein.
>
> Also passen müssen die schon zusammen.

Ich glaube, ich nehme sowieso besser Lötaugen (die ich jetzt auch 
einfach als 3-Pinheader modelliert hab) und führe auf einen 
IDE-Stromstecker raus, dann harmoniert es ohne weitere Bastelei mit dem 
PC-Netzteil, an das das sowieso angeschlossen werden soll.

Wenn ich dabei bin, kann ich aber auch gleich den 7805 sparen und den 
5V-Pin vom Netzteil belegen.

* Oder hat die Beschaltung mit 7805 doch noch Vorteile?
* Brauche ich C2 dann noch?

Peter Dannegger schrieb:
> Warum nimmst Du nicht einen ATtiny24, da hast Du genug Pins.

Weil ich noch einen ganzen Haufen Tiny13 rumliegen habe, aber keine 
Tiny24, und die Platine nicht größer werden soll als nötig.

Offene Fragen "* mit Sternchen" markiert.

: Bearbeitet durch User
von Peter D. (peda)


Lesenswert?

Jörn - M. M. schrieb:
> Weil ich noch einen ganzen Haufen Tiny13 rumliegen habe, aber keine
> Tiny24, und die Platine nicht größer werden soll als nötig.

Der Tiny24 hat 14 Pins, der 4053 aber 16.
Du kannst auch 2 Tiny13 nehmen und CONF schaltet zwischen beiden um.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Jörn - M. M. schrieb:
> *Oder hat die Beschaltung mit 7805 doch noch Vorteile?*
> *Brauche ich C2 dann noch?*

Nö für den Regler. Für ein 'möglichst kompaktes Design' sparst du dir 
den Regler und speist die Schaltung von den 5V des PC - davon hat er 
genug. C2 schenkst du dir aber C3 muss so nahe wie möglich an den Tiny. 
Da der PC Strom ab und zu mal etwas verseucht ist, hänge ich meistens 
eine 100µH Drossel in die 5V zum MC.

: Bearbeitet durch User
von Peter D. (peda)


Lesenswert?

Jörn - M. M. schrieb:
> * Oder hat die Beschaltung mit 7805 doch noch Vorteile?

Der 78L05 begrenzt auf ~100mA.

Die 5V direkt bringen bei einem Schaltungsfehler die Leiterbahnen zum 
Glühen und aus den ICs entweicht der magische Rauch.

von Karl H. (kbuchegg)


Lesenswert?

> Jörn - M. M. schrieb:
>> *Oder hat die Beschaltung mit 7805 doch noch Vorteile?*
>> *Brauche ich C2 dann noch?*
>
> ... Für ein 'möglichst kompaktes Design'

um nochmal zurückzukommen.

Für ein möglichst kompaktes Design würde ich 2 3-polige Pin Header und 2 
Jumper spendieren die bei Bedarf umgesteckt werden. Die beiden Trimmer 
dienen ja offensichtlich zur Einstellung der Steuerung und das macht man 
nicht alle Tage 5 mal am Tag.
Kleiner als ein CD4053 mit dann wieder einem Jumper ist es allemal.

: Bearbeitet durch User
von J-M M. (ldericher)


Lesenswert?

Peter Dannegger schrieb:
> Der Tiny24 hat 14 Pins, der 4053 aber 16.

Okay, das wäre ein Argument, aber für mich hat es dann doch einen Reiz, 
mal wieder einen Tiny13 sinnvoll unterzubringen.

> Du kannst auch 2 Tiny13 nehmen und CONF schaltet zwischen beiden um.

Und wer nachbauen will, muss dann halt 2 Controller flashen (zumutbar). 
Und dann kennt ein Chip nur dir nach Jumpern eingestellte Konfiguration, 
und der Andere nur die Temperaturen ... ich wollte eigentlich keine 
inter-Chip-Kommunikation einführen für ein sonst eher simples Projekt.

Matthias Sch. schrieb:
> Nö. Für ein 'möglichst kompaktes Design' sparst du dir den Regler und
> speist die Schaltung von den 5V des PC - davon hat er genug.

Dachte ich mir, danke für Bestätigung :)

Und doch noch eine Frage: Ich habe die Supplies VEE und VSS nach GND 
geschaltet, VDD nach VCC, weil ich das auf einer der Webseiten zum 
CD4053 so gelesen habe, und das etwa wie mein Fall klang. Passt das so 
auch bei mir? (Könnte ich auch per Trial-and-Error rausfinden, aber dann 
müsste ich erstmal den IC in der Hand halten. So könnte ich schonmal das 
Board designen)

von J-M M. (ldericher)


Lesenswert?

Also, hier mal mein kleines Prioritätenheftchen ...

* kompaktes Design und Nachbaubarkeit
--> Sollte auf 70×44mm Platine passen
--> SMD nach Möglichkeit vermeiden
* kleiner Controller, nach Möglichkeit Tiny13 (weil ist auf Lager)
* Anwenderfreundlichkeit
--> 1 Jumper setzen oder nicht setzen besser als
--> 2-3 Jumper umstecken (verwechslungsgefahr)

Ich will das Ding nicht verkaufen, aber ich will's auch nicht so machen, 
dass nur ich es verstehe ;)

: Bearbeitet durch User
von J-M M. (ldericher)


Lesenswert?

Peter Dannegger schrieb:
> Die 5V direkt bringen bei einem Schaltungsfehler die Leiterbahnen zum
> Glühen und aus den ICs entweicht der magische Rauch.

Klingt ungesund. Was müsste passieren, damit das im laufenden Betrieb 
anfängt zu stinken, also ohne, dass die Schaltung falsch aufgebaut ist? 
Kann/sollte ich eine PolySwitch-Sicherung einbauen?

Matthias Sch. schrieb:
> C2 schenkst du dir aber C3 muss so nahe wie möglich an den Tiny.

Da hab ich schon C4, C3 ist nur da, falls Elko C2 parasitär induktiv 
wird und hinterm Regler schwingen sollte.

> Da der PC Strom ab und zu mal etwas verseucht ist, hänge ich meistens
> eine 100µH Drossel in die 5V zum MC.

Tut die Bauform etwas zur Sache, oder kann man da auch eine Induktivität 
in Widerstands-Bauform nutzen?

von Joachim B. (jar)


Lesenswert?

Jörn - M. M. schrieb:
> Tut die Bauform etwas zur Sache, oder kann man da auch eine Induktivität
> in Widerstands-Bauform nutzen?

kannst du nehmen, ich würde trotzdem auf kleinsten R achten unter 1 Ohm 
wenns geht, weiss ja nicht wo du kaufst......

von J-M M. (ldericher)


Angehängte Dateien:

Lesenswert?

Gefällt das Board nur mir, oder auch der Community?

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.