| Autor |
Beitrag |
chiron 
Hält's aus hier
Beiträge: 12
|
Verfasst: Di 31.03.09 15:02
Hallo
Habe nochmal eine Frage bezüglich der ComPort Komponente.
Und zwar möchte ich gerne an den Mikrocontroller über die RS-232 was senden.
Der MC benötigt eine Zahl im ASCI Format.
Ich kann ja mit dem befehl: ComPort1.WriteStr(100) was senden. (z.B. den Wert 100)
Kann er dann nur einen String senden? Habe es auch schon mit dieser Syntax versucht:
ComPort1.WriteStr(#100). Raute Zeichen = ASIC Format??
Oder gibt es noch andere Befehle für das senden im ASCI Format an die RS-232?
|
|
jaenicke
      
Beiträge: 19339
Erhaltene Danke: 1752
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Di 31.03.09 15:07
#100 sollte das Zeichen mit dem Zahlenwert 100 senden. Was es noch für Möglichkeiten bei der Komponente gibt, weiß ich so erstmal nicht.
Klappt das damit nicht?
|
|
Jens Hartmann
      
Beiträge: 120
XP
Delphi
|
Verfasst: Di 31.03.09 15:49
| Zitat: | | ComPort1.WriteStr(#100). Raute Zeichen = ASIC Format?? |
Also, das ist aufjedenfall richtig, das du somit das ASCII Zeichen mit dem Zahlenwert 100 senden tust. Soll heißen, du sendest ein "d".
Hier mal eine Ascii Tabelle
de.wikipedia.org/wik...abelle#ASCII-Tabelle
Gruß Jens
|
|
chiron 
Hält's aus hier
Beiträge: 12
|
Verfasst: Di 31.03.09 15:49
der Mikrocontroller empfängt wohl was jedoch anscheinend nicht das richtige.
In meinem MC Programm habe ich 2 verschiedene Schleifen. Bei einem übertragenen Wert von #100
soll die eine Schleife abgearbeitet werden und bei einem Wert von #200 die andere.
Nur irgendwie wirft er dann innerhalb der Schleifen alle Parameter über den Haufen und steuert undefiniert.
Wenn Delphi den Wert richtig im ASCI Format überträgt muss ich halt nochmal mein MC Programm überprüfen.
|
|
jaenicke
      
Beiträge: 19339
Erhaltene Danke: 1752
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Di 31.03.09 15:54
Naja, was heißt Zahl im Asci Format? Eine Zahl ist eine Zahl und ein Zeichen hat ggf. einen bestimmten Zahlenwert als Asciicode.
Soll am µC die Zeichenkette 100 als mehrere Asciizeichen hintereinander ankommen oder die Zahl 100 / 200? Und soll die Zahl in einem einzelnen Byte stehen?
|
|
chiron 
Hält's aus hier
Beiträge: 12
|
Verfasst: Di 31.03.09 16:14
der wert wird im MC in eine Byte variable geschrieben.
Die Zahl 100/200 als ganzes soll ankommen. Also nicht als Zeichenkette.
|
|
jaenicke
      
Beiträge: 19339
Erhaltene Danke: 1752
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Di 31.03.09 16:15
Dann sollte WriteStr mit #100 genau das richtige sein. Oder Moment: benutzt du Delphi 2009? Da ist ein Zeichen zwei Byte groß.
|
|
chiron 
Hält's aus hier
Beiträge: 12
|
Verfasst: Di 31.03.09 16:25
ne ich benutze Delphi 6.
hmm... dann liegt´s wohl an meinem MC Programm, das das vielleicht mit den Variablen Typen durcheinander kommt.
|
|