Windows 95下智能數據采集系統

    時間:2024-08-29 06:03:04 理工畢業論文 我要投稿
    • 相關推薦

    Windows 95下智能數據采集系統

    摘要:提出一種智能數據采集系統。用編程簡單、定時分辨率高、工作可靠的單片機定時取代編程繁復、定時分辨率低、工作不可靠的Windows95下的定時。解決了Windows 95環境下短時間定時不準確的難題,又簡化了用戶的應用程序。整個系統結構簡單、高效可靠,實現了對信號的高性能采集。

    引言

    數據采集系統在各行各業都有廣泛的應用。目前,已有各種各樣高速、高精度、多通道的數據采集卡問世。計算機通過卡上的模數轉換器采入數據,然后進行數據存儲、數據處理和圖形顯示等工作。隨著微電子技術和計算機技術的發展,Windows 95/98平臺下的應用程序已經成為數據采集與處理軟件開發的主流。

    用于數據采集的常規Windows定時順又存在著嚴重的不足。首先,常規Windows定時器的定時分辨率低。定時器每隔55ms中斷1次,相當于最高采樣頻率僅為18.2Hz。對由于Windows 95/98下的應用程序無法直接與硬件打交道,不能通過對定時中斷重新安裝的方法改變定時時間長度。如此低的采樣頻率對于絕大多數的信號采集與處理都是不適合的,必須尋找能以更高頻率采集的方法。

    其次,Windows系統是一個多任務操作系統,它是基于消息來驅動事件的。定時器消息WMTIMER在串行消息隊列中的優先級別很低,往往得不到及時響應,甚至消息隊列中的幾個未及時處理的定時器消息會被合并為一個;而應用程序無法確定由于這種處理而丟失的消息數,使實際的采樣間隔不均勻。

    針對以上問題,人們想出了很多方法予以解決。目前常用的方法都是在PC機上編程,一般來講有以下3種方法:

    (1)在Windows應用程序中,使用普通C語言中常用的函數delay()[2,3]。

    delay()是C語言中常用的延延、定時函婁。使用delay(),最高采樣率可達1kHz,但delay()與多任務的Windows操作系統不兼容。在Windows應用程序中直接使用delay()會發生編譯警告和連接錯誤?梢酝ㄟ^程序中顯示說明函數delay()原型并在Windows庫中包含DELAY模塊的方法去除這一錯誤,從而可以在Windows應用程序中,像普通C程序一樣使用delay()。然而,這種用軟件等待的方法,對于主機的資源來講是一個極大的浪費。

    (2)使用Windows多媒體定時器的回調函數[4,5]

    Windows多媒體定時器可以通過函數timeBeginPeriod來設置定時器分辨率,其分辨率最小為1ms,最大為16ms。這一分辨率代表了60~1000Hz的采樣率,可以滿足一般信號對采樣率的要求。而且多媒體定時器采用中斷完成定時服務,在中斷時刻調用1個回調函數,而不是向消息隊列發送WM_TIMER信息。在應用程序中,使用Windows多媒體定時器并不容易,必須遵循嚴格的步驟。在使用回調函數的趕集,在中斷服務程序和用戶主程序之間,要進行數據的共享,給編程和調試帶來不便。程序的穩健性也會受到影響。在定時時間較短時,主機負荷過重。

    (3)實時鐘定時[6]

    實時鐘芯片在基準頻率作用下驅動內部時鐘電路工作,同時可通過對內部寄存器A(D3~D0)編程,選擇22分頻輸出信號頻率。實時鐘周期性地輸出方波和周期中斷請求信號(該中斷請求連到IRQ8),從而為程序中實現時間控制提供了另一條途徑。同時,在Windows機制中,使用優先級高于一般的任務級,而等于系統級的VxD編制驅動程序,可以保證驅動程序在運行時享有最高優先權,在進行硬件設備的管理、控制時不會被其他任務所中斷,充分保證了驅動程序返還給用戶的數據是完全真實的值。而且可以直接對硬件進行訪問,因而通過編寫VxD直接管理實時鐘中斷,定時分辨率更高。但VxD對調試者的編程水平要求較高,稍有不慎,很容易出現異常錯誤或死機。

    不難看出,直接在PC機上編程解決定時問題要求調試者有較高的編程水平,程序調試困難,可靠性差。

    為此,我們設計了一套智能數據采集系統。用單片機89C51作為中央處理單元,控制模/數據轉換、外部數據存儲器等外圍設備,進行數據的定時采集和預處理。通過絕大多數電腦都具備的并行口作為數據采集系統與計算機的接口,與PC機進行數據傳輸。由單片機管理定時采樣和進行部分信號預處理工作,解決了Windows 95下定時采樣的問題,減徑了PC機方面編程的工作量,使應用程序可以精力進行數據采集后的處理工作。

    智能數據采集系統

    智能數據采集系統的框圖如圖1所示。信源信號經放大濾波后進入A/D轉換器。單片機以一定的采集率在定時中斷內讀取A/D轉換器的輸出,送入RAM中暫存,在定時斷外則將RAM中存儲的數據不斷經并口送入PC機。PC機中的應用程序由并口接收單片機發送的數據,并對其進行數據處理和顯示。

    1.單片機與主機間的并口通信

    隨著計算機技術的發展,微機的并行口發生了很大的變化,由原來的只能打印,即只能向外設傳輸數據,發展成為可以在微機與外設之間進行雙向、快速交換數據的雙向并行接口。利用雙向并行口使得PC機能與數據采集系統的單片機之間以異步的、全互鎖的雙向并行方式通信。它能減少用戶交互地操作外部設備的次數,以更高的傳輸速率完成數據傳送。

    并口通信硬件部分原理如圖2所示,軟件部分流程圖如圖3所示。

    【Windows 95下智能數據采集系統】相關文章:

    基于USB接口的數據采集系統設計03-18

    基于USB總線的高速數據采集系統03-26

    基于Verilog HDL設計的自動數據采集系統03-21

    數據采集系統的英文論文及詳盡翻譯03-21

    基于DSP的USB口數據采集分析系統03-18

    螺紋半角測量儀數據采集系統的設計03-07

    基于Web的MCF5249數據采集系統的設計03-19

    低軾耗數據采集系統的USB接口設計03-18

    腦電物理頭模型數據采集系統的研究03-28

    91久久大香伊蕉在人线_国产综合色产在线观看_欧美亚洲人成网站在线观看_亚洲第一无码精品立川理惠

      中文字幕一级视频网站 | 日韩综合永久久网 | 亚洲第一成年网站在线观看 | 五月天婷婷缴情五月欧美激情 | 日本日本乱码伦视频在线观 | 亚洲成a人v电影在线点播 |