请教各位,开发环境windows2000+delphi6,定义一个缓冲区,用来接收通过串口发送过来的十六进制数据,缓冲区里的数据是8个字节,每个字节有2个字符组成,如字节1为AB,字节2为CD等等。
我想定义一个数组,取得缓冲区数据的字节3和字节4的数据,然后转化成十进制数据。
我的部分代码如下,请高人帮忙,谢谢!procedure TForm1.MSComm1Comm(Sender: TObject);
var
//定义接收数据的缓冲区
str:olevariant;
//接收缓冲区内数据的数组,数组的类型到底应该是什么呢?
aa:array of char;
//i表示for语句中使用的变量
i:integer;
//n代表字节个数
n:integer;
begin
//取得字节个数
n:=self.MSComm1.InBufferCount;
//串口通信过来的数据,保存在定义的缓冲区内
 str:=self.MSComm1.Input;
//输出串口通信发送过来数据的字节数
self.Edit2.Text:=inttostr(n);
//以下想通过一个循环,把缓冲区str内的字节变量保存到aa数组中,但是我的做法不正确,请高人帮忙写一个算法,
for i:=0 to n do
begin
end;end;