VB環(huán)境下對雙端口RAM物理讀寫(xiě)的實(shí)現
雙端口RAM 內存直接映象 高速并行傳輸 DLL動(dòng)態(tài)鏈接在集散型控制系統中,一般將計算機或工控機用于終端圖文顯示,數據采集處理以及機對話(huà)接口等方面。計算機或工控機與外部設備需要建立數據傳輸的通訊聯(lián)系。但大量數據傳輸,靠通常的串行通訊方式進(jìn)行,必須占用CPU大量的時(shí)間進(jìn)行通訊。一些控制系統往往因為傳輸速率慢而無(wú)法實(shí)現實(shí)時(shí)控制,不能滿(mǎn)足系統采集和控制需要。上述問(wèn)題在我們設計的汽車(chē)綜合檢測系統中,得到了較好的解決。系統中采用雙端口RAM技術(shù)設計了一塊PC總線(xiàn)接口的智能型高速并行通訊卡(以下簡(jiǎn)稱(chēng)通訊卡),實(shí)現外部數據同計算機高速并行通訊。由卡上的MCU負責分機的數據采樣,將需要傳輸的數據按系統協(xié)議在雙端口RAM內任意存取,讀寫(xiě)速度快、可靠性高、接口簡(jiǎn)單,滿(mǎn)足了系統設計需要。并且實(shí)現了在VB語(yǔ)言環(huán)境下對采用內存直接映象技術(shù)的雙端口RAM的讀寫(xiě)操作,將多主CPU采用的總線(xiàn)仲裁方式簡(jiǎn)單為僅僅對內存操作,在應用計算機總線(xiàn)擴展技術(shù)方面具有借鑒意義。
1 系統描述
在汽車(chē)綜合檢測系統中,需要對汽車(chē)的底盤(pán)、發(fā)動(dòng)機以及綜合電路等方面的信號進(jìn)行采樣和判斷,其中包含大量的運算處理和汽車(chē)標準為資料的對比、分析、判斷等環(huán)節。整個(gè)系統信號采樣點(diǎn)多,信號的形式各不相同,系統采用MCU控制方式的分機對各測量點(diǎn)進(jìn)行數據采集和模擬控制。由于MCU沒(méi)有高效的運算功能,沒(méi)有大量的指令和數據存貯空間,更不能直觀(guān)顯示各種汽車(chē)標準數據和測量結果,若進(jìn)行大量的運算、判斷、顯示,其硬件、軟件處理一個(gè)比較棘手的問(wèn)題。因此本系統采用MCU負責采集各種信號,統一由計算機負責相應的運算處理、分析、判斷,并管理汽車(chē)標準數據庫、人機對話(huà)接口、顯示測量結果和標準圖形等等,用一塊管理分機的通訊卡實(shí)現分機與主機之間數據傳輸。
通訊卡包含了數字濾波、數據收集、傳輸等功能,對系統內的并、串行通訊實(shí)現分時(shí)操作??ㄉ嫌梢黄琈CU負責管理各個(gè)分機,通過(guò)串行通訊方式將分機采集的各種數據,收集到通訊卡內,經(jīng)過(guò)判斷、篩選,將有效數據存貯到雙端口RAM的規定區域內;計算機從雙端口RAM內將數據讀入,進(jìn)行運算處理,與標準數據進(jìn)行比較判斷,將結果或控制命令寫(xiě)入雙端口RAM內,實(shí)現整個(gè)系統統一協(xié)調運行。本文主要針對通訊卡的軟、硬件設計和在VB環(huán)境下的軟件實(shí)現,作重點(diǎn)的分析。
2 硬件設計
通訊卡的基本硬件設計簡(jiǎn)圖如圖1所示。利用計算機總線(xiàn)做擴展卡的技術(shù)已經(jīng)廣為應用,但很多都是利用計算機提供固定的I/O端口地址進(jìn)行讀寫(xiě)操作,“瓶頸效應”十分明顯。在對實(shí)時(shí)性要求很高、數據傳輸量很大的場(chǎng)合,數據阻塞明顯,無(wú)法滿(mǎn)足系統的大量數據高速傳輸的需要。本系統利用計算機內存直接映象技術(shù),對內存物理地址直接操作,實(shí)時(shí)性和速度明顯改善,完全滿(mǎn)足本系統的速度要求。

2.1 MCU和雙端口RAM的選擇
此卡是實(shí)現計算機與數據采集的分機之間大量、快速的數據交換的中間環(huán)節。采用的MCU要求具有較喲的運行速度和數據管理能力,既有雙端口RAM的接口總線(xiàn),又具備同分機雙工串行通訊能力,同時(shí)考慮到系統硬件加密的必要,選擇此MCU是系統的關(guān)鍵。美ATMEL公司出品的89C51是本系統的首選。另一方面根據本系統的需要,數據傳輸的信息量在一個(gè)令牌下,2KB的吞吐量已經(jīng)滿(mǎn)足,因此我們采用美國IDT公司出品的雙端口EAM IDT7132,容量為2K
評論