Hallo, möchte den Controller über vier Eingabetasten steuern ...für jeden Druckschalter ein Bit in Beschlag zu nehmen, ist natürlich kein Problem. Meine mich aber erinnern zu können, dass man mit Hilfe von zwei Dioden bei vier Schaltern auch mit drei Bits auskommen kann, kann das hinkommen? Ihr Profis wißt sicher mehr! VG Volker
@YS-500 (Gast)
>Für 4 Taster genügen 2 Bits.
wie willst du damit "nicht getastet" ermittlen?
mit 3Bits sollte es gehen.
volker_gast wrote: > Meine mich aber erinnern zu können, dass man mit Hilfe von zwei Dioden > bei vier Schaltern auch mit drei Bits auskommen kann, kann das > hinkommen? Wenn schon Pins sparen, dann aber richtig: Ein Pin des ADC reicht und 3 Widerstände an den Tasten. Peter
also wenn schon sparen, dann nur einen taster und den mit vier verschiedenen morsecodes ansteuern
mit den dioden kannst du nur rausfinden wie viele taster ugleich gedrückt sind. wenn du für jeden einzelnen taster ein/aus haben willst, brauchst du 1bit pro taster, oder einen portexpander
Es müßte eigentlich auch mit einem Pin gehen: An jeden Kontakt hängt man ein RC-Glied mit jeweils doppelter Zeitkonstante, wie beim Vorgänger. Zum Auslesen der Schalterstellung legt man zunächst den Port wenigstens 10 * T der längsten Zeitkonstante auf Null, um alle Kondensatoren zu entladen und setzt den Zähler auf 0. Dann setzt man den Port auf 1 und liest ihn nach einer Verzögerung, die der kürzesten Zeitkonstante entspricht, ein und inkrementiert den Zähler. (Der Port muß dabei jeweils umprogammiert werden.) Das wird wiederholt, bis eine 1 erkannt wird, oder die maximale Anzahl Tests durchlaufen ist. Dann steht im Zähler das Bitmuster, das der gedrückten Tastenkombination entspricht. Ich habs allerdings noch nicht ausprobiert, aber es wäre interessant zu wissen, wieviele Taster man mit der Methode unterscheiden kann.
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.