Kontinuierliche UART Ausgabe

Gast #1235139
Hi Leute, ich brauche mal eure hilfe bei einer schönen kontinuierlichen 
Ausgabe per uart.

Und zwar lese ich per ADC 8 Analog Werte ein und rechne diese um was 
alles super funktioniert.Auch die sprintf ausgabe eines einzellnen 
Wertes (zum Beispiel sende ich eine 1 zum Atmega8 und er gibt mir 
Channel 1: x.xx V zurück was auch klappt)

Nun möchte ich nicht jedesmal die Ausgabe anstossen sondern würde gerne 
zum beispiel die Werte der Kanäle 0-4 kontinuielich ausgeben um die 
Messwerte direkt im Auge zu haben.

Mein problem ist nun das er mir die natürlich immer hintereinander 
ausgibt was aber zu schnell ist um die werte lesen zu können.

Das sieht dann so aus:

Channel 0 : 0.010 V
Channel 1 : 0.015 V
Channel 2 : 0.007 V
Channel 3 : 0.020 V
Channel 0 : 0.010 V
Channel 1 : 0.012 V
Channel 2 : 0.007 V
Channel 3 : 0.022 V
Channel 0 : 0.010 V
Channel 1 : 0.015 V
Channel 2 : 0.007 V
Channel 3 : 0.020 V
Channel 0 : 0.007 V
Channel 1 : 0.015 V
Channel 2 : 0.007 V
Channel 3 : 0.020 V
Channel 0 : 0.010 V
Channel 1 : 0.012 V
Channel 2 : 0.007 V
Channel 3 : 0.022 V
...

Meine frage ist nun ob es eine Möglichkeit gibt die Ausgabe so zu 
optimieren das ich dann so etwas erhalte:

Channel 0 : 0.010 V
Channel 1 : 0.012 V
Channel 2 : 0.007 V
Channel 3 : 0.022 V

wobei sich nur die werte ändern,das Terminal fenster nicht dauernd 
Scrollt und ich die Werte auch lesen kann?

Hab schon versucht den Cursor zu setzten aber dann sieht man auch nicht 
mehr weil sich die Werte immer so schnell ändern das ich sie nicht 
erfassen kann.

Ich möchte nicht das mir jemand die Arbeit abnimmt will ja was lernen 
aber ich bräuchte einen Tip wie ich das besser machen kann und bin für 
jede Hilfe dankbar.


Gruss
Flo
Gast
Hallo,

wenn die Positionierung mit dem Cursor funktioniert hat, sich aber die 
Werte zu schnell änderen, dann mach doch die Ausgabe über eine 
Timerfunktion, so das du die Zeit zwischen 2 Updates bestimmen kannst. - 
Oder miss nit so oft!

Sascha
Gast
Danke für den Tipp aber mit dem runter schalten habe ich schon versucht 
dann habe ich aber das Problem das ich soweit runtergehen muss das es zu 
lange dauert bis sich die Werte Updaten.

MFG

Flo
Gast
Ich wuerde eine Zeile so gestalten :

Channel0  Channel1  Channel2  Channel3
0.001V    0.234V    0.345V    0.236V
0.001V    0.234V    0.345V    0.236V
0.001V    0.234V    0.345V    0.236V
0.001V    0.234V    0.345V    0.236V
0.001V    0.234V    0.345V    0.236V
0.001V    0.234V    0.345V    0.236V
Gast
Damit ist es auch zu schnell.Ich denke das beste wäre es eine Software 
al client a PC zu schreiben was nicht das Problem wäre aber ich verstehe 
nicht wie ich auf den ComPort zugreife
Gast
>Damit ist es auch zu schnell.Ich denke das beste wäre es eine Software
>al client a PC zu schreiben was nicht das Problem wäre aber ich verstehe
>nicht wie ich auf den ComPort zugreife

Es geht also um die Ausgabe am PC.
In welcher Sprache würdest du denn gerne das PC-Programm schreiben?
Guck mal nach "VT100-Terminal".
Gast
fbeek wrote:

>Nun möchte ich nicht jedesmal die Ausgabe anstossen sondern würde gerne
>zum beispiel die Werte der Kanäle 0-4 kontinuielich ausgeben um die
>Messwerte direkt im Auge zu haben.

das ist der falsche Weg!

Wenn Dir ein Wert "durch die Lappen" geht stimmt nichts mehr!
Lieber bei jedem "Frame" neu initialisieren.
Gast
Also ich hätte C und Java anzubitten, würde aber lieber C nutzen aber da 
bleibt mir ja auch nur die Ausgabe per Konsole. Das mit dem ReInit habe 
ich auch überlegt dann hab ich aber das Problem das die ausgabe 
flackert.

Ich habe hier noch ein Vellman K8055 Board das ich mit einem Labview 
Prog nutze da sind die Werte in den Ausgabe fenstern schön ordentlich. 
Vielleicht sollte ich noch sagen das ich mit der ausgabe einerseits 
Meine Netzteile einstellen möchte und das Target überwachen möchte ich 
aber keine lust hab immer das Multimeter umzustecken.
Gast
nein nicht :

>Das mit dem ReInit habe ich auch überlegt dann hab ich
>aber das Problem das die ausgabe flackert.

Sonder einen neuen Frame vom µC anfordern.

dh ein Protokoll aufbauen.

          Host                         RS232               µC

sende mir einen neuen Wert von Adr. X  ---->   Host misst und sendet 
zurück
                                                            |
                                                            |
                                                habe 0,123 gemessen
                                                            |
                                                            |
  Neuer Wert von Adr. X  <-----------------------------------
           |
           |
           |
    Wert 0,123 Anzeigen
     (auswerten)
Gast
Achso stimmt darauf bin ich nicht gekommen das stimmt natürlich damit 
könnte ich es in den Griff bekommen.

Hab gerade mal in das Labvie Prog geschaut da geht es auch so:

PC fordert Daten von allen Port und anschliessend werden diese 
dargestellt.

Danke für die Hilfe werde mich dann mal dran machen ein Client Tool zu 
schreiben.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.