Spcomm很好用:
初始化:指定它的串口名称(你用到的串口):Spcomm.CommName :='com1',
初始化:波特率9600,随你要求定
初始化:设定奇偶校验。
打开串口:Spcomm.StartComm;
发送数据:Spcomm.WriteCommData(PChar(String类型的数据串),StrLen(PChar(String类型的数据串)));
发送数据必须将十六近制转换为char类型,再组成String,转换为Pchar指针类型,发送,因为他传递的是一个指向
一块存储字符的内存块指针和内存块的大小,即字符长度。
接收数据:SpcomReceiveData(Sender: TObject; Buffer: Pointer; BufferLength: Word);
同接收一样道理,传入指针,和缓冲区长度。
你可以看看他附带的帮助,其他的控制你可缺省
他还有流控制、屏蔽字符等,也许你用不到,你可慢慢研究。
Spcomm的接收事件的处发,具体是从串口一个一个地接收还是一次接收,我没有分析Spcomm的源代码
所以不敢说,但是你并不需要关心,只要在接受事件里接收数据就行了。