基于PCI局部總線的1553B總線接口卡設計
驅動程序的基本功能是完成設備的初始化、對端口的讀寫操作、中斷的設備和響應及中斷的調用,以及對寄存器和內存的直接讀寫。在Driver Studio生成的程序框架上,根據具體的要求添加新的類對象和代碼,結合接口卡的特點,編寫一些特殊的驅動,在VC下編譯后即可得到所需的驅動程序。
2.2.2 應用程序設計
Windows系統為用戶提供了一些API函數,用于向WDM結構的驅動程序發命令以及進行數據交換,在內核區存在各種與之相對應的處理例程,見表1。
CreateFile用于獲得驅動程序句柄,CloseHandle關閉驅動程序,而其余函數用于應用程序控制驅動程序或者與驅動程序交換數據,其中Device Control函數完成讀取PCI配置空間內容的功能。在WDM中實現輸入輸出處理可以通過KIoRange類實現。應用層通過DeviceloControl函數向設備句柄調用KIoRange類的成員函數,實現應用層對I/O空間的處理。
應用程序的流程如圖2所示。
3 結語
1553B作為一種高可靠性和穩定性的數據總線已在軍事和工業領域得到越來越廣泛的應用。本文設計了一種基于PCI總線的1553B總線接口卡,分別使用PCI9052和BU-61580作為PCI總線和1553B總線的協議芯片,使用FPGA進行總線邏輯控制,提高了系統的集成度,驅動程序方面,利用Driver Studio向導生成驅動程序的框架,極大簡化了驅動程序的編制。實驗證明,本文設計的接口卡可以為電子設備提供符合1553B標準的接口,完成可靠的數據交換,工作穩定,功能完善,多個板卡可組成一個1553B總線仿真測試系統,通過仿真設備可用于模擬航電設備進行仿真測試,對開發1553B總線通信系統具有重要的現實意義和應用前景。
評論