C++ 调试断言在打开COM端口期间失败
我正在开发一个程序,使用Arduino UNO从接近传感器获取读数。虽然使用Arduino的内置串行监视器可以很好地获取读数,但不知何故,我无法从MS VC++打开相同的端口 以下是该计划的一部分:C++ 调试断言在打开COM端口期间失败,c++,visual-c++,serial-port,serial-communication,C++,Visual C++,Serial Port,Serial Communication,我正在开发一个程序,使用Arduino UNO从接近传感器获取读数。虽然使用Arduino的内置串行监视器可以很好地获取读数,但不知何故,我无法从MS VC++打开相同的端口 以下是该计划的一部分: int main(void) { /*used for port"COM13"*/ HANDLE hCom=INVALID_HANDLE_VALUE; char input[30]; string ss,ss1,ss2,ss3,ss4; /*Open "C
int main(void)
{
/*used for port"COM13"*/
HANDLE hCom=INVALID_HANDLE_VALUE;
char input[30];
string ss,ss1,ss2,ss3,ss4;
/*Open "COM13"*/
hCom=CreateFile("COM13",GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_EXISTING,0,NULL);
if(hCom==INVALID_HANDLE_VALUE)
{
printf("can't open file");
}
/*Communication Setting*/
DCB dcb;
memset(&dcb,0,sizeof (DCB));
dcb.DCBlength=sizeof (DCB);
dcb.BaudRate=CBR_9600;
dcb.ByteSize=8;
dcb.Parity=NOPARITY;
dcb.StopBits=ONESTOPBIT;
SetCommState(hCom,&dcb);
while(1)
{
//using the data string inputs, printout the readings, process it etc...
}
}
当我尝试调试它时,会出现以下错误:
我从调试窗口中发现无法打开文件
,显示端口打开时出现问题
其他一些信息:
提前谢谢 从CreateFile上的MSDN页面: 要指定大于9的COM端口号,请使用以下语法: “\。\COM10”。此语法适用于所有需要的端口号和硬件 允许指定COM端口号
仍然有错误,但我改变了我的设备设置为COM2和它的工作!非常感谢你!顺便说一句,它的
\\。\COM10
(双斜线点斜线)