我在做一个采集直流电参数仪的测量器的程序,是用rs232c口的,我用spcomm, 但是就是得不到传过来的数据,帮看看有什么错误了:>
//传20H
procedure Tform3.getData() ;
var i:integer;
sbuf:array of byte;
sendstr:string;
begin
sendstr:='20h';
setlength(sbuf,Length(sendstr));
for i:= 1 to Length(sendstr) do
begin
try
sbuf[i]:=Byte(sendstr[i]);
except
Beep;
end;
end;
end;procedure TForm3.Button1Click(Sender: TObject);
begin
getdata();
end;// 得到传回参数
procedure TForm3.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
BufferLength: Word);
var
StrReceive:string;
begin
SetLength(StrReceive,BufferLength);
Move(Buffer^,PChar(StrReceive)^,BufferLength);
Memo1.Lines.Add(StrReceive); //把接收到的数据显示到一个Memo里
Memo1.Invalidate;
end;
//传20H
procedure Tform3.getData() ;
var i:integer;
sbuf:array of byte;
sendstr:string;
begin
sendstr:='20h';
setlength(sbuf,Length(sendstr));
for i:= 1 to Length(sendstr) do
begin
try
sbuf[i]:=Byte(sendstr[i]);
except
Beep;
end;
end;
end;procedure TForm3.Button1Click(Sender: TObject);
begin
getdata();
end;// 得到传回参数
procedure TForm3.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
BufferLength: Word);
var
StrReceive:string;
begin
SetLength(StrReceive,BufferLength);
Move(Buffer^,PChar(StrReceive)^,BufferLength);
Memo1.Lines.Add(StrReceive); //把接收到的数据显示到一个Memo里
Memo1.Invalidate;
end;
解决方案 »
- TIdSMTP的Connect方法陷入死循环
- key=32是哪个键,谢谢,100分派送
- 怎样由 FORM 得到 TFORM(TComponentClass) ?
- 困惑:为什么编译老是告诉我没有openpicturedialog这个类?在线等待
- 如何获取一个文件的文件名?
- 请问
- 关于TGIFImage播放动画的同时影响串口访问速度的问题???
- 对不起,我的描述有问题,请指教!
- chechy(chechy)快来救命! ClientDataSet1控件更新dbgrid中的数据时,执行applyupdates(-1)又出错了!!!
- 潮流?网络?编程?
- QQ下拉式控件哪里找?
- 哪位哥哥告诉我,用DELPHI如何HOOK SPI函数?
真的不错.
按我的经验 就应该传一个字节$20 ,非20h/20H