新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM的高速數(shù)據(jù)采集卡

基于ARM的高速數(shù)據(jù)采集卡

作者: 時(shí)間:2012-04-17 來源:網(wǎng)絡(luò) 收藏

主任務(wù)不斷的讀取端點(diǎn)1,當(dāng)接收到PC機(jī)發(fā)來的讀命令時(shí),就激活高優(yōu)先級(jí)讀任務(wù)的準(zhǔn)備就緒信號(hào)量。讀任務(wù)被喚醒進(jìn)入讀中斷服務(wù)程序,將緩存器的數(shù)據(jù)通過USB總線發(fā)送給PC機(jī),發(fā)送完畢后就關(guān)閉讀任務(wù)的就緒信號(hào)量,返回到主任務(wù)的循環(huán)中,等待PC機(jī)發(fā)來的下一個(gè)命令。寫任務(wù)與此相似,不再敘述。

4.2 LabWindow/CVI的主機(jī)軟件編程

4.2.1 LabWindows/CVI簡(jiǎn)介

作為虛擬測(cè)量?jī)x器,關(guān)鍵是要具有易于生成良好操作界面和強(qiáng)大數(shù)據(jù)處理能力的工具軟件。本系統(tǒng)的程序設(shè)計(jì)是用LabVIEW開發(fā)的。LabVIEW是美國(guó)NI公司開發(fā)的C/C++的專門用于虛擬儀表及過程控制的可視化編程語(yǔ)言,采用LabVIEW提供的控制件庫(kù)(包括開關(guān)、旋鈕、圖表等)很容易地設(shè)計(jì)出符合實(shí)際要求、新穎美觀的操作界面。此外LabVIEW具有很強(qiáng)的數(shù)據(jù)處理功能,它提供了豐富的庫(kù)函數(shù)用于數(shù)據(jù)輸入接口、數(shù)據(jù)處理(FFT等)和圖形顯示等功能,為開發(fā)應(yīng)用軟件帶來極大方便。圖5為L(zhǎng)abVIEW開發(fā)的系統(tǒng)操作界面。

56.jpg

4.2.2 程序設(shè)計(jì)

整個(gè)設(shè)計(jì)程序包括四個(gè)部分:面板設(shè)計(jì)、初始化、、數(shù)據(jù)處理和結(jié)果顯示,通過精心設(shè)計(jì)程序,基本完成了預(yù)定的各項(xiàng)測(cè)量功能。并保證了系統(tǒng)的運(yùn)行速度。各部分功能介紹如下。

(1) 面板設(shè)計(jì):提供友好的操作界面,符合常規(guī)測(cè)量?jī)x器的操作習(xí)慣。

(2) 初始化:完成系統(tǒng)初始化功能,包括復(fù)位、送工作方式字、設(shè)置程序運(yùn)行參數(shù)等。

(3) :LabVIEW不能直接訪問用戶自己設(shè)計(jì)的硬件,作為一個(gè)開放式開發(fā)平臺(tái),LabVIEW提供了DLL接口,使用戶在LabVIEW平臺(tái)上能調(diào)用其他軟件平臺(tái)編譯的模塊。并提供對(duì)象連接和嵌入技術(shù)(簡(jiǎn)稱OLE)的支持。筆者利用VC++6.0編寫了DLL文件,并在LabVIEW環(huán)境下調(diào)用該文件,實(shí)現(xiàn)了LabVIEW程序與卡的數(shù)據(jù)通信。



評(píng)論


相關(guān)推薦

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

關(guān)閉