通用串行總線USB的家用電器自動化設計2

    2013-09-02 15:22 來源:電子信息網 作者:鈴鐺

    USB數據流模式:枚舉在設備可以與應用進行通信前,USB 主機需要了解設備狀態并給它分配設備驅動程序。實現這一初始信息交換的過程就叫作枚舉。在枚舉過程中,根據USB V2.0 規范的定義,設備將經歷以下設備狀態:

    1. 上電狀態(Powered)

    2. 缺省狀態(Default)

    3. 地址狀態(Address)

    4. 配置狀態(Configured)

    另外還有兩個USB 設備狀態,“連接狀態”(attached)和“掛起狀態”(suspended)。枚舉過程的具體細節超出了本文的范圍;不過,在設備配置中使用的命令與結構是相關的。

    描述符是讓USB 主機能獲取設備信息的數據結構。在枚舉過程中,主機請求描述符,從最上層設備描述符開始,一直到最低層端點描述符,順序如圖5 所示。

    5

    圖5


    枚舉過程

    下面概述一下USB 設備的枚舉過程所包含的步驟,并講解設備在枚舉過程如何經歷從上電到缺省、地址以及配置這幾個狀態。

    1. 用戶將一個USB 設備插入USB 端口。主機為端口供電,設備此時處于上電狀態。

    2. 主機檢測設備。

    3. 集線器使用中斷通道將事件報告給主機。

    4. 主機發送Get_Port_Status(讀端口狀態)請求,以獲取更多的設備信息。

    5. 集線器檢測設備是低速運行還是高速運行,并將此信息送給主機,這是對Get_Port_Status 請求的響應。

    6. 主機發送Set_Port_Feature(寫端口狀態)請求給集線器,要求它復位端口。

    7. 集線器對設備復位。

    8. 主機使用Chirp K 信號來了解全速設備是否支持高速運行。

    9. 主機發送另一個Get_Port_Status 請求,確定設備是否已經從復位狀態退出。

    10. 設備此時處于缺省狀態,且已準備好在零端點通過缺省通道響應主機控制傳輸。缺省地址為00h,設備能從總線獲取高達100mA 的電流。

    11. 主機發送Get_Descriptor(讀設備描述符)報文,以便確定最大數據包大小。設備描述符的八個字節是bMaxPacketSize。

    12. 通過發送Set_Address(寫地址)請求,主機分配地址,設備此時處于地址狀態。

    13. 主機發送Get_Descriptor 報文,以獲取更多的設備信息。主機通過發送描述符響應設備請求,隨后發送全部的次級描述符。

    14. 主機分配并加載設備驅動程序。

    15. 通過發送Set_Configuration(寫配置)請求,主機的設備驅動程序選擇一個有效配置。設備此時處于配置狀態。

    16. 主機為復合設備接口分配驅動程序。

    17. 如果集線器檢測到有過流現象,或者主機要求集線器關閉電源,則USB 總線切斷設備供電電源。在這種情況下,設備與主機無法通信,但設備處于連接狀態。

    18. 如果在3 毫秒內設備在總線上未見任何動作,則它將進入掛起狀態,在掛起狀態設備消耗的總線電能最少。

    USB 協議層

    控制傳輸使主機和設備之間可以交換設備配置信息和其他控制信息。控制傳輸在低速和全速傳輸運行時占用10% 的帶寬,在高速運行時占用20% 的帶寬。控制傳輸由設置階段、可選的數據階段和狀態階段組成。下面詳細描述每個階段的包。

    1. 標記包。USB 中所有事務都是由主機(PC)來完成的。IN 表示數據被讀入PC,OUT 表示數據由主機送出至設備,如圖6 所示。

    2. 數據包(可選)。USB 主機有兩個數據包——DATA0 和DATA1。每一個包的容量為1024 字節。

    3. 狀態包。在諸如應答(ACK)、否定應答(NACK)以及停止(Stall)等事務中,狀態包用來跟蹤USB 狀態。

    4. 幀起始包(SOF)。每一毫秒,USB 主機都將發送一幀SOF,每幀有11 位數據。

    6


    基于 USB 的家電網絡

    在基于USB 的家電網絡中,可以以菊花鏈式連接6 個USB 集線器,為多達127 臺家電設備提供接口。所有的集線器能安放在一個集線盒中,集線盒則通過控制電纜連接到設備上。這也可以由帶USB 端口、運行Windows OS 的單板機進行控制,最終將為家中每個房間配備一個家電控制臺。

    通過USB 自動化,您在與朋友聊天的同時,可以通過PC 控制洗衣機的運行時間、衣服類型、清洗劑類型以及水溫等。您也可以為每項任務添加音頻特征,這樣當每項任務完成時,您可以在某個特定的地方(臥室、客廳、游泳池或廚房等)收到音頻提示。

    此外,烘干機可以通過USB 自動接收指令,從洗衣機處裝入衣服,設置烘干時間,然后自動計時烘干,在每項任務成功完成后均有音頻提示。

    通過USB 自動化,您可以在辦公桌上控制咖啡機,不僅僅是煮咖啡,還能檢測咖啡壺中還剩多少咖啡。USB 自動化甚至可以使您能煮出符合自己口味的咖啡。

    USB 還可以使您看到冰箱內部的情況,設置特定的觸發開關來檢測剩余的牛奶、飲料、奶酪以及蔬菜量。根據這些信息,當您計劃去商場時,可以從PC 中快速匯總食品采購清單。

    照明自動化是居家的基本需求。通過USB 自動化,能夠檢查全屋的照明情況,并通過PC 對其進行控制。

    USB 與溫度傳感器配合使用,能夠自動控制房屋某處電風扇和空調的運行。這樣,可以使不同的房間或“區域”保持不同的溫度,以便節能。此外,電風扇和空調可以自動地分擔制冷荷合。

    1 2 > 
    USB 自動化 家用電器

    相關閱讀

    暫無數據

    一周熱門

    亚洲国产欧美一区二区三区 | 亚洲av永久中文无码精品综合| 国产AV无码专区亚洲AVJULIA| 亚洲片国产一区一级在线观看 | 亚洲无线码在线一区观看| 国产亚洲成在线播放va| 亚洲成a人片在线观看天堂无码| 亚洲一区AV无码少妇电影| 亚洲av日韩av无码av| 久久精品亚洲AV久久久无码| 亚洲妓女综合网99| 亚洲综合在线成人一区| 久久精品国产亚洲77777| 亚洲国产精品线在线观看| 婷婷亚洲久悠悠色悠在线播放| 亚洲国产综合专区在线电影| 亚洲成a人片77777老司机| 午夜亚洲国产理论秋霞| 日本久久久久亚洲中字幕| 91亚洲国产成人久久精品网站| 久久久无码精品亚洲日韩按摩| 亚洲午夜精品久久久久久人妖| 久久亚洲春色中文字幕久久久| 久久精品国产亚洲av麻豆小说| 亚洲系列国产精品制服丝袜第| 91亚洲国产成人久久精品| 亚洲一区二区三区无码国产| 亚洲中文字幕精品久久| 亚洲狠狠婷婷综合久久蜜芽| 青青青亚洲精品国产| 亚洲Av无码乱码在线观看性色| 亚洲男女内射在线播放| 国产成人亚洲精品狼色在线| 国产l精品国产亚洲区在线观看| 无码乱人伦一区二区亚洲一| 亚洲成aⅴ人片在线观| 亚洲视频在线观看2018| 亚洲av无一区二区三区| 亚洲精品tv久久久久久久久久| 91麻豆精品国产自产在线观看亚洲| 国产亚洲高清不卡在线观看|