'zusammen, ich hoffe, folgende Frage beschäftigt nicht nur mich alleine, jedenfalls erbrachten Google und Forensuche nix ;) Ich habe mehrere Werte, die ich mit Fusing(Variable,"#.#") auf einem LCD ausgebe. Funktioniert auch soweit gut, allerdings möchte ich (wie es im Deutschen richtigerweise sein sollte) ein Komma zur Trennung der Nachkommastellen verwenden, also statt z.B. 18.3 18,3 ausgeben. Fusing(Variable,"#,#") scheint ja nicht zu funktionieren. Der Umweg, an der Position des Punktes nachträglich ein Komma über Locate x,y einzufügen, ist bekannt, aber für unschön befunden worden. Umwandlung zu String und Insertion des Kommas wäre ne Möglichkeit, aber es muss doch für dieses naheliegende Problem auch etwas Einfacheres geben, oder? ;) Bedank, Michael
Vermutung: Im Windows kann man irgendwo das Dezimalzeichen einstellen, Systemsteuerung, und dann Sprachoptionen. Vieleicht greift BASCOM darauf zu? Vielleicht gibts diese Einstellung über einen $xyz Parameter? RTFM? MfG Falk
Hallo, zu 1. Nein, in der Systemsteuerung alles richtig eingestellt, daran haperts nicht. zu 2. Möglich, dann würde ich den $xyz gerne kennen lernen ;) zu 3. Getan, nix gefunden, in der englischsprachigen Welt stellt sich das Problem ja auch nicht ;) Trotzdem Danke, Michael
Ich programmiere in C und da lege ich immer nen Puffer für das LCD an. Ne LCD-Ausgabe ist ja recht langsam und macht einem die Performance zunichte, wenn man immer alles direkt aufs LCD schreibt. Außerdem sollte man nicht zu oft auf das LCD schreiben, sonst kann man den Text nicht mehr lesen, wenn er sich ständig ändert. Daher macht dann ein Timerinterrupt das Schreiben des Puffers in das LCD, immer ein Byte pro Interrupt. Nach etwa 200ms ist dann jedes Byte im LCD aufgefrischt. Diese Lösung ist besonders effektiv, wenn der MC schon gut ausgelastet ist. Und in dem Puffer kann man dann bequem den '.' durch ein ',' ersetzen. Für einfache Programme, wo der MC kaum was zu tun hat, kann man auch den Puffer nur für die Zahl anlegen, das Komma einfügen, ihn direkt ausgeben und die 200ms warten. Peter
hi, recht einfach geht das mit der format anweisung. Anzeige = Format(str(level) , "0.0") + " bar" ' Ausgabe mit 1 Nachkommastelle mit neueren bascom-compilern funktioneren verschachtelte funktionen nicht mehr, da muss dann stehen: Anzeige = str(level) Anzeige = Format(anzeige) , "0.0") + " bar" ' Ausgabe mit 1 Nachkommastelle Anzeige als string * 8, Level als Long definiert. grüssens, harry
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.