Tastenfeld 4 Stellige Zahl

Hallo,

Hätte da jemand von euch eine Idee, wie ich mit einem 4x4 Tastenfeld eine 4 stellige Zahl eingeben kann ?

Ich Nutze ja das 4x4 Matrix Tastenfeld. Das Auslesen einer einzelne Taste Funktioniert. Nun möchte ich aber über das Tastenfeld eine Zahl von 1 bis 9999 eingeben. Die Eingabe sollte mit * gespeichert werden. Das ganze soll nicht als Geheimzahl funktionieren.
Das auslesen habe ich in der Loop Funktion mit folgendem Code gemacht :

void loop()
{
  
  char key = kpd.getKey();
  if(key)  // Check for a valid key.
  {
    switch (key)
    {
      case 'a':
        ausloesen();
      break;

      case 'b':
        pauseplus(wartezeit);
      break;

      case 'c':
        pauseminus(wartezeit);
      break;

        case 'd':
        anzahlbilder(anzahl);
      break;
      
      default:
        Serial.println(key);
    }
  }
}

Bei diesem Code würde ich gerne in der Unterfunktion "anzahlbilder"
die Variable "anzahl" anhand der Eingabe übers Tastenfeld ändern.

Gruß

Roland

Am einfachsten geht es wahrscheinlich mit Multiplikation mit 10 und Addition der aktuellen Ziffer

z.B.: 7438

1.) Zähler: 0, Eingabe: 7
Zähler = 0 * 10 + 7 = 7

1.) Zähler: 7, Eingabe: 4
Zähler = 7 * 10 + 4 = 70 + 4 = 74

1.) Zähler: 74, Eingabe: 3
Zähler = 74 * 10 + 3 = 740 + 3 = 743

1.) Zähler: 743, Eingabe: 8
Zähler = 743 * 10 + 8 = 7430 + 8 = 7438

Dann musst du noch die Anzahl der Tastendrücke zählen so dass man maximal 4 Ziffern eingeben kann

:slight_smile: hat funktioniert. Vielen dank !!!

Hat jemand von euch denn schonmal einen arduino über Batterie betrieben ?
Ich möchte meine Schaltung an meiner Spiegelrefelex anschließen und Bilder über 3 - 5 Stunden
aufnehmen. Und draußen im Wald gibt es leider keine Steckdose :frowning:

Zuhausenutze ich den Arduino Uno. Ich hätte aber auch noch einen Arduino Micro ( falls der weniger Strom verbraucht ).

Und welche Betterie bzw. Akku könnte ich nutzen ?

Gruß

Roland

Sir_Roland:
Hat jemand von euch denn schonmal einen arduino über Batterie betrieben ?

Ja, einen ATtiny 4313 mit 4,5 V bei 1 MHz.

Sir_Roland:
Und welche Betterie bzw. Akku könnte ich nutzen ?

Wenn es der Micro ist, den ich kenne, der einen USB-Anschluß hat, dann wäre eine USB-Powerbank eine Möglichkeit. Oder 9 - 12 V Batterie/Akku mit Stepdown-Wandler auf 5 V und dann an den 5 V-Anschluß vom Arduino (ist normalerweise effektiver als der eingebaute Regler).

Evtl. hilfreich: Gammon Forum : Electronics : Microprocessors : Power saving techniques for microprocessors

Gruß

Gregor

Ich habe einen Arduino Nano mit einer USB-Powerbank (5000mAh) betrieben.
Nach drei Stunden war die Ladezustandsanzeige (4 LEDs) immer noch auf 4 (75...100 %).
Allerdings schalten diese USB-Powerbanks bei zu geringer Stromentnahme nach kurzer Zeit ab, weil sie eigentlich zum laden von Smartphones gedacht sind und sie den geringen Strom für das Ladeende halten.

Du musst also die Stromentnahme möglicherweise erhöhen (klingt paradox). Bei mir waren das ca. 100 mA.