網絡測試儀E1數據采集卡的驅動設計
3.2 物理層
物理層通過地址總線映射配置成幀器,其中PCI橋設備和成幀器之間經過CPLD控制選通。物理層驅動完成配置成幀器、復位控制等。成幀器是將E1上的比特流整合成符合規(guī)范的HDLC幀,其中一個標準HDLC幀包括32個時隙,這些時隙可配置映射到HDLC控制器的端口信道,實現2 M、N×64 K、N×8 K高速模式。其配置流程如圖4所示。
4 E1接口卡應用程序設計
數據采集卡通過成幀器首先從E1線上取得七號信令的數據,并將接收到的數據放至共享體中;上層應用程序發(fā)送IRP到共享體中讀取采集數據。應用程序接口(API)是驅動程序為上層應用預留的接口,上層軟件可通過調用該程序實現驅動以及對板卡的控制。雖然驅動程序是為設備的硬件層編程服務的,但是同樣需要具有與應用程序交互的能力,從而最終達到應用程序控制設備的目的。
在Windows中,應用程序與WDM通信的實現過程:應用程序應先獲得設備句柄GUID碼,然后利用CreateFile函數打開設備,通過DeviceIoControl函數傳遞控制代碼參數和WDM進行通信,包括從WDM中讀取數據和寫數據給WDM兩種情況,也可利用ReadFile從WDM中讀取數據或用WriteFile寫數據給WDM:當下層驅動有觸發(fā)事件時,就需要Event事件通知上層軟件。當應用程序退出時,
CloseHandle則關閉設備,這將產生對應于此設備對象的相應IRP消息。這種關系如表1所列。
由于E1數據采集卡的MUSYCC控制器是PCI多功能設備,所以應用程序應當合理調整兩個功能驅動程序的控制順序,實現E1數據的正常采集。其E1卡應用程序(API)的配置流程如圖5所示。
5 結束語
將E1數據線的發(fā)送線與接收線對接進行測試可得:接收數據即為發(fā)送數據,從而證明了E1板卡可實現收、發(fā)數據。E1接口卡為滿足用戶對信令消息的特定要求,驅動設計提供控制消息長度的接口函數
評論