串口通信程序发送数据时死掉,不响应
BOOL OpenSerialPort()
{
//打开并设置COM1
hCom=CreateFile("COM1", GENERIC_READ|GENERIC_WRITE, 0,NULL , OPEN_EXISTING, 0,NULL);
if (hCom==(HANDLE)-1)
{
AfxMessageBox("打开串口失败");
return false;
}
else
{
DCB wdcb;
GetCommState (hCom, &wdcb);
wdcb.BaudRate=9600;//波特率:9600,其他:不变
SetCommState (hCom, &wdcb);
PurgeComm(hCom, PURGE_TXCLEAR);
}
return true;
}
点发送按钮时执行
WriteFile(hCom, m_send, m_send.GetLength(), &wCount, NULL);
然后程序就死掉了
如果我事先用其他串口工具对这个串口进行过数据收发,再去运行自己编的程序就一切正常了.
哪位前辈遇到过这种情况?指点迷津啊!