MFC程序读写串口,添加串口事件读串口,数据完整性问题,求教~~
串口事件代码如下:
我把读到数据显示出来。。为什么比如我发一段句子,但是分好几次出来?有什么办法解决吗。。照理说一次串口收个百来个字节应该没问题啊~~
void CDeviceReg::OnCommDevregmscomm()
{
// TODO: 在此处添加消息处理程序代码
SetPriorityClass( GetCurrentProcess(), HIGH_PRIORITY_CLASS );
VARIANT vResponse;
int kRLen;
int i;
unsigned char DataBuf[256];
char openFileName[128];
CString temp;
//unsigned char str0d0a[2];
if (m_Mscomreg.GetCommEvent()!=2) return; //判断是否为ComEvReceive事件
kRLen = m_Mscomreg.GetInBufferCount();
if (kRLen>127)
{
kRLen = 127;
}
m_Mscomreg.SetInputLen( kRLen );
vResponse = m_Mscomreg.GetInput(); //读取接收到的数据
memset(DataBuf,0,256);
memcpy( DataBuf, vResponse.parray->pvData, kRLen);
temp.Format("%s",DataBuf);
MessageBox(temp);
}