|
用EVC编了一个串口自发自收的程序,串口能够打开,但是不写数据。程序应该是对的,与书上写的以及网上通过测试的程序一样。下面是写数据部分的一段程序。
DWORD CSerial::WritePort(const BYTE *buf,DWORD dwCharToWrite)
{
BOOL fWriteState;
DWORD dwBytesWritten;
//写入数据
fWriteState=WriteFile(hPort,buf,dwCharToWrite*sizeof(BYTE),&dwBytesWritten,NULL);
if(!fWriteState)
{
//不能写数据
MessageBox(NULL,TEXT("Can't Write String to Comm"),TEXT("Error"),MB_OK);
dwBytesWritten=0;
}
return dwBytesWritten;
}
测试的 const BYTE byte='a';在调用这个函数时,我是这么写的CSerial cs;cs.WritePort(&byte,1);为什么不能写入?到底是哪里错了??求助各位高手了!!感谢!!
|
|