⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 d190.bmp.txt

📁 Visual C++通信编程实例
💻 TXT
字号:
如读串口、写串口、停止读、停止写等。
    4)创建串口文件句柄。其中参数port表示串口的串口号;参数hWnd表示用来接收消
息的窗口句柄。该函数利用API函数CreateFile0创建一个串口句柄m__hFileHandle。
    5)关闭串口句柄。利用函数CloseHandle()关闭串口句柄m__hFileHandle。
    6)在超时时间内从串口读指定个数的字符。具体代码如下:
190
int CYsComm::ReadIn(PBYTE   lpszInputBuffer,
DWORD dwCountoByte,
    DWORD dwReadTimeOut)
{
    if( m_hFrleHandle—NULL)   //m hFileHandle是串口句柄,如果为空,表明该串口没有打开
    {
    return -1;
    l
    int nRet;
    DWORD dwLastError;
    DWORD dwHandleSignaled;
    HANDLE HandlesToWaitFor[21;
    int iWait=2;
HandlesToWaitFor[01 = m_overlappedRead.hEvent;
HandlesToWaitFor[l] = m_hStopReadEvent;
DWORD dwHaveReaded=0;
if (ReadFile《HANDLE)m_hFileHandle, (LPVOID)lpszInputBuffer,      (DWORD)dwCountoByte,
  (LPDWORD)&dwHaveReaded,    (LPOVERLAPPED)&m_overlappedRead》
f,,只有当数据等待读时才发生
    nRet=l;
    goto Exit;
}
dwLastError= GetLastError();
if (GetLastError()!= ERROR_IO_PENDING)
{
    nRet=-l;,,{卖取串口错误
    goto Exit;
)
dwHandleSignaled = WaitForMultipleObjects(iWait,HandlesToWaitFor,
 FALSE,dwReadTimeOut):
switch(dwHandleSignaled)
{
case WAIT_OBJECT_O :,/等待结束
          {
                  //Time to get the results of the WriteFile
 break;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -