<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • 淺談LabWindows/CVI的應(yīng)用特點(diǎn)

    • 相關(guān)推薦

    淺談LabWindows/CVI的應(yīng)用特點(diǎn)

      摘 要:LabWindows/CVI是一個(gè)完全的標(biāo)準(zhǔn)C開(kāi)發(fā)環(huán)境,用于開(kāi)發(fā)虛擬儀器應(yīng)用系統(tǒng)。Labwindows/CVI將源代碼編輯、32位ANSI C編譯、聯(lián)結(jié)、調(diào)試以及標(biāo)準(zhǔn)ANSI C庫(kù)等集成在一個(gè)交互式開(kāi)發(fā)環(huán)境中。編程技術(shù)方面主要采用事件驅(qū)動(dòng)方式與回調(diào)函數(shù)方式,編程方法簡(jiǎn)單易學(xué)。同時(shí)Labwindows/CVI對(duì)每一個(gè)函數(shù)都提供一個(gè)函數(shù)面板,可進(jìn)行交互式編程,大大減少了源碼語(yǔ)句的鍵入量,減少了程序語(yǔ)法錯(cuò)誤,提高了工程設(shè)計(jì)的效率和可靠性。

      關(guān)鍵字: LabWindows/CVI;ANSI C;事件驅(qū)動(dòng);回調(diào)函數(shù);函數(shù)面板

      一、LabWindows/CVI簡(jiǎn)介

      LabWindows/CVI是一個(gè)完全的標(biāo)準(zhǔn)C開(kāi)發(fā)環(huán)境,用于開(kāi)發(fā)虛擬儀器應(yīng)用系統(tǒng)。LabWindows/CVI提供內(nèi)置式函數(shù)庫(kù)用于完成數(shù)據(jù)采集、分析、和顯示任務(wù);它還提供簡(jiǎn)單的拖放式用戶界面編輯器以及自動(dòng)代碼生成工具。利用這些功能,您可以在將代碼加入到某項(xiàng)目之前,先對(duì)其進(jìn)行互動(dòng)式的測(cè)試。可以利用LabWindows/CVI定義和建立用戶界面,生成或運(yùn)行ActiveX組件,及開(kāi)發(fā)多線程應(yīng)用。如果把您掌握的C語(yǔ)言編程知識(shí)與LabWindows/CVI簡(jiǎn)單易用的特性結(jié)合在一起,您將以不可思議地速度開(kāi)發(fā)出復(fù)雜的測(cè)量應(yīng)用系統(tǒng)。

      LabWindows/CVI的應(yīng)用領(lǐng)域極其廣泛,涵蓋了軍工,電訊,工業(yè)生產(chǎn)和航天等各種行業(yè)。

      二、Labwindows/CVI的特點(diǎn)

      LabWindows/CVI是一個(gè)完全集成式的開(kāi)發(fā)環(huán)境,特別為建立以GPIB,PXI,VXI和插入式數(shù)據(jù)采集板卡為基礎(chǔ)的測(cè)量系統(tǒng)而設(shè)計(jì)。該環(huán)境將互動(dòng)性、簡(jiǎn)單易用的開(kāi)發(fā)方式與ANSI C編譯代碼所特有的強(qiáng)大編程功能和靈活性有機(jī)地結(jié)合在一起。LabWindows/CVI提供了許多實(shí)用的特性,使您無(wú)需犧牲C代碼的運(yùn)行速度或源代碼可管理性,便能引人注目地改進(jìn)工作效率。

      Labwindows/CVI將源代碼編輯、32位ANSI C編譯、聯(lián)結(jié)、調(diào)試以及標(biāo)準(zhǔn)ANSI C庫(kù)等集成在一個(gè)交互式開(kāi)發(fā)環(huán)境中。因此,用戶可以快速方便地編寫(xiě)、調(diào)試和修改應(yīng)用程序,形成可執(zhí)行文件在Windows和Sun Solaris操作系統(tǒng)中運(yùn)行。

      由于Labwindows/CVI的編程技術(shù)主要采用事件驅(qū)動(dòng)方式與回調(diào)函數(shù)方式,編程方法簡(jiǎn)單易學(xué),為用戶在原來(lái)C語(yǔ)言開(kāi)發(fā)的基礎(chǔ)上建立新一代的虛擬儀器系統(tǒng)提供了完善的兼容性和很大的靈活性。

      由于Labwindows/CVI對(duì)每一個(gè)函數(shù)都提供一個(gè)函數(shù)面板,采用它用戶可進(jìn)行交互式編程,大大減少了源碼語(yǔ)句的鍵入量,減少了程序語(yǔ)法錯(cuò)誤,提高了工程設(shè)計(jì)的效率和可靠性。

      三、CVI中的事件一覽

      LabWindows/CVI所寫(xiě)的應(yīng)用程序是基于事件驅(qū)動(dòng)的。事件驅(qū)動(dòng)的程序通過(guò)響應(yīng)用戶界面所發(fā)生的“事件”來(lái)執(zhí)行代碼、調(diào)用回調(diào)函數(shù)。這些事件可以是發(fā)生在面板上的對(duì)象或者是面板自身。使用LabWindows/CVI進(jìn)行編程,可以生成事件驅(qū)動(dòng)的代碼。通過(guò)事件驅(qū)動(dòng)代碼,可以將用戶界面中的控件連接到代碼中的函數(shù)。每次對(duì)用戶界面進(jìn)行操作都會(huì)產(chǎn)生一個(gè)事件,LabWindows/CVI就會(huì)確定在何控件上發(fā)生了什么事件,如果對(duì)該控件有一個(gè)相應(yīng)的回調(diào)函數(shù),就會(huì)激活并運(yùn)行該回調(diào)函數(shù)中的代碼。

      CVI中主要包括了面板事件,控件事件,鼠標(biāo)事件。其中面板事件主要有:

      EVENT_LEFT_CLICK:

      EVENT_LEFT_DOUBLE_CLICK:

      EVENT_RIGHT_CLICK:

      EVENT_RIGHT_DOUBLE_CLICK:

      EVENT_KEYPRESS:

      EVENT_GOT_FOCUS:

      EVENT_LOST_FOCUS:

      EVENT_DISCARD:

      EVENT_CLOSE:

      EVENT_PANEL_SIZE:

      EVENT_PANEL_MOVE:

      控件事件:

      EVENT_COMMIT:

      EVENT_LEFT_CLICK:

      EVENT_LEFT_DOUBLE_CLICK:

      EVENT_RIGHT_CLICK:

      EVENT_RIGHT_DOUBLE_CLICK:

      EVENT_KEYPRESS:

      EVENT_GOT_FOCUS:

      EVENT_LOST_FOCUS:

      EVENT_DISCARD:

      鼠標(biāo)事件:

      EVENT_RIGHT_CLICK

      EVENT_RIGHT_DOUBLE_CLICK,

      EVENT_LEFT_CLICK,

      EVENT_LEFT_DOUBLE_CLICK

      除此之外,還可以在程序里添加擴(kuò)展的鼠標(biāo)事件。

      可以通過(guò)EnableExtendMouseEvents函數(shù)來(lái)響應(yīng)

      EVENT_MOUSE_MOVE,

      EVENT_LEFT_MOUSE_UP,

      EVENT_RIGHT_MOUSE_UP等事件。

      然后使用DisableExtendedMouseEvents函數(shù)關(guān)閉該功能

      四、回調(diào)函數(shù)類(lèi)型

      在CVI中完成軟件交互的主要有控件,面板,菜單。對(duì)于不同的交互方式,CVI里對(duì)應(yīng)了不同的回調(diào)函數(shù)。主要表現(xiàn)在回調(diào)函數(shù)的參數(shù)不一樣。

      控件回調(diào)函數(shù):QuitCallback (int panel, int control, int event,

      void *callbackData, int eventData1, int eventData2)

      面板回調(diào)函數(shù):Test(int panel, int event, void *callbackData,

      int eventData1, int eventData2)

      菜單回調(diào)函數(shù):MenuCallback(int menubar,int menuitem,void *callbackData,int panel)

      五、函數(shù)面板

      CVI中另一個(gè)最大的優(yōu)點(diǎn)就是為每一個(gè)函數(shù)都提供一個(gè)函數(shù)面板,用戶可以利用函數(shù)面板進(jìn)行交互式編程,從而避免了記憶很多函數(shù)和手工輸入很多源代碼。同時(shí)在函數(shù)面板中也提供了詳細(xì)的在線幫助,大大方便了程序的編寫(xiě),提高了編程效率。

      六、結(jié)束語(yǔ)

      我們通過(guò)對(duì)Labwindows/CVI的簡(jiǎn)單介紹,以及應(yīng)用特點(diǎn)的介紹和講解,使大家對(duì)Labwindows/CVI區(qū)別于其它C語(yǔ)言開(kāi)發(fā)環(huán)境的特點(diǎn),以及明顯的編程優(yōu)勢(shì)有了初步的了解,從而對(duì)CVI的認(rèn)識(shí)和學(xué)習(xí)提供了一個(gè)良好的開(kāi)端。

      參考文獻(xiàn):

      [1]張鳳均等編著.Labwindows/CVI開(kāi)發(fā)入門(mén)和進(jìn)階.北京航空航天大學(xué)出版.

      [2]劉君華等編著.虛擬儀器編程語(yǔ)言:LabWindows/CVI教程.電子工業(yè)出版社.

      [3]張毅剛 主編.虛擬儀器軟件開(kāi)發(fā)環(huán)境Lab Windows/CVI6.0編程指南.機(jī)械工業(yè)出版社

    【淺談LabWindows/CVI的應(yīng)用特點(diǎn)】相關(guān)文章:

    LabWindows/CVI的應(yīng)用特點(diǎn)08-13

    淺談當(dāng)前通信工程傳輸技術(shù)特點(diǎn)及應(yīng)用論文09-16

    淺談新環(huán)境下計(jì)算機(jī)輔助審計(jì)的特點(diǎn)和應(yīng)用10-02

    淺談科技論文寫(xiě)作的特點(diǎn)06-29

    淺談經(jīng)貿(mào)英語(yǔ)的特點(diǎn)及翻譯09-21

    淺談網(wǎng)絡(luò)詩(shī)歌的特點(diǎn)與發(fā)展07-23

    淺談自薦材料寫(xiě)作特點(diǎn)05-18

    淺談?wù)Z文教育的特點(diǎn)07-25

    淺談MOF材料的應(yīng)用06-02

    淺談植物文化的應(yīng)用09-27

    主站蜘蛛池模板: 国产精品1024视频| 亚洲精品第一国产综合境外资源| 国内精品久久久久久久涩爱| 精品国产乱码久久久久久郑州公司| 国产亚洲精品无码拍拍拍色欲| 国产麻豆一精品一AV一免费| 人妻少妇看A偷人无码精品视频| 91精品婷婷国产综合久久| 国产精品区免费视频| 亚洲精品一品区二品区三品区| 精品国产热久久久福利| 国产AV国片精品一区二区| 久久国产精品99久久久久久老狼| 精品少妇无码AV无码专区| 亚洲一区爱区精品无码| 亚洲国产精品13p| 久久精品国产精品亚洲下载 | 精品性影院一区二区三区内射| 欧美成人精品网站播放| 国产成人无码精品久久久免费| 国产精品2019| 国产精品v片在线观看不卡| 亚洲第一极品精品无码久久| 少妇亚洲免费精品| 全国精品一区二区在线观看| 国产亚洲精品激情都市| 87国产私拍福利精品视频| 亚洲国产精品嫩草影院| 欧美黑人巨大精品| 九九在线精品视频专区| 国产欧美国产精品第一区| 国产精品福利一区二区| 国产成人精品久久二区二区| av国内精品久久久久影院| 500av导航大全精品| 国产精品久久久福利| 国产精品久久精品| 777久久精品一区二区三区无码 | 国内精品久久久久久麻豆| 精品国精品国产自在久国产应用男| 国产视频精品免费视频|