Hallo zusammen! Ich will für ein Projekt ca. 100 Taster abfragen. Die Taster sitzen auf einzelnen Platinen, die in Reihe aneinander angeschlossen sind. Ich suche nun nach einer Lösung, wie ich die Taster mit möglichst nur einer Datenleitung abfragen kann. Inspiriert bin ich von den WS2812 LEDs, bei denen auch eine einzelne Datenleitung reicht, um etliche LEDs zu steuern. Einen ähnlichen IC suche ich nun, bloß halt zum auslesen von Tastern. Gibt es einen IC, der aus meinen Tastersignalen ein Serielles Signal macht und gleichzeitig noch kaskadierbar ist? Idealerweise sollte dieser IC einfach 1 bit pro Taster an einen ankommenden Datenstream anhängen und diesen dann an den nächsten IC weitergeben. Vielen Dank für euere Hilfe!
Du kannst Dir so etwas mit einer low-cost MCU ja selber bauen. Weit unter 0.30 EUR wirst Du wohl mit einer anderen IC-Lösung auch nicht kommen.
hörbel schrieb: > Du kannst Dir so etwas mit einer low-cost MCU ja selber bauen. Weit > unter 0.30 EUR wirst Du wohl mit einer anderen IC-Lösung auch nicht > kommen. Danke für deine Antwort! Stimmt, ans selber Programmieren habe ich auch schon gedacht. Allerdings wäre mir der geringere Aufwand einer fertigen IC-Lösung auch einen Aufpreis wert :)
Im Moment scheint der ATtiny9 der günstigste MCU bei Mouser zu sein. Drei GPIO reichen gerade für Input/Output und einen Taster.
Mike schrieb: > Gibt es einen IC, der aus meinen Tastersignalen ein Serielles Signal > macht und gleichzeitig noch kaskadierbar ist? Idealerweise sollte dieser > IC einfach 1 bit pro Taster an einen ankommenden Datenstream anhängen > und diesen dann an den nächsten IC weitergeben. Du könntest dafür auch eine Kaskade aus 74HC165 ICs nehmen.
Reiner_Gast schrieb: > Du könntest dafür auch eine Kaskade aus 74HC165 ICs nehmen. Und du darfst erzählen, wie das mit einer Leitung zu machen wäre ... Mike schrieb: > wie ich die Taster mit möglichst nur einer > Datenleitung abfragen kann.
HildeK schrieb: > Und du darfst erzählen, wie das mit einer Leitung zu machen wäre ... Ganz einfach: eine 4-adrige Leitung mit Abschirmung.
HildeK schrieb: > Reiner_Gast schrieb: >> Du könntest dafür auch eine Kaskade aus 74HC165 ICs nehmen. > > Und du darfst erzählen, wie das mit einer Leitung zu machen wäre ... > > Mike schrieb: >> wie ich die Taster mit möglichst nur einer >> Datenleitung abfragen kann. Das wird mit keinem der bisher genannten IC (weder MC23017 noch 74HC165) gehen... Du wirst immer mindestens ein Clocksignal und eine Datenleitung brauchen. Selbst das Timing auf dem WS2812 ist sehr eng und empfindlichst genau einzuhalten. Sonst flackert es wie wild. Eine 1 Draht Datenleitung könnte ich mir lediglich auf Basis eines One-Wire Busses vorstellen. Dafür käme z.B. der DS2408 in Frage: https://www.maximintegrated.com/en/products/digital/memory-products/DS2408.html Hier ist aber wieder ein exaktes Timing einzuhalten und es ist schwierig festzustellen, in welcher Reihenfolge die ICs am Datenbus hängen.
m.n. schrieb: >> Und du darfst erzählen, wie das mit einer Leitung zu machen wäre ... > > Ganz einfach: eine 4-adrige Leitung mit Abschirmung. Mit einer 101-adrigen Leitung wäre es einfacher.
Mike schrieb: > einfach 1 bit pro Taster an einen ankommenden Datenstream anhängen > und diesen dann an den nächsten IC weitergeben Ob ein Datenwort mit 100 bit Länge ein gutes Protokoll ist würde ich bezweifeln. So etwas ist sehr störanfällig. Georg
Mike schrieb: > Gibt es einen IC, der aus meinen Tastersignalen ein Serielles Signal > macht und gleichzeitig noch kaskadierbar ist? Üblicherweise nimmt man Schieberegister wie 74HC589, aber die brauchen ein LOAD Signal und ein Taktsignal, weil sie für universelle Taktraten und Schieberegisterlängen gebaut sind. Weiss man das Protokoll, kann man das LOAD und CLK Signal aus einer Datenleitung gewinnen, z.B. mit 3 MonoFlops:
1 | +----+ +------+ |
2 | +--| MF1|--|LOAD | |
3 | | +----+ | | |
4 | | | | |
5 | DataIn --+----------|DATA | |
6 | | | OUT|-----|-\ |
7 | | +----+ | | | )--DataOut |
8 | +--| MF2|--|CLK | +--|-/ |
9 | | +----+ +------+ | |
10 | | +----+ | |
11 | +--| MF3|------------+ |
12 | +----+ |
Eine lange Pause im DataIn Signal erzeugt LOAD, ein kurzer Impuls steht für 0 (da ist das Signal schon wieder 0 wenn CLK fällt) ein langer Impuls steht für 1 (muss aber auch zeitlich begrenzt sein, daher MF3). Dummerweise kostet das 3 MonoFlops, die man mit 3 Schmitt.triggern und RC Netzwerken aufbauen könnte, kostet also einen zusätzlichen IC. Da nimmt man heute doch besser einen uC, der kann dann auch mehr als 8 Tasten (falls das nötig ist und nicht sowieso nur 1 Taste pro Platine erfasst werden soll). Bleibt die Frage, ob die Schaltung mit 1 CD4093 aufgebaut werden könnte wenn man nur 1 Taste einlesen will...
georg schrieb: > So etwas ist sehr störanfällig. Zur Ergänzung: 1 Tasternode kaputt - nichts geht mehr. Fröhliche Fehlersuche. Georg
Offensichtlich ist der Begriff Datenleitung nicht jedem bekannt. Es handelt sich jedenfalls nicht um eine 1-adrige Leitung. Die diesbezüglichen Schaltungs-Spinnereien kann man sich daher sparen.
m.n. schrieb: > Es handelt sich jedenfalls nicht um eine 1-adrige Leitung. Doch, plus Versorgung. Der TO hat ja explizit auf WS2812-LEDs Bezug genommen.
HildeK schrieb: > m.n. schrieb: >> Es handelt sich jedenfalls nicht um eine 1-adrige Leitung. > > Doch, plus Versorgung. Der TO hat ja explizit auf WS2812-LEDs Bezug > genommen. Der TO hat auch "möglichst" in diesem Bezug genannt, also quasi ein Nice-2-Have
HildeK schrieb: > m.n. schrieb: >> Es handelt sich jedenfalls nicht um eine 1-adrige Leitung. > > Doch, plus Versorgung. Der TO hat ja explizit auf WS2812-LEDs Bezug > genommen. Das zeigt eigentlich nur, daß der TO garnichts anderes kennt. Völlig abartig finde ich obige Vorschläge mit einem 30 ct µC, als ob das der Knackpunkt wäre. Das Teuerste bei jeder Lösung ist die Verkabelung. Daher ist es von Vorteil, wenn man auf vorhandene, konfektionierte Leitungen zurückgreifen kann. Günstig sind dann z.B. USB- oder Netzwerkkabel, wenn man eine 'steckbare Lösung' braucht. Aber letzlich fehlen noch einige Informationen zur Anwendung, zum Beispiel über die räumliche Ausbreitung der Taster und mögliche Störquellen im Umfeld.
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.