发表于:2007-09-17 11:04:00
楼主
我使用MSComm控件来串口通讯,有两个问题。
1。
设置属性
InBufferSize:1024
OutBufferSize:512
InputMode:1
InputLen:0 在接收函数中会改变
RThreshold:1,因为串口接收的数据最少为1个字节
SThreshold:0
其余的都是缺省的设置。
我要从串口里面接收1~40个字节不等的数据。
发现的问题是,当接收多字节数据的时候,会截断。比如说吧,要接收40个字节,那么控件的GetCommEvent()==2事件会连续来两次,第一次收到8个字节,紧接着第二次收到32个。
请问这个有解决的办法么?
2。我想达到这个功能,程序向串口发送一个数据,那么它应该很快收到回复,如果长时间比如5秒没有收到回复就说明发送的数据丢失或者通道本身有问题,需要退出程序。
请问,如何设置MSComm控件,来达到这个定时的目的?
谢谢!