GND für Taster herzaubern?

Gast #4808951
Lesenswert?

Tag.

Ich brauche an einem µC noch einen Taster. Allerdings ist die Platine 
schon fertig entwickelt (erhebliche Arbeit).

Wir haben eine 4er-Stiftleiste für Universalzwecke rausgeführt 
(PD.0-PD.3).
Die könnten wir nutzen.

Leider haben wir da kein Potential, gegen das der Schalter geschaltet 
werden könnte.

Kann ich einfach PD.0 auf 0 setzen und das als 'GND' für einen Taster an 
PD.1 mit aktiviertem Pullup nutzen oder spricht da was dagegen?


Es handelt sich um einen ATmega 328p.


Danke!
#4809112
Lesenswert?

hinz schrieb:
> Wir haben eine 4er-Stiftleiste für Universalzwecke

und ein fünftes Loch daneben bohren ud einen Draht nach GND ziehen geht 
nicht? (als Bohrschablone eignen sich prima Lochrasterplatten)

Aber auch ohne das ich GND vergesse, manchmal hole ich mir den GND aus 
einem Port wenn nicht zuviel Strom verlangt wird, Nokia5110 Display, DHT 
11/22 usw.)
Gast #4809635
Lesenswert?

12 LEDs = 4x3 kann man mit Charlieplexing erreichen. Aber wie können 
dann noch Taster dazu, dann gehen doch immer die LEDs aus?!
Vielleicht sind die Pins ja auch am ADC, dann können sehr viele Taster 
dran...

Liebe Grüße
DerJoe
Gast #4809647
Lesenswert?

hinz schrieb:
> Wir haben eine 4er-Stiftleiste für Universalzwecke rausgeführt
> (PD.0-PD.3).
> Die könnten wir nutzen.

Prima, dann häng doch per (Soft-)SPI Schieberegister ran. Damit kannst 
du dir beliebig IO-Ports generieren ;-)

> oder spricht da was dagegen?

Nein, spricht es nicht.

Aber warum muss man für diese Entscheidung einen Thread aufmachen?
Sonst schaltest du doch auch selbständig Pins als Ausgang, ohne im Forum 
zu fragen, oder?
#4809653
Lesenswert?

DerJoe schrieb:
> 12 LEDs = 4x3 kann man mit Charlieplexing erreichen. Aber wie können
> dann noch Taster dazu, dann gehen doch immer die LEDs aus?!

Ja, Charlieplex.

Also 6 x je 2 antiparallel geschaltete Leds. Genauso schließt man die 
Taster auch an. Nur, daß man Taster nicht antiparallel schalten kann. 
Deswegen nur sechs.

Klar, die Leds flippen während des Tastendrucks aus. Aber in dem Moment 
konzentriert man sich auf den Taster. Und wenn man den loslässt, ist 
alles wieder gut. Haptisch ist das also gar nicht so problematisch.

Nicht die schönste Lösung, aber es geht.
Und wenn man nur 4 Leitungen hat...
Gast #4810889
Lesenswert?

Thomas E. schrieb:
> Also 6 x je 2 antiparallel geschaltete Leds. Genauso schließt man die
> Taster auch an. Nur, daß man Taster nicht antiparallel schalten kann.
> Deswegen nur sechs.

Was spricht dagegen, genauso antiparallel geschaltete Taster abzufragen? 
Wofür wurden Dioden erfunden?
(Firma: Projektleiter Medizinsoftware) #4825607
Lesenswert?

Zu "Tastaturen"

Vielleicht mal ihr das mal als Schaltung auf, wie das mit den Tastern 
gehen soll. Nach meinem Wissen braucht es die Dioden schon allein 
deshalb, um in der Matrix den Querstrom zu unterbinden und eine 
Fehlinterpretation zu verhindern. Und dann geht sicher auch nur wieder 
ein Taster, oder?

Zu "Charlieplex"

Da funktioniert dann auch nur eine LED je Gruppe, oder? Muss man mehrere 
LEDs dann zeitlich multiplexen? Wie könnte man das lösen?


Also wäre meine Frage: Wieviele LEDs und Schalter bekommt man mit n 
Leitungen gleichzeitig unabhängig gesteuert und ausgelesen?
(Firma: Projektleiter Medizinsoftware) #4825792
Lesenswert?

Man kann wohl - ohne Jemandem zu nahe zu treten - behaupten, daß der 
Beitrag über dem meinen wieder einer jener war, der typisch ist, für 
gewisse Foren: Die Frage nicht verstehen und dann trotzdem einen klugen 
Satz bringen.

Verehrter Marc: Ich bin ja nicht aus Bielefeld. Wenn man SO denken 
wollte, dann ginge freilich "Alles", allerdings müsste man dann schon 
auch konsequent sein und die dafür optimale Lösung posten, nämlich, auf 
10 der 12 Leutungen verzichten, nur 2 davon nehmen und USB dranhängen. 
Dann bekommen wir mehrere Millionen Schalter und Computer-Monitore mit 
Millionen von LED-Elementen dran.

Das war aber nicht so ganz die Frage, denn so eine Lösung erfordert 
intelligente und aktive Endgeräte. In Deinem Fall mindestens einen 
I2C-slave oder UART-slvae und damit eine eigene Stromversorgung.

Bevor jetzt der nächste mit einer Ethernet-lösung kommt, präzisiere ich 
mal die Randbedingungen:

Die Lösung muss passiv sein, also keine Stromaufnahme haben.

Das gilt auch für die Lösung von "Tim Thaler". 10 Portpins liefern bei 
so einem Controller höchstens Strom für ein paar angehängten LEDs.
(Firma: Vescomp) #4825833
Lesenswert?

Robert K. schrieb:
> Man kann wohl - ohne Jemandem zu nahe zu treten - behaupten, daß der
...
> auch konsequent sein und die dafür optimale Lösung posten, nämlich, auf
> 10 der 12 Leutungen verzichten, nur 2 davon nehmen und USB dranhängen.

 Tja, nur funktioniert USB nicht aus der Box - da gehört viel mehr dazu.
 Und ohne dir auch zu nahe zu treten, bezweifle ich, dass du dazu
 fähig bist.

> Das war aber nicht so ganz die Frage, denn so eine Lösung erfordert
> intelligente und aktive Endgeräte. In Deinem Fall mindestens einen
> I2C-slave oder UART-slvae und damit eine eigene Stromversorgung.

 Intelligent ja, Stromversorgung nein.
 M48P braucht bei 8MHz im Active max. 8mA, Idle max.2,7mA, normal
 ist die Hälfte davon.
 Ein Portpin liefert bis zu 40mA, also könnte der im Extremfall bis
 zu 5xM48 versorgen, im Normalfall bis zu 10xM48.

> Die Lösung muss passiv sein, also keine Stromaufnahme haben.

 Da must du aber leider sowohl auf Taster als auch auf LEDs verzichten
 - die brauchen beide Strom.
(Firma: Projektleiter Medizinsoftware) #4825881
Lesenswert?

Marc V. schrieb:
> Tja, nur funktioniert USB nicht aus der Box - da gehört viel mehr dazu.
Viele Controller haben heute USB mit an board.

>  Und ohne dir auch zu nahe zu treten, bezweifle ich, dass du dazu
>  fähig bist.
Schön, dass Du so genau weist, was Ich kann.

>> Die Lösung muss passiv sein, also keine Stromaufnahme haben.
>  Da must du aber leider sowohl auf Taster als auch auf LEDs verzichten
>  - die brauchen beide Strom.
Taster schalten nur Information weiter und LEDs sind das Ziel der 
Bestromung gewesen. Die jetzt in den Kontext des Ausschlusses einer 
Stromversorung mit einzubeziehen ist spitzfindig.
Gast #4825966
Lesenswert?

Robert K. schrieb:
> Die jetzt in den Kontext des Ausschlusses einer
> Stromversorung mit einzubeziehen ist spitzfindig

Das ist nicht spitzfindig, sondern real. Es gibt unzählige 
Möglichkeiten, externe Erweiterungen anzusteuern, z.B. brauchen 
CMOS-Schieberegister keinen erwähnenswerten Strom, LEDs aber schon, 
sonst leuchten sie hat einfach nicht. Der Stromverbrauch der LEDs wird 
letzten Endes das begrenzende Element an deiner Elektronik sein, auch 
wenn du hunderte LEDs anssteuern könntest, das geht eben nicht ohne 
zusätzliche Stromversorgung. Und mit dieser gibt es keine vernünftige 
Einschränkung.

Da dir sowas aber offensichtlich überhaupt nicht klar ist, erhebt sich 
schon die Frage, was du fachlich tatsächlich realisieren kannst, und das 
liegt nicht an den Möglichkeiten der Elektronik.

Georg
Gast #4826316
Lesenswert?

Georg schrieb:
> Der Stromverbrauch der LEDs wird
> letzten Endes das begrenzende Element an deiner Elektronik sein, auch
> wenn du hunderte LEDs anssteuern könntest, das geht eben nicht ohne
> zusätzliche Stromversorgung.

Ich hab hier SMD-LED rumliegen, die brauchen als Anzeige gerade mal 
100µA. Damit brauchst Du für 100 LED 10mA. Bringt der Portpin eines AVR 
locker.

Die Zeiten, als man LED mit 20mA bestromen mußte um überhaupt etwas zu 
erkennen und auch nur wenn die Sonne nicht scheint sind vorbei.

Robert K. schrieb:
> Taster schalten nur Information weiter

Also mir fällt gerade ausser Piezotaster keine Schaltung ein, wie man 
einen Taster stromlos abfragt. Irgendwas fließt durch den Pullup immer. 
Und wenn man nicht zu störanfällig werden will, sollte dieser auch nicht 
zu hochohmig sein.

Robert K. schrieb:
> Die Lösung muss passiv sein, also keine Stromaufnahme haben.

Sagt wer? Sagt hinz nicht.
Persönliche Seite #4827703
Lesenswert?

Robert K. schrieb:
> Also wäre meine Frage: Wieviele LEDs und Schalter bekommt man mit n
> Leitungen gleichzeitig unabhängig gesteuert und ausgelesen?

Wenn es wirklich darum ginge, das maximale aus einem bestehenden Board 
rauszuholen, das nicht dafür entwickelt wurde und nun mit einer 
Erweiterungsplatine versehen werden soll und darf, sind mehrere Wege 
offen. Der goldene Weg ist natürlich ein Schieberegister mit digitalen 
Eingängen und Ausgängen, wie schon erklärt wurde. Dann greift das 
Bandbreitenlimit der treibenden Schaltung.


Robert K. schrieb:
> Die Lösung muss passiv sein, also keine Stromaufnahme haben.
Einigen wir uns mal auf "keine externe Stromversorgung haben" denn ein 
bischen Strom werden die Schaltungen immer benötigen. Es muss ja 
Information reinfließen, egal, ob man die dem Schalten oder dem 
Lampenverbrauch zurechnet.

Bei dem "Möglichen" kommt es damit allein darauf an, wieviel zusätzliche 
Analoghardware man noch verwenden will.

Unter bestimmten Umständen ist Charlieplex die beste Lösung, da sie 
wenige Bauteile erfordert. Vollparallel zu steuern geht (bei deutlich 
mehr Aufwand und Signalverarbeitung im Steuergerät) mit "Schuhmiplex":

24 Taster und 24 LEDs über 2x2 Leitungen.  Die Auswertung erfolgt über 
Signalverarbeitung in einem DSP. Es gibt auch noch einen undokumentieren 
Multiplexbetrieb zwischen LED und Schalter, der nur 3 Leitungen 
erfordert, aber 32 Kanäle hat, den ich - wie die konkrete 
Schaltungsdimensionierung - aber nicht publizieren darf.

Man könnte jetzt die Ausgangschaltung symmetrisch aufbauen und die 
Dioden kurzerhand gegen die LEDs austauschen. Oder man belässt die 
Dioden um die Schaltschwelle aufrecht zu erhalten und nutzt beide 
Halbwellen.

Da die Schaltungen logischerweise einen Wirkungsgrad von signifikant 
weniger, als 1 haben (:D) sollte man für für 32 LEDs mal 1 Ampere 
kalkulieren. Ein kleiner 3Watt-Audio-Verstärker sollte reichen. Für den 
Lesepfad reicht ein einfacher Leitungstreiber. Je nach 
Signalverarbeitung kann man sehr enge Frequenzabstände nehmen. Zumindest 
für den Lesezweig.

Wenn man das für den Ausgang auf die hiesigen Anforderungen portieren 
möchte, würde ich eine komplette Oktave Abstand zwischen den Frequenzen 
veranschlagen, im Audiobereich bleiben und maximal 8 LEDs pro Kanal 
fahren. Das dürfte stromtechnisch schon das Limit sein, denke ich.
Angehängte Dateien:
Persönliche Seite #4827713
Lesenswert?

Eine Idee noch: Wenn es wirklich darum geht, für eine größere 
Produktionscharge eine Lösung zu finden, dann sollte man einige Ports 
als Stromquelle benutzen, indem man mit Übertragern und gegensinniger 
Ansteuerung eine Wechselspannung übersetzt, hinten gleichrichtig und 
parallel schaltet. Dann hast Du rund 1 Watt an der Hand. Mit einem 
Leitungspaar machst Du eine LVDS-Verbindung, indem Du einen solchen 
Übertrager mit Vorwiderständen hintrimmst. Wären 2 Power Leitungen und 2 
Signalleitungen.

Weitere Verbeserung: Ein Powerzweig wird abgetrennt und zur Bildung 
einer lokalen Spannung auf dem Board benutzt, um einen Optokoppler zu 
treiben. Damit kommst Du dann mit Megaherzen aus dem Board raus und 
knapp 1 Watt Versorgung in die Peripherie.
Gast #4828669
Lesenswert?

lohnsklave schrieb:
> Nö.
> Es gibt 4 Pins und zwei Taster sollen dran.
> Also können zwei Pins GND herzaubern.
Du hast es FAST richtig:

1. 1 Pin auf HI für die pullups
2. 1 Pin auf LO für die GNDs
3. 2 Pins für die Inputs

Also 4 Pins und 2 Widerstände.

Das lasse ich mir jetzt patentieren, wenn ich mir die anderen Vorschläge 
so durchlese ...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren