Features des Codes
-
Touchscreen-Bedienung
5x5 Tastenfeld auf 3,5" TFT mit MCUFriend (Zahlen, Operatoren, Funktionen, Klammern, Löschen usw.) Große Tastenflächen und klare Labels für einfaches Tippen Jede Taste reagiert direkt auf Berührung
-
Serieller Modus (USB/Serial Monitor)
Rechnen per Serial Monitor (z.B. Arduino IDE → Werkzeuge → Serieller Monitor) Komplette Rechnungen eingeben (12+34/2, sqrt(16)+2, 1/0) Auch Operatoren-Fortsetzung: Wenn ein Ergebnis im Display steht, reicht z.B. /2, um mit diesem Wert weiterzurechnen (Anzeige: 20, Serial: /2 → Anzeige: 10)
-
Autokorrektur von Eingaben
Automatische Korrektur typischer Syntaxfehler und unvollständiger Eingaben: Komma wird zu Punkt (1,5 → 1.5) Doppelte Operatoren werden entfernt (1++2 → 1+2) Operatoren direkt nach ( werden entfernt ((+)5 → (5)) Leere Klammern entfernt (() → entfernt) Zahlen direkt vor einer Klammer (2(3+4)) → Multiplikationszeichen eingefügt (2*(3+4)) Klammer gefolgt von Zahl ((2)3 → (2)*3) Fehlende schließende Klammern werden ergänzt Ausdruck ohne Zahl (++--((()))) wird zu "0" Leere Eingabe wird zu "0" End-Operatoren werden entfernt (2+3+ → 2+3) Doppelte Plus/Minus am Anfang werden reduziert (--4 → 4) Ergebnis: Sehr viel weniger „ERR“ – Eingaben werden wie bei modernen Rechnern interpretiert
-
Mathematik-Parser
Eigener Parser für Ausdrücke mit Klammern, Punkt-vor-Strich, mehrere Operatoren Operatoren: +, -, *, /, % Klammern beliebig verschachtelt Funktionen: sqrt(…) (Wurzel) sq(…) (Quadrat) inv(…) (Kehrwert, 1/x) Direkte Quadrat-/Wurzel-Taste am Touchscreen (x^2, sqrt, 1/x)
-
Komfortables Fehlerhandling
Division durch Null, zu große/kleine Ergebnisse, Stacküberlauf → Anzeige „ERR“ Nach „ERR“ kann weitergerechnet werden (Touch oder Serial, keine Blockade mehr) **„C“ löscht alles und setzt auf „0“ zurück Watchdog-Timer (2s): Sollte dennoch ein Fehler im Code (Endlosschleife, Stacküberlauf) passieren, startet das System automatisch neu
-
Ergebnisformatierung
Ganze Zahlen werden als Integer angezeigt (ohne .0) Kommazahlen werden ohne unnötige Nullen ausgegeben Sehr große Zahlen (Überlauf) führen zu „ERR“
-
Synchronisierte Anzeige
Egal ob über Touch oder Serial gerechnet wird: Das Ergebnis ist immer sofort auf dem Display und im Serial Monitor sichtbar
-
Zusätzliche Komfortfunktionen
Löschen einzelner Zeichen („<-“) Vorzeichen umschalten („+/-“) Prozent-Umrechnung Automatisches Weiterrechnen nach Touch oder Serial
-
Speichersicher, stabil und absturzfest
Alle Array-Kopien und -Längen werden korrekt geprüft (Buffer Overflow-Schutz) Eingabegrößen (Touch und Serial) sind begrenzt (INPUT_MAX) Alle Stackoperationen geprüft: Tiefe Klammerausdrücke führen zu „ERR“, nicht zum Absturz
-
Benutzerfreundlichkeit
Fehlerkorrektur statt Fehlermeldung Keine Angst mehr vor Syntaxfehlern Funktioniert wie ein smarter Taschenrechner am Smartphone
Funktioniert mit Touchscreen(3.5 TFT Lcd Shield, kalibrieren nicht vergessen) oder Seriel (115200 baud)