So langsam fühle ich mich schlecht, wenn ich hier wegen jedem neuen Problemchen einen neuen Thread aufmachen muss. Aber ich habe wirklich gegooglelt. Und jedes Mal wenn ich das mache, habe ich danach noch viel mehr Fragen als vorher
Ich bin dabei eine .txt auf die SD Karte zu schreiben. Funktioniert soweit. Allerdings wollte ich neben Text
writeToFile("Blablabla");
auch einen Messwert ausgeben
writeToFile(temp)
Problem hier: temp ist als float definiert, darf ich nicht. Muss wohl char oder etwas verträgliches sein.
int temp2 = round(temp) hat auch nicht funktioniert.
Ist ja nicht so, als würde ich hierbei nicht ständig neuen Input bekommen. Aber da gibt es leider eine Deadline im Projekt, die ich nicht reißen möchte.
Könnte also vllt entweder jemand noch etwas zu den Befehlen File und Print sagen.
Oder hilft mir jemand mit der Umwandlung von float zu char.
Bei den Arduino Referenz Befehlen wurde ich nicht fündig.
Bei Google und YT kam ich auf Umwandlungsmöglichkeite, die allerdings für irgendeine Programmiersprache anzuwenden sind.
Es ist korrekt, dass der Arduino Code auf C++ funktioniert und die C++ Befehle hier auch gelten sollten?
Hanswurst123:
......
Bei den Arduino Referenz Befehlen wurde ich nicht fündig.
Was heißt das genau ?
Sollen wir dir das vorlesen ?
Zu jedem deiner aufgeführten Anweisungen habe ich in der Referenz etwas gefunden.
Außer zu "file", da das nicht unmittelbar zum Arduino gehört.
@combie:
Serial kenne ich von Serial.print("");
Nutze ich für den Seriellen Monitor. Was das nun mit dem Schreiben einer .txt auf der SD zu tun hat, kann ich nur mutmaßen.
Ein File ist für mich eine Datei, ein LCD ein Display und Wire ein Kabel. Leider habe ich keine Ahnung, was du mir mit diesen Begriffen sagen möchtst
@Hotsystems:
Klar finde ich in der Referenz eine Erklärung was char und float sind, wusste ich auch vorher. Aber wie ich sie ineinander umwandeln kann, weiß ich deswegen nicht. Und weder zu print noch zu file finde ich dort einen Eintrag.
Insofern keine Bitte ums Vorlesen, aber vllt ein Hinweis darauf, was zu lesen ist und wie ich den Inhalt verstehe.
Wenn du immer nur in "Befehlen" denkst bekommst du schnell Probleme. Programmiersprachen haben nun mal ihre eigene Terminologie. Es gibt Anweisungen, Funktionen, Methoden, Operatoren, etc. Aber keine Befehle. Für diese unterschiedlichen Bestandteile gelten genau definierte Regeln. Außerdem kann man auch mit Google besser suchen wenn man weiß wie es richtig heißt.
Die ganze Ausgabe- und Formatierungs-Logik steckt beim Arduino in einer Klasse: Print. Darin gibt es verschiedene Print Methoden die mit unterschiedlichen Datentypen wie String, int und float umgehen können. Andere Klassen können darauf zugreifen und müssen nicht die komplette Ausgabe neu implementieren.
Daher macht es bei print() keinen Unterschied ob die eine SD Karte, serielle Schnittstelle oder ein LCD hast
Hanswurst123:
Klar finde ich in der Referenz eine Erklärung was char und float sind, wusste ich auch vorher. Aber wie ich sie ineinander umwandeln kann, weiß ich deswegen nicht. Und weder zu print noch zu file finde ich dort einen Eintrag.
Insofern keine Bitte ums Vorlesen, aber vllt ein Hinweis darauf, was zu lesen ist und wie ich den Inhalt verstehe.
Das reicht dann wohl nicht, wenn nicht richtig gesucht wird.
Hier der Eintrag für print.
Was file betrifft hatte ich schon geschrieben.
Und weiteres findest du auch noch hier.
dtostrof() braucht man wenn eine Klasse nicht von Print erbt. Oder wenn man eine Gleitkommazahl auf eine konstante Breite formatieren muss. Ansonsten geht es einfach mit print()