基于PC104的通用自動(dòng)測試系統設計
通過(guò)對PC/104總線(xiàn)和所選總線(xiàn)的時(shí)序、信號、地址、數據等方面的需求分析,用CPLD設計接口模塊,實(shí)現總線(xiàn)握手和數據傳輸功能。C-PLD部分電路原理如圖4所示。
圖4 C-PLD部分電路
PC/104使用的總線(xiàn)資源主要是I/O控制和中斷,具體信號如下:A[019]是PC/104的10位地址總線(xiàn);D[07]是PC/104的8位雙向數據總線(xiàn);IOR,IOW分別是總線(xiàn)I/O端口讀、寫(xiě)信號;AEN是允許DMA控制地址總線(xiàn)、數據總線(xiàn)和讀寫(xiě)命令線(xiàn)進(jìn)行DMA傳輸以及對存儲器和I/O設備的讀寫(xiě);IOCHRDY是I/O就緒信號,I/O通道就緒為高;SYSCLK是系統時(shí)鐘信號,使系統與外部設備保持同步;IRQ3是中斷信號。PC104部分電路原理如圖5所示。
圖5 PC104部分電路原理
1)數據傳輸(PC/104→MXI) PC/104需要傳送數據時(shí),PC/104置位AEN信號,通過(guò)發(fā)送地址與數據總線(xiàn)向CPLD發(fā)送數據,此時(shí)IOW引腳置低電平(有效)。當CPLD接收到正確數據后,驅動(dòng)MXIbus的地址選通信號AS,獲取地址信息后,再驅動(dòng)MXI的數據選通信號DS,置位讀寫(xiě)信號WR取走數據,通過(guò)MXI的應答信號DTACK來(lái)判斷數據是否傳輸完畢,完畢則發(fā)送下一個(gè)數據,MXIbus采用的是地址數據總線(xiàn)復用形式。
2)數據傳輸(MXI→PC/104) 當MXI向CPLD傳送數據時(shí),置位AS,驅動(dòng)數據選通信號DS,并且WR有效,發(fā)送數據。CPLD收到數據后,通過(guò)IRQ3向PC/104發(fā)送中斷申請,PC/104收到中斷信號后,首先置位AEN,然后IOR變低電平,從CPLD寄存器口地址讀取數據。
2 系統軟件設計
2.1 軟件開(kāi)發(fā)環(huán)境
由于本方案在儀器選擇上以符合IVI規范的儀器的為主,所以在軟件選擇上應以利于IVI類(lèi)儀器驅動(dòng)開(kāi)發(fā)為根本。IVI類(lèi)儀器驅動(dòng)開(kāi)發(fā)的軟件也比較多,如Labview、Labwindows/CVI等。因Labwindows/CVI是為測試控制技術(shù)而開(kāi)發(fā)的,是基于標準C語(yǔ)言的編程工具,而且其在面板、界面、代碼生成方面都比較便利,包含*.dll動(dòng)態(tài)鏈接庫,配有IVI控制庫,其中包含了IVI儀器驅動(dòng)程序的開(kāi)發(fā)向導,可以為開(kāi)發(fā)儀器驅動(dòng)器節省大量的時(shí)間。所以軟件開(kāi)發(fā)工具宜選擇Labwindows/CVI。
評論