Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit Printbefehl
ElektronikLutz
02.07.2005, 18:31
Hallo miteinander.
Ich hab ein problem mit dem Printbefehl.
Ich gebe an ein Display mit RS232 einen Printbefehl doch vor dem eigentlichen String wird ein CR gesand. Das ist sehr hinderlich,da ich nicht
auf der 1.Position den String im Display ausgeben kann.
Hat jemand eine Idee, wie und wo ich das CR abschalten kann?
Beste Grüße
jagdfalke
02.07.2005, 19:31
ist CR = Carriage Return?
sicher dass er vor dem String kommt?
Also print "hallo" wäre dann CR ; "hallo"?
Ich hab mal das Problem gehabt dass er nach dem String immer einen CR gesendet hat, das konnte man durch ein Semikolon am Ende des Print-Befehls lösen. Aber vor dem String, das ist mir neu.
mfg
jagdfalke
HI!
Sende doch einfach jedes Zeichen mit printbin aus.
Dann hast du das Problem nicht.
Ist aber etwas kompliziert. Bist du sicher, dass print CR vorher sendet?
VLG Tobi
Hinten nach, wie dokumentiert, <CR><LF>, wenn kein ";"
VOR dem Print schickt Bascom NIX
Das würde sonst auch print-folgen für eine Zeile unmöglich machen.
Auch Terminal-Emulationen fügen da aus dem gleichen Grunde nichts ein.
Stell deinen ganzen Code mal ein, aber ohne irgendwelche Schönheitskorrekturen oder zusätzlichen Kommentare.
Das wollen wir mal sehen, wenn du doch recht hast, darfst du dann einen ausgeben
Also der Printbin Befehl ist schon ok nur etwas umständlicher.
Ich sende ja ganze strings und bei rintbin müßte ich alles auf Variablen legen und bei ca. 30 Textbausteinen ist es etwas umständlich .
Ich versuch es nochmals mit dem Semikolon am ende.
Vielleicht klappts ja dann.
Danke Tratdem Allen
zwanzischmark
04.07.2005, 23:23
Es ist richitg das Bascom nur <CR><LF> am ende senden sollte, jedoch habe ich das gleiche Problem. Es ist aber so das nach dem <CR> und <LF> noch ein <CR> gesendet wird was dann beim nächsten senden vor dem ersten Zeichen steht. Ich kann mir auch nicht erklären woher das kommt. Wenn du wie ich zwischen 2 AVR sendest kannst du das erste Zeichen auf Asc(10) abfragen und gegebenenfalls löschen. Sollte zumindest einfacher sein als mit Printbin. Nervig ist es allerdings trotzdem. Einzelfälle oder ein Fehler von Bascom??? Schon komisch wenns bei manchen auftritt und bei anderen nicht.
Als BasCom-Supporter würde ich der Sache nachgehen wollen. Ihr könntet mir helfen, indem ihr den Code posten würdet, bei dem dieser Fehler auftritt, + Angaben BasCom Version, und auch mit Angabe, welche Terminal-Emulation ihr ggf. verwendet.
Dann kann ich erstens ev. eine Workaround anbieten und zweitens auch dem BasCom-Entwickler reporten.
wie gesagt, die ob. Angaben und den Code brauche ich genau.
(Hex code reicht auch, dann aber Prozessortyp und Quartzangaben)
Ich sende ja ganze strings und bei rintbin müßte ich alles auf Variablen legen und bei ca. 30 Textbausteinen ist es etwas umständlich .
Versuch's doch mal so..
$crystal = 16000000
baud =9600
Dim Sendestring As String * 20
Dim Sendezeichen As String * 1
Dim Meintext(5) As String * 20
Dim N As Byte
Dim S As Byte
Meintext(1) = "HALLO"
Meintext(2) = "WELT"
Meintext(3) = "so"
Meintext(4) = "gehts"
Meintext(5) = "auch ;)"
For S = 1 To 5
Sendestring = Meintext(s)
Gosub Senden
Next S
End
Senden:
For N= 1 to len (Sendestring)
sendezeichen = mid (sendestring,n,1)
Printbin sendezeichen;
Next N
Return
Gruß
Christopher
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.