Einzelnen Beitrag anzeigen

Schmandi

Registriert seit: 21. Feb 2007
3 Beiträge
 
#1

Binäres Senden und Empfangen über die serielle Schnittstelle

  Alt 21. Feb 2007, 13:12
Erstmal ein freudiges HALLO ins Forum...


Ich habe gerade mit Delphi (benutze Delphi6.0) angefangen und auch schon (mindestens) ein Problem.

Ich übertrage Daten von einem externen 8-Bit A/D-Wandler(am ATMEL µ-Controller mit UART-Schnittstelle) über die serielle Schnittstelle zum PC. Zum empfangen der Daten in Delphi benutze ich die Erweiterung „TurboPower Async Professiona (TPAP)l“ für den Zugriff auf die serielle Schnittstelle. Das empfangen der Daten funktionier schon mal

Jetzt zu dem Problem:

Beim Auslesen der Schnittstelle liefert mir die Funktion „TApdComPort.GetChar“ nur einen Char zurück. Dabei werden die ursprünglich empfangenen Daten von Delphi als ASCII-Wert interpretiert. Wenn das Programm also eine Byte 0x2B empfängt (dezimal 43), macht Deplhi daraus einen Char mit dem Inhalt '+', was dem ASCII-Wert von 43 entspricht. Ich brauche aber die binären Daten in Form von Integer, da ich die Daten ja binär und nicht in ASCII über die serielle Schnittstelle versenden will (und muss, weil das schneller ist). Wenn ich also das Byte 0xFF am µC losschicke, brauche ich genau diesen Wert in Delphi.

Wie gelingt mir diese Rückwandlung?? (bzw. gibt es anderes Möglichkeiten die das Problem gänzlich umgehen)

Vielen Dank schon mal,

Johannes
  Mit Zitat antworten Zitat