新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 一種嵌入式USB MiniHost系統設計與實現

        一種嵌入式USB MiniHost系統設計與實現

        作者: 時間:2012-04-26 來源:網絡 收藏

        1)發送SETUP階段請求;
        2)發送塊請求(BULK Request);
        當一個傳輸請求在一個階段處理不完時,將會執行圖8所示流程。比如控制傳輸(Control Transfer)需要3個階段。
        3)控制傳輸(Control Transfer)結束,向EndPoint結構體中寫入傳送完成的結果,并根據傳輸的類型做相應處理。
        4)塊傳輸(BULK Transfer)結束,向EndPoint結構體中寫入傳送完成的結果,并向并口上發送ACK BUSY信號。

        4 并口到接口打印轉換器
        4.1 打印轉換器功能描述
        利用上述一個能夠把并口轉換為接口的打印轉換器,這個轉換器只是把從并口收到的數據轉發到接口上,然后根據USB接口規范,把數據重新包裝后發送給USB打印機,轉換器中并不需要對并口的數據內容進行解釋,只是轉發。
        4.2 并口打印機數據傳輸過程
        并口打印機采用IEEE1284標準進行通訊。IEEE1284標準為PC和外設之間的通訊定義了雙向通訊協議,通過該協議PC和外設之間的雙向數據傳輸率可以比以前提高20到50倍,同時該協議保持了軟件的向下兼容性。IEEE1284標準一共定義了5種數據傳輸模式,即正向傳輸模式(兼容模式),兩種反向傳輸模式(半字節模式和字節模式),兩種雙向傳輸模式(EPP模式一高速增強并行端口和ECP模式-擴展并行端口)。
        打印電纜我們采用D25接口,并行口一般有25個引腳,其中包括8位數據線,5位打印機狀態線,4位控制線。
        4.3 USB接口打印機數據傳輸過程
        打印設備它們能夠把頁面描述語言(PDL)轉換為人們能夠讀懂的打印頁面。因此需要制定打印機如何來接收這些PDL格式的數據,如何能夠返回打印機的狀態信息。常規的并口打印機用一個雙向打印端口來只認識這些語言。USB用一個Bulk OUT端點來發送這些數據到打印機,并用一個Bulk IN端點來發送狀態信息或其他數據。對于現已存在的方式來說,能夠在主機中通過Bulk IN端點使用查詢機制來檢索并口的狀態信息。一些PDL允許打印機返回大量的數據,諸如一些字體定義等信息。如果打印機了這個功能,它將使用用于傳送回狀態信息的Bulk IN端點來傳送回這些數據。
        4.4 功能
        1)并口部分功能
        ①為了方便處理打印并口只支持IEEE 1284-1994 SPP模式。
        ②打印數據只支持單方向(數據:PC→轉換器)。
        ③BUSY和ACK的信號時序類型為A-B(Ack-in-Busy)。
        2)USB打印機接口功能
        ①支持USB Ver2.0 Full Speed。
        ②符合Universal Serial Bus Specification 2.0。
        ③符合Universal Serial Bus Device Class Definition for Printing Devices規范。
        ④控制傳送的數據最大值為64字節。
        ⑤批量(Bulk)傳送的數據最大值為64字節。
        ⑥不處理USB Hub。
        3)內部功能
        ①定期取得打印機的狀態(以1秒為單位),反映到并口信號線中(利用USB控制傳送的GET_PORT_STATUS)。
        ②并口的收信緩沖存儲為64字節,接收到64字節后由USB接口傳送給打印機。
        ③并口的收信處理中設置了超時(1秒),一旦超時發生,接收到的數據由USB接口傳送給打印機。
        4.5 并口模塊
        負責和并口相關的工作。從并口讀取數據放入數據緩沖區。設置和讀取并口狀態和控制端口。通過讀取時間,來生成并口的時序。使用中斷(Interrupt)對并口的InputPrime信號進行相應的處理。使用中斷(Interrupt)對并口的nStrobe信號進行相應的處理。
        4.6 主模塊(Main Module)
        主模塊負責初始化整個,包括Parallel Module, Module以及整個的變量。編寫一個回調函數,此函數在設備狀態(連接或斷開)改變時調用。在檢測到設備連接后,調用 Module枚舉功能,枚舉打印機,并把打印機設置為某種模式。檢查是否要發送的控制或批量傳送。如果要,則把它們發送出去。

        5 結束語
        本論文了一種USB主機系統,并完成了該系統的硬件和固件的和調試。為了驗證系統,實現了打印機IEEE 1284中的SPP模式協議到USB打印設備類協議轉換器。在硬件設計中,系統采用富士通90330系列MCU中的MB90F337完成中央控制器和USB Host控制器,電路設計簡潔。文章為其他USB Host設備的開發提供了設計參考。

        本文引用地址:http://www.104case.com/article/149178.htm
        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        上一頁 1 2 3 4 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 兴国县| 正宁县| 望江县| 涞源县| 合作市| 望城县| 夏河县| 铅山县| 红河县| 普宁市| 高清| 平陆县| 九寨沟县| 斗六市| 伊宁市| 英德市| 南康市| 东兰县| 栖霞市| 丽水市| 连城县| 双鸭山市| 余姚市| 纳雍县| 浦城县| 赞皇县| 新郑市| 新和县| 郴州市| 米泉市| 沁阳市| 天峻县| 南城县| 蓝田县| 和顺县| 安福县| 沂南县| 大厂| 姜堰市| 蒲城县| 松桃|