Hallo zusammen, Ich möchte 10 Knöpfe an einen IC anschliessen. Macht 20 Kontakte an den Knöpfen. Jetzt habe ich eine Masseleitung gelegt und die an 10 Knopfkontakte gelötet. Vom IC kommen jetzt 10 Kabel, die an die anderen 10 Knopfkontakte gehen. Insgesamt also 11 Kabel. Jetzt kann ich aber genausogut die Masseleitung mit der 5V Leitung vertauschen, dann fliesst der Strom halt andersrum. Gibt es da eine "Standardregel", wie man es macht, wenn man die Wahl hat, oder ist das je nach Mondphase anders? PS: Wen es interessiert, der "IC" ist der MCP23008 PortExpander. Es geht hier aber eher um eine allgemeine Frage.
:
Bearbeitet durch User
In diesem Fall musst du den Common an Masse anschließen, da der MCP23008 lediglich über Pull-Ups und nicht über Pull-Downs verfügt.
Christian S. schrieb: > Ich möchte 10 Knöpfe an einen IC anschliessen. Macht 20 Kontakte an den > Knöpfen. Jetzt habe ich eine Masseleitung gelegt und die an 10 > Knopfkontakte gelötet. Ähhm. Knöpfe? Löten? Werden Knöpfe nicht eher angenäht? Mal ernsthaft: kannst du nicht die korrekten Bezeichnungen verwenden? > Wen es interessiert, der "IC" ist der MCP23008 PortExpander. Das ist nicht nur interessant, sondern essentiell wichtig zu wissen. Allerdings hat dieser Portexpander nur 8 Ein/Ausgänge. Ich bin gespannt, wie du da 10 Taster anschließen willst. Ferner hat er interne Pullup-Widerstände. Das bedeutet, man kann Taster anschließen die gegen GND schalten ohne daß man selber noch Pullups bräuchte. Wenn man die Taster gegen +5V schalten lassen will, muß man hingegen selber Pulldown-Widerstände vorsehen. Weswegen man in 99% der Fälle die Variante mit GND vorziehen wird. Und weil du jetzt bestimmt gleich "HÄH? Pullup? Pulldown?" fragen wirst: lies das AVR-Tutorial Abschnitt IO-Grundlagen. Da wird erklärt, wie man einen Taster anschließt und was ein Pullup-Widerstand macht.
Da habe ich zu stark verallgemeinert. Es sind 6 Knöpfe :) Dennoch geht es um den Fall, wo beide Wege möglich sind.
Axel S. schrieb: > Mal ernsthaft: kannst du nicht die korrekten Bezeichnungen verwenden? Gegenfragen sind leider nicht erlaubt! Aber es handelt sich wohl um die beliebten 2-Wege-Knöpfe: an die Backe nähen und ein Klavier dran hängen.
Für mich persöhnlich finde ich es von der Logik schöner, daß bei gedrücktem Taster ein HIGH-Impuls entsteht. Wenn man dies erreichen will muß man oft selber für die Pull-Down-Widerstände sorgen. In vielen ICs gibt es aber schaltbare Pullup Widerstände. Bei Verwendung ändert sich die Logik bei der Programmierung. Bei Low-Impulse ist der Taster gedrückt. Mitlerweile verwende ich oft die eingebauten Pullups und drehe die Logik in der Software. Finde ich jetzt nicht so schön, aber ich spare mir dadurch ein weiteres Bauteil.
Christian S. schrieb: > Da habe ich zu stark verallgemeinert. Es sind 6 Knöpfe :) Aha, Du belügst also absichtlich die Leute, die Dir unentgeltlich bei der Lösung Deines Problems helfen wollen? Und in Wirklichkeit willst Du auch keine Knöpfe annähen, sondern einen Schrittmotor an einen Arduino ankleben?
Christian S. schrieb: > Gibt es da eine > "Standardregel", wie man es macht, wenn man die Wahl hat Ist die Frage damit beantwortet? Wurde m.E. alles schon gesagt: Wenn bereits PullUps vorhanden sind (wie bei Dir), benutzt man diese vorzugsweise. Ansonsten gibt es noch Wakup-fähige Pins, die nur in eine Richtung funktionieren. Ansonsten ist es egal, und man kann die "schönere" Lösung (High = True) wählen, falls man sie schöner findet. Einige MCUs haben dafür auch zuschaltbare PullDowns.
:
Bearbeitet durch User
Dass man häufiger gegen GND schaltet wird wohl daran liegen, dass die IC's nach GND mehr Strom vertragen. So vermute ich das. In den AVR's ist das jedenfalls so.
Andreas S. schrieb: > Und in Wirklichkeit willst Du auch keine Knöpfe annähen, sondern einen > Schrittmotor an einen Arduino ankleben? Annähen man, annähen...
:
Bearbeitet durch User
Hi >Dass man häufiger gegen GND schaltet wird wohl daran liegen, dass die >IC's nach GND mehr Strom vertragen. So vermute ich das. In den AVR's ist >das jedenfalls so. Nö. Bei AVRs ist Sink Current und Source Current etwa gleich. MfG Spess
F. F. schrieb: > Dass man häufiger gegen GND schaltet wird wohl daran liegen Ich vermute, wegen "wired or" mit "open collector" bzw. "open drain" sieht man das häufiger als anders rum.
Oft liegt auch eine Massefläche näher als eine VCC Leitung.
Wenn der Portexpander ja Ein- und Ausgang kann, wäre doch ne Matrixschaltung interessant für > 8 Taster.
Torsten C. schrieb: > Ich vermute, wegen "wired or" mit "open collector" bzw. "open drain" > sieht man das häufiger als anders rum. Warum soll man das nicht genauso mit Pull-Downs und Schaltern gegen VCC aufbauen können. Dann muss man nur alles in negativer Logik formulieren.
Tom schrieb: > Warum soll man das nicht genauso mit Pull-Downs und Schaltern gegen VCC > aufbauen können. Klar geht das. Wie ist die Frage? F. F. schrieb: > Dass man häufiger gegen GND schaltet wird wohl daran liegen, dass … Ach ja. Dann liegt es daran, dass man bei verschiedenen Spannungsversorgungs-Pegeln in der Regel eine gemeinsame Masse hat. Mit "open collector" bzw. "open drain" hat man dann einen Pegelwandler.
spess53 schrieb: >>Dass man häufiger gegen GND schaltet wird wohl daran liegen, dass die >>IC's nach GND mehr Strom vertragen. So vermute ich das. In den AVR's ist >>das jedenfalls so. > > Nö. Bei AVRs ist Sink Current und Source Current etwa gleich. Für Ausgänge ist das höchstwahrscheinlich so - ich hab es nicht überprüft. Die andere Ansicht stammt noch aus der Zeit von TTL und LS-TTL. Aber hier ging's doch um Eingänge, an die die 'Knöpfe' dran sollen - oder nicht?
Tom schrieb: > Torsten C. schrieb: >> Ich vermute, wegen "wired or" mit "open collector" bzw. "open drain" >> sieht man das häufiger als anders rum. > > Warum soll man das nicht genauso mit Pull-Downs und Schaltern gegen VCC > aufbauen können. Dann muss man nur alles in negativer Logik formulieren. LogikIC und Mikrokontr. haben nach dem Einschalten meisst/oft eine 1 an den Pins. Da ist es vorteilhaft die Taster und Ausgangsbausteine so anzuordnen dass da nichts geschaltet, bzw. ein gedrückter Taster erkannt wird. Kurt
Kurt B. schrieb: > LogikIC und Mikrokontr. haben nach dem Einschalten meisst/oft eine 1 an > den Pins. Bei denen die ich kenne sind die Eingänge nach dem (Power On) Reset hochohmig bzw. Eingänge. Bei CMOS ist das floatend, also nicht definiert, bei TTL war das High.
HildeK schrieb: > Aber hier ging's doch um Eingänge, an die die 'Knöpfe' dran sollen - > oder nicht? Das weiß doch Keiner, aber es waren doch 2-Wege-Knöpfe? Es ist schon etwas amüsant, wie hier ohne klare Basis gemutmaßt wird, aber der eigentliche 'Knopf' wohl schon längst in den Brunnen gefallen ist und nicht mehr auftaucht.
spess53 schrieb: > Nö. Bei AVRs ist Sink Current und Source Current etwa gleich. Hey Spess, :-) wollte es dir gerade um die Ohren hauen, aber ich muss feststellen, dass du recht hast. Habe gerade im Datenblatt nachgesehen und da steht es. Ich bin mir jetzt auch sicher, dass ich das mal irgendwo auf Deutsch gelesen hatte. Das muss sich wohl eingebrannt haben. Man muss doch jede Aussage immer wieder mal überprüfen. 1:0 für dich! :-) P.S.: Du schreibst ja nicht so viel (oder ich sehe nur wenig von dir), aber das hat dann bis jetzt immer Hand und Fuß gehabt.
Max H. schrieb: > Kurt B. schrieb: >> LogikIC und Mikrokontr. haben nach dem Einschalten meisst/oft eine 1 an >> den Pins. > Bei denen die ich kenne sind die Eingänge nach dem (Power On) Reset > hochohmig bzw. Eingänge. Bei CMOS ist das floatend, also nicht > definiert, bei TTL war das High. Und von da (TTL) kommt das wohl auch her. Ich hatte mit dem Z80 (die PIO) schon mal das Problem dass er/diese nach Reset Verbraucher anschaltete, darum die Vorsicht bei kritischen Anlagen. Kurt
Danke euch, meine Knöpfe blinken endlich! . ___---""""""""""""""---____ / | _--"" \)))))))))))))))))))))))"""""___ / | _-" _ \))))))_-"|))))))))))))))))))))"""---' __| _-" / \ |))))| |)))))))))))))))))))))))))/-- | <___. \_/ |))))| |))))))))))))))))))))))))<- | "-_ |))))| |)))))))))))))))))))))))))\--__| "-_ /)))))) -_|))))))))))))))))))))___---. | "--__ /)))))))))))))))))))))))_____""" \ | """---______________---"""" mga \ | '
:
Bearbeitet durch User
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.