|
我用串口发AT命令给GSM模块,端口可以打开,但是就是WriteFile失败,ReadFile没有失败
void CCeSerial::Senddata(BYTE *psendbuf, DWORD length)
{
DWORD dwactlen;
if (m_hComm == INVALID_HANDLE_VALUE)
{
AfxMessageBox(_T("The port isn't opened now!"));
return;
}
BOOL ret=WriteFile(m_hComm, psendbuf, length, &dwactlen, NULL);
if(ret==FALSE)
{
AfxMessageBox(_T("写数据失败"));
}
}
打开端口我是这样的,并且设了DCB和COMMTIMEOUTS
HANDLE=m_hComm = CreateFile(Port, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);
我的读数是创建一个线程读的,ReadFile没有失败
BOOL fReadState = ReadFile(pCeSerial->m_hComm, recvBuf, 256, &dwLength, NULL);
if(!fReadState)
{
AfxMessageBox(_T("无法读取数据!"));
}
为什么打开了端口,可以读,但是不能写呢,是不是GSM模块的线没接好,还是定制的系统有问题呢?
为什么打开了端口,可以读,但是不能写呢,是不是GSM模块的线没接好,还是定制的系统有问题呢?
为什么打开了端口,可以读,但是不能写呢,是不是GSM模块的线没接好,还是定制的系统有问题呢?
|
|