|
从win32的串口API初级编程(转) 程序测试问题
[复制链接]
从win32的串口API初级编程(转) 程序测试问题
前2天在 “城市稻草人”的blog上看到作者的一个简单的串口发信息的程序
只需在vs2005中建立新的project 然后编译可以通过。
我的问题是, 这段代码工作吗 ? 我怎么用串口调试程序检测不到任何输出输入 ??
以下源代码 欢迎大家实验
//SerialComm.cpp
#include
#include
#include
using namespace std;
int main()
{
HANDLE hCom =::CreateFile( _T("COM2"),
GENERIC_READ|GENERIC_WRITE,
0,
0,
OPEN_EXISTING,
0,//FILE_FLAG_OVERLAPPED,
0
);
if(hCom ==INVALID_HANDLE_VALUE){
DWORD dwError=::GetLastError();
cout<
return false;
}
DCB dcb={0};
dcb.DCBlength = sizeof(DCB);
if(!::GetCommState(hCom,&dcb)){
DWORD dwError=::GetLastError();
cout<
return false;
}
dcb.BaudRate = 9600;
dcb.ByteSize = 8;
dcb.Parity = NOPARITY;
dcb.StopBits =ONESTOPBIT;
if(!::SetCommState(hCom,&dcb)){
DWORD dwError=::GetLastError();
cout<
return false;
}
if( !::PurgeComm( hCom, PURGE_RXCLEAR ) ) return false;
DWORD dw;
::WriteFile(hCom,"1234567890",10,&dw,NULL);
::CloseHandle(hCom);
return 0;
}
|
|