Das ist wirklich etwas offtopic, ich hoffe aber jemanden zu finden, der ein ähnliches Problem gelöst hat. Ich baue mit einem µC ein Gerät, bei dem man u.a. das Datum und die Uhrzeit einstellen kann. Dazu stehen aher nur Cursor-Tasten und die Bestätigung zur Verfügung. Links/Rechts wählt die Stelle h10 -> h1 -> m10 -> m1 -> d10 -> d1 -> mon10 -> mon1 -> y10 -> y1 Das Jahrhundert kann nicht verstellt werden. Neben dem -> gibts natürlich auch das <- das zur vorherigen Stelle springt. Wenn man hoch/runter drückt, wird die aktuelle Stelle jeweils verändert. Interessant wird die Frage, wie man mit "ungültigen" Werten umgehen soll. Wenn man h=18 hat und die aktuelle Stelle die Zehnerstelle ist, würde als nächster Wert 28 entstehen. Das ist für eine Stunde nicht sinnvoll. Ähnlich sieht es bei Tag und Monat des Datums aus. Wenn man den Zehner des Monats von 4 erhöht, würde man auf den 14. Monat kommen, was sicher nicht sinnvoll ist. Was ist ein guter Ansatz für ein akzeptables Nutzerinterfaces für meinen Wecker?
Möglichkeiten: - Erhöhen von 4 auf 14 beim Monat nicht zulassen => Passiert nichts - Springen aufs Maximum: 12 - Zulassen und beim Speichern am Ende ungültige Werte durchs Maximum ersetzen, auf 1 setzen oder so Grundsätzlich würde ich eher zu Möglichkeit 2 oder 3 raten, mit Tendenz zu 2.
.. oder du erlaubst nur das Stellen des jeweiligen Wertes, also gar kein rumfummeln an der 10er Stellen. Mit einer sanften Beschleunigung wenn man die Taste gedrückt hält, ist auch das Stellen von Minuten und Sekunden flott. Wie oft passiert die Stellerei denn?
Matthias Sch. schrieb: > .. oder du erlaubst nur das Stellen des jeweiligen Wertes, also gar kein > rumfummeln an der 10er Stellen. Also nicht per Ziffer sondern per Wert (y,m,d,h,m)? Hmm, bisher hatte ich kein Autorepeat bei den Tastern geplant. Ohne dem müste man aber bis zu 30x drücken. Das will keiner. > Mit einer sanften Beschleunigung wenn man die Taste gedrückt hält, Ja, das wäre eine Möglichkeit, was aber auf zu Verwirrung führen kann, wenn's zu schnell wird. Die Beschleunigung wird dann irgendwann zu Ende sein müssen. > Wie oft passiert die Stellerei denn? Nun die Uhr läuft schon batteriegestützt. Der Quarz ist aber nicht in einem Termostat. Also etwa wie eine billige Haushaltsuhr eben. Man sollte aber die Zeit schon korrigieren können.
Johannes O. schrieb: > 1. Erhöhen von 4 auf 14 beim Monat nicht zulassen => Passiert nichts Naja, das sieht dann so aus wie kaputt. Keine Reaktion ist nicht erwünscht. > 2. Springen aufs Maximum: 12 > 3. Zulassen und beim Speichern am Ende ungültige Werte durchs Maximum > ersetzen, auf 1 setzen oder so Das ist nicht so praktikabel. Wenn ich das beim Monat zulasse, weiß ich nicht mehr, wor die Grenze beim Monat liegen soll. > > Grundsätzlich würde ich eher zu Möglichkeit 2 oder 3 raten, mit Tendenz > zu 2. Ja, sozusagen an den Poller fahren. Das wäre eine Möglichkeit, mir minimalen Tasterdrücken den größten/kleinsten Wert zu erreichen.
Harper Blues schrieb: > Matthias Sch. schrieb: >> .. oder du erlaubst nur das Stellen des jeweiligen Wertes, also gar kein >> rumfummeln an der 10er Stellen. > Also nicht per Ziffer sondern per Wert (y,m,d,h,m)? > > Hmm, bisher hatte ich kein Autorepeat bei den Tastern geplant. Ohne dem > müste man aber bis zu 30x drücken. Das will keiner. Welche Tastenroutinen benutzt du? Mit den PeDa Routinen aus dem Entprellen-Artikel ist das (Autorepeat) überhaupt kein Problem und funktioniert erstklassig. Sowohl in der Programmierung als auch in der Bedienung. Auf jeden Fall besser als dieser ganze 'du kannst die Einer nicht erhöhen, wenn sich dadurch mit den zehner ein ungültiger Zustand ergibt' Ansatz (ich hätte jetzt fast Unsinn gesagt - wer sowas einmal benutzen musste schmeisst das Ding am liebsten in die nächste Ecke) Oder was glaubst du, warum wir die anpreisen wie warme Semmeln?
:
Bearbeitet durch User
Das in dem Artikel Entprellung (nicht Entprellen, der Link wurde leider nicht gefunden) genannte Autorepeat klingt interessant. Ich werde das mal ausprobieren.
:
Bearbeitet durch User
Harper Blues schrieb: > Nun die Uhr läuft schon batteriegestützt. Der Quarz ist aber nicht in > einem Termostat. Also etwa wie eine billige Haushaltsuhr eben. Man > sollte aber die Zeit schon korrigieren können. Das heisst, du stellst die Uhr einmal komplett und korrigierst dann die Abweichung alle paar Monate oder so. Harper Blues schrieb: > Hmm, bisher hatte ich kein Autorepeat bei den Tastern geplant. Ohne dem > müste man aber bis zu 30x drücken. Das will keiner. Nee, aber Autorepeat ist heute in jedem Schmutzwecker eingebaut und wird vom Bediener selbstverständlich angenommen. Da du sowohl hoch- als auch runterstellen kannst, reicht ein 2-stufiges Autorepeat mit Sicherheit aus, bei dem nach dem ersten Tastendruck länger gewartet wird, und dann im 1/2 Sekundentakt wiederholt wird.
:
Bearbeitet durch User
Ich habe einen Wecker (mit Autorepeat), der zaehlt bei Erreichen von x0 oder x5 in 5er Schritten weiter. Das finde ich recht praktisch und schnell. zB. von 18 auf 43 : gedrückt halten 18 19 20 25 30 35 40 loslassen und 3 * kurz drücken 43
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.