<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > Windows CE設(shè)備與PLC串行通信的實(shí)現(xiàn)

          Windows CE設(shè)備與PLC串行通信的實(shí)現(xiàn)

          作者: 時(shí)間:2012-03-26 來(lái)源:網(wǎng)絡(luò) 收藏

          Windows CE操作系統(tǒng)是微軟公司針對(duì)嵌入式系統(tǒng)的特點(diǎn)如內(nèi)存容量小、運(yùn)行速度低、實(shí)時(shí)性要求高等,而設(shè)計(jì)出的一種緊湊、高效、模塊化的嵌入式實(shí)時(shí)操作系統(tǒng)。 Windows CE可以提供桌面Windows絕大多數(shù)系統(tǒng)服務(wù)與功能,同時(shí)又保持系統(tǒng)體積很小的特點(diǎn)并可以支持應(yīng)用程序的實(shí)時(shí)應(yīng)用。它還支持?jǐn)?shù)據(jù)庫(kù)、 COM(Component Object Model)、Internet等功能的開(kāi)發(fā),可以使用標(biāo)準(zhǔn)的Windows控件來(lái)完成界面設(shè)計(jì)。支持眾多的標(biāo)準(zhǔn)設(shè)備接口,并能夠移植到多種嵌入式CPU 架構(gòu)中。選擇Windows CE作為嵌入式產(chǎn)品的操作系統(tǒng)較之現(xiàn)有嵌入式系統(tǒng)中軟件結(jié)構(gòu)上多采用DOS系統(tǒng)或者無(wú)操作系統(tǒng)而言,可以極大的提升了產(chǎn)品的功能,增加用戶界面的美觀程度,并大大減少了程序開(kāi)發(fā)的工作量?;谏鲜鰞?yōu)點(diǎn)在控制系統(tǒng)設(shè)計(jì)中可以把Windows CE的設(shè)備與相結(jié)合使用,構(gòu)成上下位機(jī)系統(tǒng)。如圖1所示,上位機(jī)由PC104構(gòu)成,通過(guò)在PC104上移植Windows CE系統(tǒng)使其成為Windows CE設(shè)備,這樣就可以充分利用Windows CE強(qiáng)大的系統(tǒng)功能來(lái)完成控制系統(tǒng)中的控制功能程序開(kāi)發(fā)和用戶界面設(shè)計(jì)。下位機(jī)通過(guò)使用來(lái)完成的各種電氣控制功能。上下位機(jī)之間通過(guò)通信的方式來(lái)實(shí)現(xiàn)控制信息和機(jī)器狀態(tài)信息的交換。高速、實(shí)時(shí)、穩(wěn)定的通信是保證系統(tǒng)穩(wěn)定運(yùn)行、工作可靠的關(guān)鍵,在結(jié)合的特點(diǎn)基礎(chǔ)之上,具有普遍性高、編程簡(jiǎn)單、實(shí)時(shí)性好等特點(diǎn)的是上下位機(jī)通信形式的一種理想選擇方案。下面就Windows CE下如何與PLC實(shí)現(xiàn)的這一問(wèn)題進(jìn)行詳細(xì)的分析。

          圖1 上下位機(jī)系統(tǒng)結(jié)構(gòu)

          1 WINDOWS CE下實(shí)現(xiàn)的特點(diǎn)

          Windows CE的設(shè)計(jì)目標(biāo)就是為了滿足嵌入式系統(tǒng)和移動(dòng)設(shè)備的使用需要,所以其系統(tǒng)本身的通信功能比較強(qiáng)大。市場(chǎng)上主流的Windows CE的5.0版本主要提供了三種主要的通信形式:串行通信、網(wǎng)絡(luò)(其中包括WinSock和TCP/IP)、電話API (TAPI)[1]。在工業(yè)控制領(lǐng)域串行I/O和網(wǎng)絡(luò)通信的使用較多,其中串行通信幾乎在所有嵌入式的設(shè)備中提供物理器件的支持,硬件電路實(shí)現(xiàn)也比較簡(jiǎn)單。通過(guò)研究TCP /IP網(wǎng)絡(luò)通信和串行通信在ISO通信模型中的描述,如圖2所示,可以看出串行通信模型比網(wǎng)絡(luò)通信模型的實(shí)現(xiàn)要簡(jiǎn)單的多。操作系統(tǒng)只需要實(shí)現(xiàn)Data- link layer中的驅(qū)動(dòng)程序和Serial API函數(shù)的封裝即可,不需要其它的協(xié)議支持,這樣就使串行通信應(yīng)用程序的開(kāi)發(fā)要相對(duì)簡(jiǎn)單,系統(tǒng)調(diào)用也較少。對(duì)于嵌入式環(huán)境來(lái)說(shuō),意味著需要更少的軟、硬件資源的開(kāi)銷,也就等于提高了系統(tǒng)的快速性和實(shí)時(shí)性。

          圖2 Windows CE通信的ISO模型

          1.1 Windows CE提供了完善的串行通信API支持

          在Windows CE平臺(tái)下提供了與桌面Windows平臺(tái)一致的串行通信操作API[2]。使用這些API可以用于打開(kāi)、關(guān)閉和操作串口,傳輸和接收數(shù)據(jù),以及管理串行連接等。掌握和使用好下面的API函數(shù)是串行通信程序設(shè)計(jì)成敗的關(guān)鍵,其中主要使用有API函數(shù)及功能如下表所示:

          函數(shù)名

          功能

          CreateFile

          用于打開(kāi)串口

          SetCommState

          按定義的DCB結(jié)構(gòu)配置通信設(shè)備

          SetCommTimeOuts

          設(shè)置通信設(shè)備上所以讀寫(xiě)操作的超時(shí)參數(shù)

          ReadFile

          向串口讀數(shù)據(jù)

          WriteFile

          向串口寫(xiě)數(shù)據(jù)

          SetCommMask

          設(shè)置通訊設(shè)備的事件掩碼值

          WaitCommEvent

          等待通信設(shè)備發(fā)生指定的事件

          PurgeComm

          清空通信緩存及通信錯(cuò)誤

          CloseHandle

          關(guān)閉打開(kāi)的串行口

          表1 Serial Communication API


          上一頁(yè) 1 2 3 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();