Forum: Mikrocontroller und Digitale Elektronik Analog Keypad 3x4


von Stefan A. (ripper121)


Angehängte Dateien:

Lesenswert?

Hallo :),
Ich habe ein Keypad 4x3.
Die derzeitigen Widerstandswerte haben für Reihe 4 ADC Werte die zu nah 
aneinander liegen.
Was für Widerstandswerte wären hier besser geeignet?

µC ist Atmega328P, VCC ist 3.3-2.4V

von Wolfgang E. (Firma: janeeisklar) (whattheheck)


Lesenswert?

Ich würde für jeden der 5 Widerstände am Keypad einen anderen Wert aus 
der gleichen Dekade nehmen, also 5 unterschiedliche Werte.
Für den Widerstand, der an GND angeschlossen ist, würde ich einen 
mittleren Wert nehmen.

Z.B. 1k, 2k2, 3k3, 5k6, 6k8 für das Keypad und 4k7 Richtung GND.

: Bearbeitet durch User
von Arduinoquäler (Gast)


Lesenswert?

Stefan A. schrieb:
> VCC ist 3.3-2.4V

Glaub ich nicht.

Du darf ruhig - um die Diagnosemöglichkeiten deutlich zu verbessern -
deine komplette Hardware offenlegen.

von Michael B. (laberkopp)


Lesenswert?

Stefan A. schrieb:
> Was für Widerstandswerte wären hier besser geeignet?

Gar keine, sondern echte Matrixauswertung.

Früher hat man sich über N-Key-Rollover noch Gedanken gemacht und extra 
Dioden in die Tastaturmatrix eingelötet,

heute wissen die Kinder nicht mal mehr was das ist und pfuschen sich 
Unbedienbares zurecht bloss weil sie es "Einfacher" finden.

von Stefan A. (ripper121)


Lesenswert?

Michael B. schrieb:
> Stefan A. schrieb:
>> Was für Widerstandswerte wären hier besser geeignet?
>
> Gar keine, sondern echte Matrixauswertung.
>
> Früher hat man sich über N-Key-Rollover noch Gedanken gemacht und extra
> Dioden in die Tastaturmatrix eingelötet,
>
> heute wissen die Kinder nicht mal mehr was das ist und pfuschen sich
> Unbedienbares zurecht bloss weil sie es "Einfacher" finden.

Es geht hier um Pin Einsparung.
Ich will auch nicht mehrere Tasten sondern nur immer 1 Taste auswerten.

von Stefan A. (ripper121)


Lesenswert?

Arduinoquäler schrieb:
> Stefan A. schrieb:
>> VCC ist 3.3-2.4V
>
> Glaub ich nicht.
>
> Du darf ruhig - um die Diagnosemöglichkeiten deutlich zu verbessern -
> deine komplette Hardware offenlegen.

Batteriebetrieben und der EEPROM läuft nur bis 2.4V

von Arduinoquäler (Gast)


Lesenswert?

Stefan A. schrieb:
> Batteriebetrieben und der EEPROM läuft nur bis 2.4V

... und wo zauberst du dann deine 5V laut Schaltplan her?

von Stefan A. (ripper121)


Lesenswert?

Arduinoquäler schrieb:
> Stefan A. schrieb:
>> Batteriebetrieben und der EEPROM läuft nur bis 2.4V
>
> ... und wo zauberst du dann deine 5V laut Schaltplan her?

Deswegen habe ich das extra nochmal hin geschrieben.

von Arduinoquäler (Gast)


Lesenswert?

Stefan A. schrieb:
> Deswegen habe ich das extra nochmal hin geschrieben.

Dir muss man jeden Popel einzeln aus der Nase ziehen.
Ohne mich.

von Stefan A. (ripper121)


Lesenswert?

Arduinoquäler schrieb:
> Stefan A. schrieb:
>> Deswegen habe ich das extra nochmal hin geschrieben.
>
> Dir muss man jeden Popel einzeln aus der Nase ziehen.
> Ohne mich.

Nicht weiter schlimm, hast ja eh nix Konstruktives beigetragen.

@Wolfgang Erbes: Danke für den Tipp

von MCUA (Gast)


Lesenswert?

>Es geht hier um Pin Einsparung.
>Ich will auch nicht mehrere Tasten sondern nur immer 1 Taste auswerten.
ob Mehrfach-Tasten-Auswertung oder nicht interessiert hier nicht.
Denn ob du willst oder nicht, wenn alles über eine Anal-Leitung (dann an 
den ADC) gehen soll, musst du für jede Taste ein einzelnes Bit 
reservieren, sonst kannst du die einzelnen Tasten nicht voneinander 
unterscheiden.
Wäre 12 Bit-ADC bei 12 Tasten. Würd ich (bei diesem AVR) so nicht 
machen.

von Georg (Gast)


Lesenswert?

MCUA schrieb:
> musst du für jede Taste ein einzelnes Bit
> reservieren, sonst kannst du die einzelnen Tasten nicht voneinander
> unterscheiden.

Das ist schlicht Unsinn - man muss den Gesamtbereich in 13 Abschnitte 
teilen, am besten gleich grosse, da bekommt man selbst bei 8 bit ADCs 
noch 20 Schritte pro Abschnitt.

Georg

von MCUA (Gast)


Lesenswert?

>Das ist schlicht Unsinn - man muss den Gesamtbereich in 13 Abschnitte
>teilen, am besten gleich grosse, da bekommt man selbst bei 8 bit ADCs
>noch 20 Schritte pro Abschnitt.
Falsch gedacht!
Damit findest du nicht heraus, ob genau eine Taste gedrückt ist.

von Stefan A. (ripper121)


Lesenswert?

MCUA schrieb:
> Das ist schlicht Unsinn - man muss den Gesamtbereich in 13
> Abschnitte >teilen, am besten gleich grosse, da bekommt man selbst bei 8
> bit ADCs >noch 20 Schritte pro Abschnitt.
>
> Falsch gedacht!
> Damit findest du nicht heraus, ob genau eine Taste gedrückt ist.

will ich ja auch nicht.

von MCUA (Gast)


Lesenswert?

>will ich ja auch nicht.
Dann weisst du auch nicht, ob die anscheind detektierte Taste überhaupt 
gedrückt ist! Ist doch Murks.

von Stefan A. (ripper121)


Lesenswert?

MCUA schrieb:
> will ich ja auch nicht.
>
> Dann weisst du auch nicht, ob die anscheind detektierte Taste überhaupt
> gedrückt ist! Ist doch Murks.

es ist ein  keypad für eine Tür und die tasten sind so groß das man 
selbst mit riesen Händen nicht 2 tasten auf einmal drückt.

von Georg (Gast)


Lesenswert?

Stefan A. schrieb:
> es ist ein  keypad für eine Tür und die tasten sind so groß das man
> selbst mit riesen Händen nicht 2 tasten auf einmal drückt

Und selbst wenn jemand trotzdem 2 Tasten drückt und vielleicht mit dem 
Fuss noch eine dritte, dann geht eben die Tür nicht auf - das ist doch 
völlig in Ordnung. Falsch bedient ist falsch bedient, da hilft auch ein 
N-Key-Rollover nicht weiter.

Georg

von MCUA (Gast)


Lesenswert?

diese Schaltung enthielte automatisch einen Prioritäts-Dekoder

von Peter D. (peda)


Lesenswert?


von Stefan A. (ripper121)


Angehängte Dateien:

Lesenswert?

Hier meine Werte.
Min Abstand von 40 zwischen den ADC Werten sollte reichen.

von Georg (Gast)


Lesenswert?

Stefan A. schrieb:
> Hier meine Werte.
> Min Abstand von 40 zwischen den ADC Werten sollte reichen.

Geht doch. Trotz "Hilfe".

Georg

von Stefan A. (ripper121)


Lesenswert?

Hier noch ne Berechnung für Mehr oder weniger Tasten:
http://www.lispology.com/show?10QY
oder hier für 4x4
http://www.technoblogy.com/show?NGM

von Hannes L. (hannes)


Angehängte Dateien:

Lesenswert?

Kannst ja ein bissel mit den Werten spielen.

Bei ratiometrischer Messung spielt die genaue Höhe der 
Versorgungsspannung keine Rolle.

...

von Peter D. (peda)


Lesenswert?

Stefan A. schrieb:
> Die derzeitigen Widerstandswerte haben für Reihe 4 ADC Werte die zu nah
> aneinander liegen.
> Was für Widerstandswerte wären hier besser geeignet?

Der rechte Widerstand ist zu klein, er bildet ja einen Spannungsteiler. 
Besser sind da 10k geeignet. Und die 4,7k durch 3,3k oder 3,0k ersetzen.

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.