Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
OIn-Board-Werkzeuge von Linux für das auseinanderbeindeln von Datenströmen

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Programmieren - C
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Gwunder-Nas
Gast





BeitragVerfasst am: 12. Jun 2006 16:24   Titel: OIn-Board-Werkzeuge von Linux für das auseinanderbeindeln von Datenströmen

Hallo zusammen,

ich möchte Daten, die über eine serielle Schnittstelle kommen auseinanderbeindeln. Die Daten krieg ich dank eurem Forum schon auf den Bildschirm. Die schaut etwa wie folgt aus:

[..]
Temperatures: 19 19 12 24 24 25
Binary Inputs: 1 0 1 0 0 0 0 0 0 1 1 1 1 1 0 0
[..]

Am die serielle Schnittstelle angeschlossen ist ein Gerät, welches neben dem Abfragen von verschiedenen Temperaturmesssensoren auch noch Digitale I/O und mehr bietet und alle Zustände ununterbrochen auf die RS-Schnittstelle schreibt.

So wie die Dinge über die serielle Schnittstelle daherkommen, sind sie relativ mühsam lesbar. Ich möchte die Daten aufschlüsseln und irgendwie vernünftig Darstellen:
Temp1: 19 °C
Temp2: 19 °C
Tempx: y °C

Sind unter Linux schon Befehle oder Funktionen enthalten, welche ein aufschlüsseln leicht ermöglichen? Ich bin höchst warscheinlich kaum der Erste der sowas tut:-)

Vielen Dank für Eure Inputs!

Flohri
 

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 12. Jun 2006 19:10   Titel: Re: OIn-Board-Werkzeuge von Linux für das auseinanderbeindeln von Datenströmen

Nimm eine Skriptsprache. In Tcl sieht das in etwa so aus:
Code:

set FD [ open "/dev/ttyS0" r ]
fconfigure $FD -buffering line

while ![ eof $FD ] {
  set TEMPERATURES [ gets $FD ]
  set BINARY_INPUTS [ gets $FD ]

  set I 1
  foreach ELEMENT [ lrange $TEMPERATURES 1 end ] {
    puts "Temperatur $I: $ELEMENT"
    incr I
  }

  set I 1
  foreach ELEMENT [ lrange $BINARY_INPUTS 1 end ] {
    puts "Binary_Input $I: $ELEMENT"
    incr I
  }
}


close $FD


Tcl bietet viele Möglichkeiten, das Ergebnis zwischenzuspeichern oder schönzuformatieren. Außerdem Kann man auch sehr leicht eventorientiert (mit fileevent und vwait) arbeiten und das Programm nebenbei noch was anderes machen lassen.

Ähnliches bieten auch die vielen anderen Skriptsprachen.
_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.
 
Benutzer-Profile anzeigen Private Nachricht senden

Gwunder-Nas
Gast





BeitragVerfasst am: 13. Jun 2006 14:25   Titel:

Vielen Dank für den Hinweis! An sowas habe ich noch gar nicht gedacht, muss ich mir näher anschauen!

Gibt's denn für C keine entsprechenden Erweiterungen? Z.B. müssen doch Configfiles auch eingelesen und interpretiert/geparst werden.

Danke

Flohri
 

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Programmieren - C Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy