時間:2008-07-21 15:38:00來源:ronggang
圖3 HCPL2630內部原理[/align]
[align=center]
圖4 光電耦合器的連接圖[/align]
由于光電耦合器的前端是發光二極管,最大電流不能超過15mA,因此一定要加上限流電阻R。限流電阻R的阻值的大小,對光電耦合器的性能影響很大。R過大,會導致脈沖邊緣延遲較大,R過太小,又很容易使光電耦合器前端發光二極管損壞而縮短光耦壽命。因此需要經過多次反復的實踐才能最后確定。由于器件有個體的差異,在調試過程中,也遇到個別的光電耦合器在運行一段時間后才發現驅動能力不夠,需要減小限流電阻、增大電流才能使發光二極管可靠導通的情況。
光電耦合器輸入端和輸出端供電要使用不同電源,于是在板卡上應用了DC5V—DC5V電源隔離模塊,自帶∏型濾波器,在增加少量的外加電路后能達到很小的輸出紋波。
4 模塊的硬件原理
如圖5,當數字信號從CompactPCI的J2連接器輸入到數字隔離I/O模塊時,首先經過了光耦隔離器,保證了外部的信號不對板上其他信號造成電壓沖擊;當總線發出讀操作命令時,PLX9030、CPLD接收了讀操作命令,相應的控制位把隔離后的信號送給CompactPCI總線。
[align=center]
圖5 數字隔離I/O模塊硬件原理[/align]
當數字信號從CompactPCI總線向局部總線輸出時,首先通過PLX9030把相應的控制位和數據送到CPLD中,CPLD接受了命令后,把相應的數據經光耦隔離器及驅動器送出。 外部設備可以通過CompactPCI J2自定義針腳根據需要進行控制。
5 WinDriver開發設備驅動程序
?。?)打開WinDriver應用程序后,出現Driver Wizard,選擇創建新Driver,出現當前系統中所有的硬件卡的列表,如圖6所示。
[align=center]
圖6 當前系統中所有的硬件卡的列表[/align]
從列表中選擇需要建立驅動程序的硬件設備,對于PCI設備,點擊Generate.INF按鈕建立安裝信息文件1518.inf。然后對1518.inf中的部分內容按照板卡所需信息進行修改。
?。?)用Driver Wizard生成操作硬件的應用程序級API函數。存放于DIO.h文件中。
?。?)啟動VC++6,建立一個DLL工程,將 Wizard產生的部分單元文件包含進工程中,在此基礎上加入完成特定任務的代碼,利用DIO.h中的API函數,完成DIO.c,并提供應用程序的調用接口。
?。?)編寫接口單元文件DIO.def,將工程編譯成動態鏈接庫DIO.dll。應用程序就可以直接調用此動態鏈接庫。在主測試程序中調用DIO.dll動態鏈接庫,操縱數字隔離I/O模塊配合其它模塊運行。
6 運行結果及討論
至今為止,基于本方案的數字隔離I/O模塊已經成功地應用于內場測試系統中并實現量產。數字隔離I/O模塊是CompactPCI結構的內場綜合測試系統的重要模塊之一,能夠同時實現數字信號輸入和輸出兩大模塊的功能,簡化了外圍硬件的選擇,也提高了系統的通用性和可擴展性;同時對輸入輸出采取了光電隔離措施,使系統同外部設備之間實現了電絕緣,整個系統的抗干擾性能大大提高。該模塊的設計具有通用性,可以應用到其它 CompactPCI總線的系統中,隨著CompactPCI總線在軍事工業領域的應用不斷增多,有廣闊的發展應用前景。
本文作者創新點:數字隔離I/O模塊實現了數字信號輸入和輸出兩大模塊的功能,簡化了外圍硬件的選擇,提高了系統的通用性和可擴展性;同時對輸入輸出采取了光電隔離措施,使系統同外部設備之間實現了電絕緣,整個系統的抗干擾性能大大提高。
參考文獻
[1] Tom Shanley , Don Anderson ,Addison Wesley,2000
[2] PCIMG 2.0 D3.0 CompactPCI Specification September, 1999
[3] 宋萬杰、羅豐、吳順君,CPLD技術及其應用,西安電子科技大學出版社,1999
[4] HP,隔離電路設計指南,2000
[5] 周多等,PCI協議接口設計與驗證, 微計算機信息,2005.5. P194-195
標簽:
傳動網版權與免責聲明:凡本網注明[來源:傳動網]的所有文字、圖片、音視和視頻文件,版權均為傳動網(www.cdcst56.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“傳動網”,違反者本網將追究其法律責任。
本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。
產品新聞
更多>2025-12-10
2025-11-20
2025-11-10
2025-11-10
2025-11-07
2025-10-31