Forum: Mikrocontroller und Digitale Elektronik Arduino Serial Monitor


von Cash666 (Gast)


Lesenswert?

Hallo liebe Wissenden,
ich teste momentan einen Code zum Auslesen von Sensoren, dabei nutze ich 
den Arduino Uno Simulator v2.0.1

Was ich nicht ganz verstehe /bzw auf die reihe bekomme ist die serielle 
ausgabe.
Nehmen wir folgendes an:
Sensor gibt ein Analog Signal 0-5V aus. Das wird umgerechnet in den 
entsprechenden Wert x der angezeigt werden soll.
Also gibts:
void loop () {
   Serial.print("Anzeige Wert");
   Serial.print(x,0);                  //Wert mit einer Kommastelle
}

Problem ist, dass "Anzeige Wert x" immer wieder nacheinander im Serial 
Monitor ausgegeben wird. (Arduino Sim)
quasi:
 Anzeige Wert 0
 Anzeige Wert 1
 ....

Was ich will ist: im Serial Monitor steht: "Anzeige Wert" und der ändert 
sich nicht, aber der Wert x dahinter sol sich quasi in echtzeit ändern.

Wie mach ich das? Liegt das am Serial.print oder am Serial Monitor?

danke für alle Hilfe!

Beitrag #5298709 wurde vom Autor gelöscht.
von Einer K. (Gast)


Lesenswert?

Cash666 schrieb:
> Wie mach ich das?

Du möchtest den Serial Monitor entsorgen und stattdessen eine VT100 
(o.ä.) Emulation verwenden.
Also z.B. PuTTy.
Und diesen dann mit den entsprechenden ESC Codes beliefern.

von Cash666 (Gast)


Lesenswert?

Dank! Soweit, so gut.
Das funktioniert Grundsätzlich. Mein nächstes Problem ist allerdings die 
Übertragungsgeschwindigkeit...wobei ich mir nicht mal sicher bin ob das 
wirklich das Problem ist.

Im Serial Monitor werden die übertragenen Werte ca. im Sekunden Takt 
übertragen, was  für eine "nahezu Echtzeit" Darstellung von Messwerten 
(zb. Drehzahl) blöd ist. Allerdings ändert sich das auch nicht, egal 
welche Baudrate ich einstelle.

Wo muss ich nach dem Problem suchen? Für die Drehzahl lese ich zb. einen 
digitalen Eingang über pulseIn() aus. Für einen anderen Messwert kommt 
analogRead() zum Einsatz.

Danke und LG

von Einer K. (Gast)


Lesenswert?

Sowohl analogRead() als auch pulseIn() blockieren während ihrer 
Messungen.
Außerdem stören die ganzen delay() in deinem Code.

von Cash666 (Gast)


Lesenswert?

Delay() hab ich nirgends drin...nur das eben angesprochene.
Gibts ne Möglichkeit das zu beschleunigen? Oder sind das einfach die 
Grenzen des Arduinos?

Danke Dir!

von Cash666 (Gast)


Lesenswert?

Hab grad nochmal geschaut...AnalogRead() ist nicht das Problem. Nur 
PulseIn() lief ohne angeschlossenen Sensor zu lange...also wenn man den 
Timeout bei PulseIn() hinzufügt klappts jetzt.

von chris (Gast)


Lesenswert?

>ich teste momentan einen Code zum Auslesen von Sensoren, dabei nutze ich
>den Arduino Uno Simulator v2.0.1

Wo gibt es denn den Simulator?

von Mandi (Gast)


Lesenswert?

chris schrieb:

 >Wo gibt es denn den Simulator?

Hier:

https://www.sites.google.com/site/unoardusim/services

von chris (Gast)


Lesenswert?

>https://www.sites.google.com/site/unoardusim/services

Danke. Schade, dass es auf der Seite keine Bilder gibt.
Ich habe aber hier welche gefunden:
https://tallerelectronica.com/2015/04/11/unoardusim-software-de-simulacion-de-arduino-uno/

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.