通用串行總線USB的家用電器自動化設(shè)計(jì)2

2013-09-02 15:22 來源:電子信息網(wǎng) 作者:鈴鐺

USB數(shù)據(jù)流模式:枚舉在設(shè)備可以與應(yīng)用進(jìn)行通信前,USB 主機(jī)需要了解設(shè)備狀態(tài)并給它分配設(shè)備驅(qū)動程序。實(shí)現(xiàn)這一初始信息交換的過程就叫作枚舉。在枚舉過程中,根據(jù)USB V2.0 規(guī)范的定義,設(shè)備將經(jīng)歷以下設(shè)備狀態(tài):

1. 上電狀態(tài)(Powered)

2. 缺省狀態(tài)(Default)

3. 地址狀態(tài)(Address)

4. 配置狀態(tài)(Configured)

另外還有兩個(gè)USB 設(shè)備狀態(tài),“連接狀態(tài)”(attached)和“掛起狀態(tài)”(suspended)。枚舉過程的具體細(xì)節(jié)超出了本文的范圍;不過,在設(shè)備配置中使用的命令與結(jié)構(gòu)是相關(guān)的。

描述符是讓USB 主機(jī)能獲取設(shè)備信息的數(shù)據(jù)結(jié)構(gòu)。在枚舉過程中,主機(jī)請求描述符,從最上層設(shè)備描述符開始,一直到最低層端點(diǎn)描述符,順序如圖5 所示。

5

圖5


枚舉過程

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

1. 用戶將一個(gè)USB 設(shè)備插入U(xiǎn)SB 端口。主機(jī)為端口供電,設(shè)備此時(shí)處于上電狀態(tài)。

2. 主機(jī)檢測設(shè)備。

3. 集線器使用中斷通道將事件報(bào)告給主機(jī)。

4. 主機(jī)發(fā)送Get_Port_Status(讀端口狀態(tài))請求,以獲取更多的設(shè)備信息。

5. 集線器檢測設(shè)備是低速運(yùn)行還是高速運(yùn)行,并將此信息送給主機(jī),這是對Get_Port_Status 請求的響應(yīng)。

6. 主機(jī)發(fā)送Set_Port_Feature(寫端口狀態(tài))請求給集線器,要求它復(fù)位端口。

7. 集線器對設(shè)備復(fù)位。

8. 主機(jī)使用Chirp K 信號來了解全速設(shè)備是否支持高速運(yùn)行。

9. 主機(jī)發(fā)送另一個(gè)Get_Port_Status 請求,確定設(shè)備是否已經(jīng)從復(fù)位狀態(tài)退出。

10. 設(shè)備此時(shí)處于缺省狀態(tài),且已準(zhǔn)備好在零端點(diǎn)通過缺省通道響應(yīng)主機(jī)控制傳輸。缺省地址為00h,設(shè)備能從總線獲取高達(dá)100mA 的電流。

11. 主機(jī)發(fā)送Get_Descriptor(讀設(shè)備描述符)報(bào)文,以便確定最大數(shù)據(jù)包大小。設(shè)備描述符的八個(gè)字節(jié)是bMaxPacketSize。

12. 通過發(fā)送Set_Address(寫地址)請求,主機(jī)分配地址,設(shè)備此時(shí)處于地址狀態(tài)。

13. 主機(jī)發(fā)送Get_Descriptor 報(bào)文,以獲取更多的設(shè)備信息。主機(jī)通過發(fā)送描述符響應(yīng)設(shè)備請求,隨后發(fā)送全部的次級描述符。

14. 主機(jī)分配并加載設(shè)備驅(qū)動程序。

15. 通過發(fā)送Set_Configuration(寫配置)請求,主機(jī)的設(shè)備驅(qū)動程序選擇一個(gè)有效配置。設(shè)備此時(shí)處于配置狀態(tài)。

16. 主機(jī)為復(fù)合設(shè)備接口分配驅(qū)動程序。

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

18. 如果在3 毫秒內(nèi)設(shè)備在總線上未見任何動作,則它將進(jìn)入掛起狀態(tài),在掛起狀態(tài)設(shè)備消耗的總線電能最少。

USB 協(xié)議層

控制傳輸使主機(jī)和設(shè)備之間可以交換設(shè)備配置信息和其他控制信息??刂苽鬏斣诘退俸腿賯鬏斶\(yùn)行時(shí)占用10% 的帶寬,在高速運(yùn)行時(shí)占用20% 的帶寬??刂苽鬏斢稍O(shè)置階段、可選的數(shù)據(jù)階段和狀態(tài)階段組成。下面詳細(xì)描述每個(gè)階段的包。

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

2. 數(shù)據(jù)包(可選)。USB 主機(jī)有兩個(gè)數(shù)據(jù)包——DATA0 和DATA1。每一個(gè)包的容量為1024 字節(jié)。

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

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

6


基于 USB 的家電網(wǎng)絡(luò)

在基于USB 的家電網(wǎng)絡(luò)中,可以以菊花鏈?zhǔn)竭B接6 個(gè)USB 集線器,為多達(dá)127 臺家電設(shè)備提供接口。所有的集線器能安放在一個(gè)集線盒中,集線盒則通過控制電纜連接到設(shè)備上。這也可以由帶USB 端口、運(yùn)行Windows OS 的單板機(jī)進(jìn)行控制,最終將為家中每個(gè)房間配備一個(gè)家電控制臺。

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

此外,烘干機(jī)可以通過USB 自動接收指令,從洗衣機(jī)處裝入衣服,設(shè)置烘干時(shí)間,然后自動計(jì)時(shí)烘干,在每項(xiàng)任務(wù)成功完成后均有音頻提示。

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

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

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

USB 與溫度傳感器配合使用,能夠自動控制房屋某處電風(fēng)扇和空調(diào)的運(yùn)行。這樣,可以使不同的房間或“區(qū)域”保持不同的溫度,以便節(jié)能。此外,電風(fēng)扇和空調(diào)可以自動地分擔(dān)制冷荷合。

1 2 > 
USB 自動化 家用電器

相關(guān)閱讀

暫無數(shù)據(jù)

一周熱門

  • 合翔電子X中之杰智能:揭秘一家離散制造企業(yè)的柔性智造秘訣!
    合翔(常州)電子有限公司成立于1996年,主要生產(chǎn)蜂鳴器并廣泛應(yīng)用于汽車、筆記本電腦、家用電器等領(lǐng)域。公司有BYD、奇瑞
  • AI 推動未來科學(xué) 晶泰科技共襄未來科學(xué)大獎(jiǎng)周
    近日,為期五天的未來科學(xué)大獎(jiǎng)周在中國香港舉辦。未來科學(xué)大獎(jiǎng)周旨在弘揚(yáng)科學(xué)精神,禮贊科學(xué)成就,以前瞻視角引領(lǐng)公眾探尋世界科
  • Quobly宣布容錯(cuò)量子計(jì)算關(guān)鍵里程碑
    法國領(lǐng)先的量子計(jì)算初創(chuàng)公司Quobly報(bào)告稱,F(xiàn)D-SOI技術(shù)可以作為商業(yè)量子計(jì)算的可擴(kuò)展平臺,充分利用傳統(tǒng)的半導(dǎo)體制造