Hallo, ich habe ein kleines Problem mit einem C-Code. Vorab kurz zu dem Projekt: Ich habe einen 1Wire-Bus mit neun Ds18S20 Sensoren. Diese Sensoren sind über den Bus mit einem Atmega8 verbunden. Dieser soll die Sensoren auslesen und die Daten inkl. der dazu gehörigen ID an eine NSLU2 schicken, auf der ein Programm läuft, welches die empfangenen Daten in eine Datei sichert. Aus dieser Datei holt sich dann ein Apache2 Server die Daten, um sie auf einer Intranetseite zu präsentieren. Nun habe ich jedoch das Problem, das der Atmega8 bei der Umwandlung der Fühlerwerte in die menschenlesbare Form vor die EINstelligen Zahlen ein Leerzeichen setzt. Wieso er das macht weiß ich leider auch nicht. Dieses Leerzeichen ist jedoch jetzt das Problem an der Sache, da der Wert in JEDEM Fall, dh. auch gerade bei einstelligen Fühlerwerten direkt hinter einen = Zeichen stehen muss, damit die Temperatur an den Apache Server (das läuft dann über SSI) gegeben wird. Gibt es nun eine Möglichkeit, dieses Leerzeichen aus dem String zu entfernen? Das Leerzeichen steht jedoch nicht am Anfang des Strings, der String besteht nämlich aus der ID und dem Wert. Im Anhang habe ich jetzt mal die C-Datei des Controllers. Das Programm auf der NSLU2 macht ja nichts anderes, als die Daten zu lesen und dann in eine Datei zu schreiben... Vielen Dank schonmal! Gruß Christian
> sprintf( s, "%4d.%01d�C", temp >> 4, (temp << 12) / 6553 );
dann lass doch mal die 4 nach dem ersten % weg
Hallo Peter, danke für deine schnelle Antwort. Kannst du mir vielleicht auch erklären, was diese 4 zu bedeuten hat? Gruß Christian
man sprintf oder auch "sprintf format string" Mannomann, das sind bloody basics...
Christian L. schrieb: > Hallo Peter, > danke für deine schnelle Antwort. Kannst du mir vielleicht auch > erklären, was diese 4 zu bedeuten hat? du hast sie doch geschrieben, willst du damit sagen das du etwas geschrieben hast wovon du keien Ahnung hast?
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.