CPort 사용중 Hexa를 받아야 합니다. 고수분들의 리풀 부탁합니다.
일반적으로는 이렇게 처리했습니다.
procedure TMain_Form.ComPortRxChar(Sender: TObject; Count: Integer);
var S: String;
I: Integer;
begin
ComPort.ReadStr(S, Count);
J:= StrLen(PChar(S));
StrPCopy(A, S);
for I:= 0 to J do
begin
if A[I] = Char(#13) then
begin
Memo.Lines.Add(In_); //''문자열이 들어옴
Break;
end;
if A[I] <> Char(#0) then
In_:= In_ + A[I];
end;
end;
이렇게 하면 문자는 처리됩니다.
그러나 16진수는 어떻게 할까요?
ComPort.Read(R_PK, Count)
for i := 0 to Count-1 do
if R_PK[i] = #13 then begin
Memo.Lines.Add(In_); //''문자열이 들어옴
Break;
end
즐코하세요..