●波特率: 4800;
●奇偶校验位:无;
●字节长度: 8;
●停止位: 1;
●串口: COM1。
Memo1中将显示发送和接收的数据。将新的窗体存储为 Comm.pas。
2.编写源代码
//变量说明 var
fcomm: TFCOMM;
viewstring:string;
i:integer;
rbuf,sbuf:array[16] of byte;
//打开串口
procedure TFCOMM.FormShow(Sender: TObject); begin
comm1.StartComm; end;
//关闭串口
procedure TFCOMM.FormClose(Sender: TObject; TCloseAction); begin
comm1.StopComm;
var Action: end;
//自定义发送数据过程
procedure senddata; var i:integer;
commflg:boolean; begin
viewstring:=‘’ ;
commflg:=true;
for i:=1 to 6 do begin
if not fcomm.comm1.writecommdata(@sbuf[i],1) then begin
commflg:=false; break; end;
//发送时字节间的延时 sleep(2);
viewstring:=viewstring+ inttohex(sbuf[i],2)+‘’
viewstring:=‘发送’+ viewstring;
fcomm.memo1.lines.add(viewstring);
fcomm.memo1.lines.add(‘’ );
; end;
if not commflg then messagedlg(‘发送失败 !’ ,mterror,[mbyes],0); end;
//发送按钮的点击事件
procedure TFCOMM.Btn_sendClick(Sender: TObject); begin
sbuf[1]:=byte($ f0); //帧头
sbuf[2]:=byte($ 01); //命令号
sbuf[3]:=byte($ ff);
sbuf[4]:=byte($ ff);
sbuf[5]:=byte($ 01);
sbuf[6]:=byte($ f0); //帧尾