<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 測試測量 > 設計應用 > 一種基于單片機的速度測量系統

一種基于單片機的速度測量系統

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

a)數據流程
動(dòng)態(tài)數據交換(dynamic data exchange ,簡(jiǎn)稱(chēng)DDE),它是Windows 提供的一種基于消息的進(jìn)程間通信技術(shù)協(xié)議[2]。其實(shí)質(zhì)是在兩個(gè)應用程序之間建立一個(gè)數據通道(channel),通過(guò)特定的會(huì )話(huà)過(guò)程,由windows作中介,實(shí)現數據的雙向傳輸。DDE應用程序以對話(huà)(conversations)的方式實(shí)現數據共享,會(huì )話(huà)采用客戶(hù)/ 服務(wù)器模式,啟動(dòng)會(huì )話(huà)并要求接收數據的進(jìn)程是客戶(hù)進(jìn)程(client),而響應客戶(hù)請求提供數據的進(jìn)程是服務(wù)器進(jìn)程( server)。組態(tài)王采用DDE方式和VB進(jìn)行數據交換,同時(shí)通過(guò)編寫(xiě)串口通信程序實(shí)現VB和的通信。整個(gè)的數據交換流程如圖3所示。

本文引用地址:http://dyxdggzs.com/article/195469.htm


b)實(shí)現
系統實(shí)現分為兩個(gè)部分:VB與組態(tài)王的數據交換以及與VB的數據交換。
i.VB與組態(tài)王通過(guò)DDE鏈接的數據交換
DDE對話(huà)的內容是通過(guò)應用程序名(application)、主題( topic)和項目(item) 3 個(gè)標示名來(lái)約定的。其中,應用程序名是進(jìn)行DDE對話(huà)的雙方的名稱(chēng),組態(tài)王運行系統的程序名是“VIEW”,VB程序使用的是可執行文件的名稱(chēng)。主題是指被討論的數據域(domain)。對于組態(tài)王來(lái)說(shuō),主題規定為“tagname”,VB程序的主題由窗體的LinkTopic屬性值指定。項目是指被討論的特定數據對象,在組態(tài)王的數據辭典中定義I/O變量的同時(shí),也定義項目名稱(chēng)。對VB程序而言,項目是具有文本屬性控件的名稱(chēng)[3]。
VB作為客戶(hù)端程序從組態(tài)王中得到數據時(shí),首先需要在組態(tài)王中定義DDE設備,然后在組態(tài)王的數據庫(數據辭典)中按照預先需要通訊的變量點(diǎn)數和變量類(lèi)型建立I/O變量,定義變量的初始值、最大值、連接設備和項目名,還需要在VB中定義控件的屬性和方法。一般的設置如下:
Control.LinkTopic=服務(wù)器程序名|主題名
Control.LinkItem=項目名
Control.LinkMode=0,1,2,3 (其中0=關(guān)閉DDE,1=熱鏈接,2=冷鏈接,3=通告鏈接)
Control為VB應用程序中特定的文本框、標簽框或圖片框的名稱(chēng)。
VB作為服務(wù)器程序向組態(tài)王提供數據時(shí),首先要在組態(tài)王中設置服務(wù)器程序的3個(gè)標志名,然后把VB 應用程序中提供數據的窗體的LinkMode屬性設置為1。例如,將VB中的txt to Speed 文本框控件中的數據傳給組態(tài)王中的I/O變量Speed ,其實(shí)現方法如下:
在組態(tài)王中建立一個(gè)名為VBDDE的DDE設備,服務(wù)程序名為vbdde,話(huà)題名為FormTopic,數據交換方式為標準Windows DDE交換。新建一個(gè)I/O變量Speed,將其連接設備名定義為VBDDE,項目名設為txt to Speed。在VB中,將窗體VBDDE的LinkMode屬性設置為1(source),LinkTopic屬性設置為FormTopic,然后編譯為可執行文件vbdde.exe,即可實(shí)現與組態(tài)王的通信。
ii.VB與的數據交換
本例采用MSComm控件實(shí)現VB與單片機之間的數據交換,具有程序實(shí)現簡(jiǎn)便、程序模塊化、工作可靠等優(yōu)點(diǎn),并能滿(mǎn)足多數情況下的工控要求。使用MSComm控件主要是通過(guò)事件來(lái)處理串行口的交互??丶腛nComm事件負責捕獲或處理這些通訊事件和通訊錯誤。在實(shí)際應用中,一個(gè)MSComm控件和一個(gè)串行口一一對應,所以如果要處理多個(gè)串行口的話(huà),必須有相應數量的控件與之對應。
利用MSComm控件進(jìn)行串口通信的具體操作和具體的程序代碼已經(jīng)有很多論述,在這里強調兩點(diǎn):
1.無(wú)論發(fā)送或者接收,都需要用一個(gè)Variant變量作中介;
2.使用MSComm控件的Input及Output屬性來(lái)接收或者傳輸文本數據或二進(jìn)制數據的方法不同:如果發(fā)送一個(gè)ANSI字符串到串口,可以以文本數據的形式發(fā)送;當要傳輸二進(jìn)制數據時(shí),由于Output屬性支持的變量類(lèi)型為Variant類(lèi)型,所以發(fā)送二進(jìn)制數據時(shí)必須傳遞一個(gè)包含字節數組的Variant到Output屬性。使用MSComm控件的Input屬性讀取數據時(shí),如果接收的數據類(lèi)型為文本數據,Input屬性通過(guò)一個(gè)Variant返回文本數據;如果接收的數據模式采用二進(jìn)制形式,用Input屬性讀取數據時(shí),不能直接賦值給Byte類(lèi)型變量,只能通過(guò)先賦值給一個(gè)Variant類(lèi)型變量,返回一個(gè)二進(jìn)制數據的數組,再轉換保存到Byte類(lèi)型數組變量中。
4.結束語(yǔ)
本文論述的基于單片機的方法已在工程測控系統中得到了應用,適用于中低速物體的測量,具有良好的使用效果,具有實(shí)現成本低、可靠性好、精度良好的優(yōu)點(diǎn)。此外,本文提出的單片機與上位機數據通信方法為多種工控軟件和非通用性設備的數據交換問(wèn)題提供了思路。還需注意的一點(diǎn)是:通過(guò)控件MSCOMM控件的input和out2put屬性可以很方便地接受和發(fā)送串口緩沖區的數據,但要編制比較完善的通訊應用程序,還需要進(jìn)行更深入的研究,比如通過(guò)使用“握手”的機制來(lái)增強通訊的安全性和穩定性,另外通過(guò)數據的重復發(fā)送達到收發(fā)數據的準確性等等.

測速儀相關(guān)文章:測速儀原理



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

關(guān)鍵詞: 單片機 速度測量 系統

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>