|
代码如下
- if (m_hComm != INVALID_HANDLE_VALUE) //已经打开,直接返回
- {
- return TRUE;
- }
-
- m_hComm = CreateFile(_T("COM1:"), //以同步读取方式打开串口COM1
- GENERIC_READ || GENERIC_WRITE, //允许读
- 0, //独占方式
- NULL,
- OPEN_EXISTING, //打开而不是创建
- 0,
- NULL);
- if (m_hComm == INVALID_HANDLE_VALUE) // 无效句柄,返回。
- {
- return FALSE;
- }
-
- //配置串口,得到打开串口的当前属性参数,修改后再重新设置串口。
- DCB portDCB;
- portDCB.DCBlength=sizeof(DCB); //DCB结构大小
-
- Sleep(1000);
- if(FALSE == GetCommState(m_hComm,&portDCB))//默认串口参数
- {
- DWORD mmmm= GetLastError();
- return FALSE;
- }
复制代码
CreateFile的时候成功,
GetCommState的时候就失败,
返回为0,GetLastError为1;
我使用的是2410的板子,添加了三串口驱动,禁用了调试串口,三个串口都是一样的情况!
|
|