青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 45,  comments - 232,  trackbacks - 0

     例子工程使用VS2003編譯通過。

      下載地址如下:http://www.shnenglu.com/Files/dyj057/MySerialPort08-8-22.rar

      所謂異步串口數(shù)據(jù)接收就是串口數(shù)據(jù)的接收是在一個(gè)獨(dú)立的線程完成了。當(dāng)串口有數(shù)據(jù)返回時(shí),會(huì)自動(dòng)執(zhí)行自定義的回調(diào)函數(shù)代碼,而不是像傳統(tǒng)的使用Read函數(shù)去串口數(shù)據(jù)。

      我在PJ Naughter的串口類CSerialPort的基礎(chǔ)上,繼承得到了自己的CAsyncSerialPort類,還聲明了一個(gè)ISerialPortObserver接口來監(jiān)視串口活動(dòng),如打開、關(guān)閉、數(shù)據(jù)發(fā)送完成,數(shù)據(jù)接收,處理錯(cuò)誤信息等。實(shí)用的時(shí)候,從ISerialPortObserver繼承一個(gè)類,實(shí)現(xiàn)里面的純虛方法,然后把這個(gè)類的一個(gè)實(shí)例加入通過CAsyncSerialPort類中的void AtachObserver(ISerialPortObserver *pObserver)方法加入串口實(shí)例中,就能實(shí)現(xiàn)對(duì)串口活動(dòng)的監(jiān)控了。

 其中最核心的代碼就是CAsyncSerialPort事件處理,實(shí)現(xiàn)數(shù)據(jù)的異步接收:

int CAsyncSerialPort::Run()
{
    
try
    {
        
//events array
        HANDLE waitHandles[4]= { 
            m_portClosingEvent,
            m_readEvent, 
            m_breakEvent,
            m_writeEvent}; 
            
        WORD dwStoredFlags 
= EV_BREAK | EV_CTS | EV_DSR | EV_ERR | EV_RING | \
            EV_RLSD 
| EV_RXCHAR | EV_RXFLAG | EV_TXEMPTY;

        SetMask(dwStoredFlags);
        DWORD dwMask;
        SetBreakEvent(dwMask);
        SetReadEvent(m_readOverlapped);
        
        DWORD dwEventIndex;
        
while(TRUE)
        {
            dwEventIndex 
= ::WaitForMultipleObjects(4,waitHandles,false,INFINITE);
            
switch(dwEventIndex)
            {
            
case WAIT_OBJECT_0:
                TRACE(_T(
"Receive serial port close event, exit read thread.\n"));
                
return 0L;
            
case WAIT_OBJECT_0+1//read event
                {
                    HandleReadEvent(m_readOverlapped);
                    SetReadEvent(m_readOverlapped);
                }
                
break;
            
case WAIT_OBJECT_0 +2//break event
                {
                    HandleBreakEvent(dwMask);
                    SetBreakEvent(dwMask);
                }
                
break;
            
case WAIT_OBJECT_0 +3:
                {
                    HandleWriteEvent(m_writeOverlapped);
                }
                
break;
            
case WAIT_FAILED:
                THROW_EX_CODE( ::GetLastError() );
            
default:
                ASSERT(FALSE);
                
return 0L;
            }
        }
    }
    
catch (CRuntimeException* e)
    {
        OnError(e
->GetErrorMessage());

        e
->Delete();
    }

    
return 0L;
}

 

   該串口實(shí)現(xiàn)是我在Win32平臺(tái)使用過的最穩(wěn)定實(shí)現(xiàn),呵呵,經(jīng)驗(yàn)總結(jié),在多個(gè)地方使用過,請(qǐng)放心使用。

   終于實(shí)現(xiàn)我說的寫個(gè)串口編程專題的第一步,不容易,太忙了。

posted on 2007-08-22 19:59 天下無雙 閱讀(6377) 評(píng)論(5)  編輯 收藏 引用 所屬分類: C/C++

FeedBack:
# re: 串口編程(1)--MFC中的異步串口實(shí)現(xiàn)(包含實(shí)現(xiàn)源代碼)
2007-08-23 09:52 | zenith
最近也開始接觸串口編程,頂一個(gè)先!  回復(fù)  更多評(píng)論
  
# re: 串口編程(1)--MFC中的異步串口實(shí)現(xiàn)(包含實(shí)現(xiàn)源代碼)
2007-08-23 15:31 | 天意
串口操作使用AT指令最好也是最簡(jiǎn)單的了,或者使用delphi的行間匯編,那樣更簡(jiǎn)單,樓上的這個(gè)代碼還是只能用來測(cè)試串口的,實(shí)際應(yīng)用還遠(yuǎn)遠(yuǎn)不夠的!  回復(fù)  更多評(píng)論
  
# re: 串口編程(1)--MFC中的異步串口實(shí)現(xiàn)(包含實(shí)現(xiàn)源代碼)
2007-08-23 15:35 | 天下無雙
那些地方不夠用?請(qǐng)指正。  回復(fù)  更多評(píng)論
  
# re: 串口編程(1)--MFC中的異步串口實(shí)現(xiàn)(包含實(shí)現(xiàn)源代碼)[未登錄]
2009-01-10 22:34 | Sam
Very good work!  回復(fù)  更多評(píng)論
  
# re: 串口編程(1)--MFC中的異步串口實(shí)現(xiàn)(包含實(shí)現(xiàn)源代碼)
2009-03-04 15:37 | skyking
這個(gè)只能在CDialog中用
能在Doc/View體系中使用么?  回復(fù)  更多評(píng)論
  

常用鏈接

留言簿(15)

隨筆分類

隨筆檔案

相冊(cè)

我的其它領(lǐng)域Blog

搜索

  •  

積分與排名

  • 積分 - 207547
  • 排名 - 130

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久国产日韩| 一区二区三区国产在线| 销魂美女一区二区三区视频在线| 一二美女精品欧洲| 国产精品视频导航| 久久九九精品| 久久亚洲国产成人| 日韩视频不卡| 一区二区三区视频在线播放| 国产精品日产欧美久久久久| 久久精品国产亚洲a| 久久久久这里只有精品| 亚洲高清在线精品| 亚洲另类自拍| 国产亚洲精品一区二555| 久久美女性网| 欧美精品观看| 欧美一级理论片| 久久亚洲捆绑美女| 亚洲香蕉网站| 久久精品国产精品亚洲综合| 亚洲黄页视频免费观看| 在线视频你懂得一区| 国产一区二区三区高清在线观看 | 欧美韩日精品| 午夜国产一区| 男女精品视频| 亚洲欧美视频在线观看| 久久久久欧美精品| 亚洲天堂黄色| 狼人社综合社区| 亚洲大胆人体视频| 蜜桃精品久久久久久久免费影院| 91久久精品网| 亚洲欧美在线免费| 99视频精品全部免费在线| 午夜精品剧场| 日韩一级视频免费观看在线| 欧美一区二区三区喷汁尤物| 亚洲免费播放| 久久亚洲影院| 久久久99免费视频| 国产精品大片wwwwww| 欧美刺激午夜性久久久久久久| 国产精品久久二区| 亚洲欧洲精品一区二区| 国产亚洲网站| 中文国产一区| 中文精品99久久国产香蕉| 久久五月激情| 乱中年女人伦av一区二区| 国产欧美日韩亚洲| 中文亚洲免费| 亚洲午夜性刺激影院| 欧美成人亚洲成人| 欧美国产日韩在线| 亚洲国产成人久久综合| 欧美在线亚洲| 久久九九热免费视频| 国产精品一区二区a| 中文精品在线| 亚洲一区二区三区精品动漫| 欧美成人精品福利| 欧美激情区在线播放| 精品成人免费| 久久久久免费| 欧美激情视频网站| 91久久精品日日躁夜夜躁国产| 久久久久欧美精品| 你懂的视频欧美| 亚洲国产日韩精品| 老司机成人网| 亚洲国产精品成人| 亚洲激情视频| 欧美日韩视频一区二区| 亚洲裸体视频| 亚洲欧美精品在线观看| 国产精品视频免费观看www| 亚洲欧美日韩国产中文| 久久久青草婷婷精品综合日韩 | 一本色道久久综合亚洲二区三区| 亚洲人成人一区二区在线观看| 久热精品视频| 亚洲人成在线观看网站高清| 一区二区三区久久网| 国产精品国产三级国产aⅴ浪潮 | 亚洲第一区中文99精品| 亚洲精品乱码视频| 欧美视频在线观看免费| 亚洲免费在线视频一区 二区| 久久久精品一区二区三区| 国产亚洲一区在线播放| 久久亚洲午夜电影| aa亚洲婷婷| 久久久天天操| 欧美怡红院视频一区二区三区| 国产综合精品| 欧美成人免费在线视频| 夜夜嗨av色一区二区不卡| 久久久久国产一区二区| 亚洲精品一区中文| 国产精品一区二区久久国产| 久久亚洲影院| 亚洲一区二区黄色| 欧美大片一区| 性色av一区二区三区红粉影视| 伊人久久大香线蕉av超碰演员| 欧美日韩精品在线| 久久精品国产91精品亚洲| 亚洲毛片av在线| 久久在线91| 亚洲欧美日本视频在线观看| 亚洲国产精品小视频| 国产精品久久久久久妇女6080| 久久久久久国产精品mv| 在线亚洲伦理| 亚洲国产精品一区二区第四页av | 亚洲欧美日韩在线综合| 亚洲电影第1页| 国产欧美日韩一区二区三区在线 | 免费观看成人| 欧美一区二区日韩| 一本色道久久99精品综合| 欧美顶级艳妇交换群宴| 久久精品主播| 午夜精品在线看| 夜夜狂射影院欧美极品| 亚洲国产高清自拍| 国产亚洲综合在线| 国产精品亚发布| 国产精品免费一区二区三区在线观看 | 午夜国产一区| 日韩视频在线免费观看| 亚洲国产精品999| 久久9热精品视频| 亚洲综合激情| 亚洲免费在线视频| 一本一道久久综合狠狠老精东影业 | 正在播放亚洲| 亚洲欧洲精品一区二区三区| 精品96久久久久久中文字幕无| 欧美日韩亚洲成人| 欧美理论在线| 欧美日韩一卡| 欧美三区在线观看| 欧美揉bbbbb揉bbbbb| 欧美日韩免费观看一区二区三区| 欧美国产亚洲视频| 欧美精品激情在线观看| 欧美精品一卡| 欧美日韩亚洲国产精品| 国产精品久久久久高潮| 国产精品久久婷婷六月丁香| 国产精品网站在线播放| 国产亚洲成人一区| 黄色日韩网站| 亚洲黄网站在线观看| 欧美成va人片在线观看| 久久久久久尹人网香蕉| 久久久999精品| 免费观看欧美在线视频的网站| 久久久蜜桃精品| 欧美国产精品va在线观看| 欧美黄色大片网站| 亚洲激情不卡| 亚洲私人黄色宅男| 欧美一级艳片视频免费观看| 久久久成人精品| 欧美成人国产一区二区| 国产精品高潮呻吟视频| 国产亚洲欧美日韩日本| 亚洲国产高清aⅴ视频| 99re66热这里只有精品4| 亚洲欧美不卡| 美女国产一区| av成人免费| 久久久久久久性| 欧美日韩亚洲一区三区| 国产欧美亚洲一区| 亚洲日本理论电影| 欧美一区二区三区久久精品茉莉花 | 亚洲综合色视频| 久久国内精品自在自线400部| 久久精品国产亚洲a| 欧美精品自拍偷拍动漫精品| 国产乱肥老妇国产一区二 | 国产精品国产三级国产普通话三级 | 日韩视频一区二区三区在线播放| 日韩午夜在线播放| 久久国产精品久久w女人spa| 欧美激情视频在线播放| 国产亚洲精品美女| 亚洲夜晚福利在线观看| 蜜臀久久99精品久久久画质超高清| 亚洲精品中文字幕有码专区| 久久激情视频久久| 国产精品国产三级国产专播品爱网| 亚洲国产高清在线观看视频| 午夜在线不卡| 99re6这里只有精品|