Noch eine Frage
Wenn ich zb. einen Hexwert zur Karte senden will, wie mach ich das
Hexwert: 01 02 01 00 00 00 3D
Ich verusch es derzeit so:
Code:
ComPort.WriteStr('01 02 01 00 00 00 3D');
Und fürs Answer der Karte hab ich bei "RxChar" folgendes drin:
Code:
procedure Tfrm_main.ComPortRxChar(Sender: TObject; Count: Integer);
var
sEmpfangen:String;
begin
ComPort.ReadStr(sEmpfangen, Count);
e_anwer.Text := sEmpfangen;
end;
aber es kommt nur Mist bei raus
sowas: Âü~>ÂüÂüÂü
Mach ich es so:
Code:
Function StrToHex(s: String): String;
Var i: Integer;
Begin
Result:='';
If Length(s)>0 Then
For i:=1 To Length(s) Do
Result:=Result+IntToHex(Ord(s[i]),2);
End;
procedure Tfrm_main.ComPortRxChar(Sender: TObject; Count: Integer);
var
sEmpfangen:String;
begin
ComPort.ReadStr(sEmpfangen, Count);
e_anwer.Text := StrToHex(sEmpfangen);
end;
Code:
ComPort.WriteStr(char(01)+char(02)+char(01)+char(00)+char(00)+char(00)+char(3D));
meckert er "Bezeichner
D gefunden"