Hallo, ein Arbeitskollege von mir hat sich ein Testboard mit einem ATmega128 und LCD und dieversen Schnittstellen gebaut und verwendet zum compilieren und linken AVR-GCC (WinAVR-Paket installiert) und als IDE das neueste AVRStudio v4.12. Für das LCD (4x16) hat er die libary von Peter Fleury eingebunden. Außerdem haben wir mit fdevopen(...) die Ausgabe aufs LCD umgeleutet. Die funktioniert auch alles wunderbar, nun das Problem: Wir haben versucht, eine float-Zahl auf dem Display auszugeben, dazu muß man ja normalerweise (wenn man WinAVR mit Notepad benutzt) im Makefile die richtige printf-Variante einbinden (lprintf_flt...). Genau diesen Parameter haben wir auch im AVRStudio als zusätzlichen Parameter angegeben, aber auf dem LCD erscheint nur ein Fragezeichen. Wenn man allerdings ein externe Makefile benutzt (mit Mfile erstellt) funktioniert das Anzeigen der float-Zahl (printf("%3.3f", var);) wunderbar. Hat jemand ähnliche Probleme oder noch nicht ausprobiert?
Gast
#281162
Ein solches Problem hatte ich auch mal, aber habe niemals herausgefunden, woran es wirklich lag. Es kam immer nur Müll heraus (das besagte Fragezeichen). Ich habe dann irgendwann entnervt aufgegeben und stattdessen dtostrf() in Verbindung mit meiner sowieso vorhandenen print_lcd() verwendet. Brauchte auch wesentlich weniger Platz als printf(). Wenn mir aber jemand mal verklickern kann, was ich falsch gemacht habe, wäre ich auch dankbar ... ;)
So was hatte ich befürchtet... hat noch keiner ne Lösung gefunden. Wir werden hier mal noch ein bisschen rumprobieren. Ansonsten kann man ja auch das externe Makefile benutzen. Mario
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.