新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于DSP的USB數據傳輸系統設計

        基于DSP的USB數據傳輸系統設計

        作者: 時間:2009-11-11 來源:網絡 收藏

        2.2 驅動程序
        在Windows平臺下,驅動程序由三部分組成:設備驅動程序、總線驅動程序和USB主控制器驅動程序。它們必須遵循Win32驅動程序模型(WDM)。其中,Windows操作系統已經提供了處于驅動程序棧底的USB主控制器驅動程序和USB總線驅動程序(USBD.SYS)。USB設備的驅動程序主要是通過調用USBD.SYS來實現PC機與USB總線的交換。USB驅動程序主要完成以下功能:
        (1)發現、配置、關閉USB設備。通過一系列有關即插即用(Plug and Play)的派遣函數來完成。例如Ezusb_PnPAddDevice(),Ezusb_DispatchPnp()等函數。
        (2)驅動程序與應用函數的接口。像Ezusb_Creat(),Ezusb_Close()等函數。應用程序調用Ezusb_Create()后,返回惟一的Windows句柄后,才能調用驅動程序的其他函數,完成驅動程序對CY7C68001的一系列操作和傳送。應用程序通過調用API函數CreateFile()來實現對Ezusb_Create()的訪問。
        (3)控制與傳送接口。這是驅動程序的主要部分。它是Windows的異步I/O操作。應用程序使用標準Win32API函數DeviceIoControl()來執行這樣的操作。在驅動一方,這個DeviceloControl()調用被轉化成一個帶IRP_MJ_DEVICE_CONTROL功能碼的IRP。像讀取與寫入FIFO數據、endpoint0的操作均是通過異步I/O的方式來完成的。
        2.3 主機應用程序
        USB主機應用程序是計算機中完成特定功能的程序,其關鍵是實現從USB外設讀取或發送特定數量的數據、USB標準設備請求和特定的命令等。另外,可以、對數據做進一步的處理,如:存儲、顯示、快速傅里葉變換等。主機應用程序的編寫使用VC編譯環境中的API函數實現。應用程序的編程方法與串口編程類似。首先必須查找設備,調用Win32函數CreateFilea()打開設備的句柄;然后調用Win32函數DeviceloControl()就可以進行數據讀寫和控制操作;最后關閉設備句柄。在VC++6.0中用C++編寫簡單的上位機測試程序,得到測試結果如圖3所示。

        本文引用地址:http://www.104case.com/article/152289.htm

        3 結 語
        在CT圖像重建系統中,高性能的芯片具有高速的數據處理能力,利用的USB接口,能夠快速方便地實現實時傳輸。經測試,該的USB接口傳輸速度可達35 Mb/s以上,具有較高的實用價值和良好的應用前景,而且對于使用其他微處理器開發CY7C68001的USB 2.0接口也有很好的借鑒作用。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 斗六市| 通许县| 潮安县| 钟祥市| 崇信县| 文山县| 杂多县| 武鸣县| 会同县| 恭城| 招远市| 墨江| 张家港市| 松江区| 定安县| 舒兰市| 四会市| 沙湾县| 金门县| 崇州市| 白银市| 北川| 伊宁县| 吴江市| 利辛县| 安化县| 崇义县| 长乐市| 无为县| 岢岚县| 太湖县| 绥化市| 东宁县| 宽甸| 错那县| 团风县| 静海县| 敦煌市| 孙吴县| 英吉沙县| 治县。|