Hallo ihr erfahrenen Programmierer, es ist mir ja schon fast peinlich diese Frage zu stellen. Aber ich weiß ehrlichnicht mehr weiter. Bin ein Anfänger in diesem Gebiet und arbeite erst seit einer Woche mit dem AT90S8535 und CODEVISION. Jetzt möchte ich einen kleinen Bord-Computer für mein Motorrad basteln und dazu muß ich aber im Programm eine Zahl durch 7,14644 teilen und möchte diese neue Zahl als Kommazahl im Display stehen haben. Meine Frage: Wie definiere ich eine Kommazahl in CodeVision? (short?) Wie kann ich diese auf dem Display ausgeben? Das Display läuft auch so weit, hab sogar schon "char"'s angezeigt. Falls mir irgendjemand behilflich sein kann, bin ich im jetzt schon tausendmal dankbar. Viele Grüße Carsten
Hi, ich kenne Codevision nicht, denke aber, daß folgende zwei Ansätz Zielführend sind: 1.) Mit "float"-Zahlen kommst Du weiter!. Die Darstellung auf das Display bekommst Du, indem Du die float-Zahl in einen String wandelst. Dieser String kann dann zeichenweise (char) ausgegeben werden ... 2.) Mit Int,Short,char etc. geht es auch ! Su musst Dir Deine eigene Divisionsroutine schreiben. Das ist nicht so kompliziert wie es sich im ersten Moment anhört, da Du ja immer durch die selbe Zahl dividieren willst. Da Du als Ergebnis dann schon mehrere chars hast, kannst Du das direkt zeichenweise auf das Display geben... Gruß UBoot-Stocki
Hallo, Oder du benutzt bascomAVR, damit würde sich das auf folgenden code beschränken Dim A As Single A = Deine Zahl / 7,14644 Lcd A Ergebnis von a wird dann auf dem LCD angezeigt. Vielleicht interessiert dich bascom ja jetzt, dann schaue auf http://www.mcselec.com/.
Hallo Carsten, Ich weiß ja nicht wieviel Zahlen du Dividieren willst aber sei damit vorsichtig, diese Dividierroutinen mit Kommazahlen ist sehr Speicherplatzschluckend. ach ja, so wird es übrigens in C gemacht, #include "stdio.h" char *DeinText; float DeineZahl = 7,558; sprintf( DeinText, "Zahl: %f", DeineZahl ); // So konvertierst // du deine Zahl // in einen String jetzt brauchst du nur noch den Text 'DeinText' ausgeben.
CodeVision kann in der aktuellen Version(1.23.6) den Konvertierungs-Spezifizierer %f nicht unterstützen. Wenn du aber registriertet User von CodeVision bist, und du dein Problem dem Support schilderst, bekommst du mit eMail die Version 1.23.7 prelimanary). Diese Version unterstützt %f.
@Norbert fast.. glaube nicht das C was mit 7,nochwas anfangen kann. Das sollte schon 7.nochwas sein :)
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.