现有VB用MSCOMM写的串口程序:
MSComm1.CommPort = 4
MSComm1.Settings = "1200,E,7,1"
MSComm1.InputLen = 0
MSComm1.PortOpen = True
MSComm1.Output = "P"
For i = 1 To 50000
DoEvents
Next i
Instring = MSComm1.Input
要改成DELPHI用SPCOMM怎么写??谢谢!!!!!!!!!!!!!!!!
MSComm1.CommPort = 4
MSComm1.Settings = "1200,E,7,1"
MSComm1.InputLen = 0
MSComm1.PortOpen = True
MSComm1.Output = "P"
For i = 1 To 50000
DoEvents
Next i
Instring = MSComm1.Input
要改成DELPHI用SPCOMM怎么写??谢谢!!!!!!!!!!!!!!!!
解决方案 »
- fastreport 使用交叉表时 ,设计时预览正常,执行的时候预览提示 没有tfrCrossView 没有找到
- 诸位大侠,请问哪里的电脑方面的电子书比较多?
- 急:TreeView如何定位?
- delphi中调用excel
- 寻求一款软件,能实现将图片发布到远程服务器,同时将图片信息写入数据库中。
- 想用Mediaplaer控件播放某个声音文件若干次,怎么控制?
- 我要散分
- 关于UpdateBatch使用问题
- 麻烦各位大虾帮小弟看看这段代码?!
- Insert 语句 与 Set identity_insert 的疑问!!!!
- delphi如何做一个软件可以检测到邮件中的退信个数
- Delphi if 判断的一个疑问 新手
COMM1.BaudRate:=1200; // MSComm1.Settings = "1200,E,7,1"
comm1.ByteSize:=_7;
comm1.Parity:=even;
comm1.StopBits:=_1; comm1.startport; //MSComm1.PortOpen = True
var
sbuf:byte;
sbuf:=chr('p');
comm1.WriteCommData(@sbuf,1);
//接收用事件完成
procedure TForm1.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
BufferLength: Word); //bufferlength 就是接收数据的长度
begin
end;
//串口初始化设置
AtmComm.CommName := 'COM1';
AtmComm.BaudRate:=9600;//波特率9600bps
AtmComm.Parity:=None;//奇偶检验无
AtmComm.ByteSize:=_8;//数据位8
AtmComm.StopBits:=_1;//停止位1
AtmComm.StartComm; //打开串口
AtmComm.writecommdata(PAnsiChar('*8811*H#'),length('*8811*H#'));//向串口写信息 AtmComm.StopComm; //停止串口 //接收事件
procedure TFrmMain.AtmCommReceiveData(Sender: TObject; Buffer: Pointer;
BufferLength: Word);
var
Recdata:String;
RecStr: String;
begin
RecStr := '';
setlength(recdata,bufferlength);
move(buffer^,Pchar(Recdata)^,bufferlength);
RecStr:='接收:'+Recdata;
Memo1.lines.add(RecStr);//显示接收到的消息
end;