运用JustinIO做和串口通信的程序过程中遇到两大问题:
1)SetCommState 一直不成功;
if (!SetCommState(hComm, ref dcbCommPort))
{
uint ErrorNum=GetLastError();
throw (new ApplicationException("Comm Port Can Not Be Opened2"));
}
2)在打开串口后关闭串口,下一次再打开串口出现错误。
两个问题一一得到解决。
一、 针对第1)个问题,是因为结构体public struct DCB 中的一部分被注释了,需要去除注释得到。
二 、 针对2)个问题因为JustinIO的 close函数不够完善,在关闭后没有将 opened 从TRUE 变为FALSE。