Arduino Taschenrechner

eine weitere Bastelseite ....

Arduino Taschenrechner

14. Mai 2021 Arduino 0

Warum?

In der Letzten Zeit habe ich sehr oft sehr viele Online-Rechner benutzt um zum Beispiel aus einem Durchmesser einen Umfang oder um aus Grad Celsius Grad Fahrenheit und mehr zu berechnen. Nachdem ich jedoch irgendwann den überblick über die vielen Webseiten verloren habe, entschied ich mich einen Ordner mit C-Programmen für die jeweiligen Rechner anzulegen. In diesen Programmen gibt man Z.B. einen Durchmesser eines Kreises im Seriellen Monitor an und erhält den Umfang des Kreises im Seriellen  Monitor.

 

Wie?

Für meinen Rechner werde ich einen Arduino (in meinem Fall den Atmega-2560) benutzen, da dieser schnell läuft, es sollte jedoch jeder möglich sein. Damit er nicht die ganze Zeit ungewollt Zahlen einliest, die gar nicht von mir eingetippt worden sind, findet das Lesen der Werte, die Rechnung und das Ausgeben der Werte in einer „if(Serial.available()){“ Schleife statt. In meinem Rechner werde ich den „Serial.parseFloat()“ Befehl benutzen, da man mit diesem einen eingelesenen Wert in einem Float speichern kann. Dann kommt die an sich selbst erklärende Rechnung, in der ich einfach nur die Werte mape. Und am Ende Kommt noch das Ausgeben der Werte im Seriellen Monitor.

Die 3 eingelesenen Zahlen werden auf Grund der englischen Schreibweise mit einem Komma getrennt und Kommas werden mit einem Punkt geschrieben. Das Programm Funktioniert in dem man 3 Werte (Wert_1, Wert_2 und x) eingibt und mit einem Komma trennt. Dann muss man nur noch auf Enter drücken und sollte ein Ergebnis bekommen.

Hier ist mein Programm:

 

/////////////////////////////////////////////////////////////
//                                                         //
//    Arduino Mathe Rechner für Proportionale Funktionen    //
//                                                         //
/////////////////////////////////////////////////////////////
//  Mehr zum Code unter www.Towinet.de 

void setup() {                                    //Beginnen mit der Hauptschleife
  Serial.begin(115200);                           //Verbindung mit Computer aufbauen
}                                                 //Beenden der Start-Schleife

void loop() {                                     //Starten der Hauptschleife, die immer ab anschalten immer an ist
  if(Serial.available()){                         //Wenn etwas vom Computer versendet wurde,...

    //Einlesen der Werte
    float Wert_1 = Serial.parseFloat();           //einlesen von "Wert_1"   //und erstellt ein Float namens "Wert_1"
    float Wert_2 = Serial.parseFloat();           //einlesen von "Wert_2"   //und erstellt ein Float namens "Wert_2"
    float x = Serial.parseFloat();                //einlesen von "x"        //und erstellt ein Float namens "x"
    
    //Rechnug der Aufgabe
    float y = map(x, 0.0, Wert_1, 0.0, Wert_2);   //Die Mathematische Operation (Rechnung)

    //Ausgeben der Werte
    Serial.print(Wert_1);                         //Ausgeben des 1.Wertes
    Serial.print(" entspricht ");                 //Ausgeben des wortes " entspricht "
    Serial.println(Wert_2);                       //Ausgeben des 2.Wertes
    Serial.print(x);                              //Ausgeben von x
    Serial.print(" entspricht dann ");            //Ausgeben des wortes " entspricht dann "
    Serial.print(y);                              //Ausgeben von y
  }                                               //Beenden der "Wenn etwas vom Computer versendet wurde" Schleife
}

 

 

Schritt 1:

Werte eintippen

 

 

 

 

Schritt 2:

Enter Drücken

 

 

Schritt 3:

Ergebnisse betrachten