freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

本科--基于單片機的usb口控制彩燈系統(tǒng)的設(shè)計(完整版)

2025-01-24 08:50上一頁面

下一頁面
  

【正文】 設(shè)備內(nèi)有一個或多個邏輯連接點,稱為端點,設(shè)備通過端點和主機交換數(shù)據(jù),一組相關(guān)的端點稱為接口,每個接口都有一個配置,端點、接口、配置的特性是通過各自的描述符來描述。 接口描述符是設(shè)備一個特定功能的端點集,每個配置至少必須支持一個接口。因此, USB 設(shè)備還可以有自己的電源。端點是一個儲存多個字節(jié)的緩沖器或內(nèi)存的一塊,用來作為數(shù)據(jù)的緩沖區(qū)。當(dāng)設(shè)備收到包含設(shè)備地址和端點地址的輸入事務(wù)時,如果設(shè)備有發(fā)送到主機的數(shù)據(jù),它就會從指定的端點送出數(shù)據(jù),然后觸發(fā)一個中斷,設(shè)備的中斷服務(wù)程序就會為 下一個 IN 事務(wù)做好準(zhǔn)備。 USB 的數(shù)據(jù)流傳輸 USB 總線上數(shù)據(jù)傳輸?shù)慕Y(jié)構(gòu)如圖 26 所示。 控制傳輸 (Control)方式傳送 :控制傳送是雙向傳送,數(shù)據(jù)量通常較小。同步傳輸每次傳輸?shù)淖畲笥行ж?fù)荷可為 1023 個字節(jié)。設(shè)備的端點模式器的結(jié)構(gòu)決定了它的查詢頻率,從 1 到 255ms 之間。這種類型的設(shè)備適合于傳輸非常慢和大量被延遲的傳輸,可以等到所有其它類型的數(shù)據(jù)的傳送完成之后再傳送和接收數(shù)據(jù)。緊跟 SYNC 是 8位的包標(biāo)識 PID , PID中高 4位為包類型域,低 4位 為校驗域。 高速使用,由集線器傳回的用來報告在分割事務(wù)時低速或全速傳輸?shù)腻e誤。這三個令牌包的包格式如下。在控制器芯片中,通常用一個觸發(fā)器來指示數(shù)據(jù)交替的狀態(tài),發(fā)送端和接收端都會跟蹤數(shù)據(jù)交替的狀態(tài),保證經(jīng)過多個處理操作后,雙方的比特序列仍能保持同步。一種情況是作為 PING 事務(wù)的一部分由高速設(shè)備端點返回,另外一種情況是,在分割事務(wù)中,當(dāng)?shù)?/全速事務(wù)還沒有完成或集線器不能執(zhí)行分割事務(wù)時,由集線器返回。 ( 3) SPLIT 令牌包 當(dāng) 主機在高速總線上與低 /全速設(shè)備通信時,由 集線器負(fù)責(zé)速度轉(zhuǎn)換,將來自上游的高速事務(wù)轉(zhuǎn)換為低 /全速。如圖 29所示。 集成 MCU 的 USB 控制芯片 優(yōu)點是 CPU 與控制器在同一片芯片里, CPU 只需要訪問一系列寄存器和存儲器,便可實現(xiàn) USB 口的數(shù)據(jù)傳輸,最大限度的發(fā)揮 USB 高速的特點。 USB 系統(tǒng)驅(qū)動程序的設(shè)計是基于 WDM( Windowsdriver model)驅(qū)動程序模型的。 從驅(qū)動程序的角度看,每個設(shè)備都被看 成若千個設(shè)備對象 (DO),這些設(shè)備對象的來歷各不相同,每個設(shè)備對象都有驅(qū)動程序與之對應(yīng),它們根據(jù)一定的規(guī)則組成設(shè)備對象堆棧,也就是對應(yīng)的驅(qū)動程序堆棧。 USB 設(shè)備的 USB 客戶軟件 (功能驅(qū)動程序 )會通過一個 Windows 所定義的一個軟件接口來同集線器驅(qū)動程序進行通信,集線器驅(qū)動程序用來管理連接端口的初始化,而 USB 集線器驅(qū)動程序則要通過 USBDI 通用串行總線驅(qū)動程序接口 )來實現(xiàn)同串行總線驅(qū)動 (USBD)的通信, USBD 負(fù)責(zé)管理總線的電源、檢測 USB 設(shè)備和管理 USB 事務(wù),然后, USBD 會選擇三種主控制器驅(qū)動程序之一來同其下方的主控制器通信,最終,由主控制器直接實現(xiàn)對 USB 物理總線的訪問。 MSDN、驅(qū)動程序工具軟件等。為了防止每次檢測到新設(shè)備時都要讀 .inf 文件本身, Windows 維護著一個驅(qū)動信息庫,在驅(qū) 動信息庫中保存著從這個 .inf 文件調(diào)用的信息,信息庫文件為 和 ,保存在 windowslinf 文件夾里。在實際應(yīng)用中,根據(jù)項目的具體情況,需要選擇一種合適的驅(qū)動程序工具。 23 圖 22驅(qū)動程序構(gòu)成 開發(fā) USB 驅(qū)動程序 在 USB 的驅(qū)動程序中,所有的總線驅(qū)動程序都不需要用戶編寫, Window 都自帶這些驅(qū)動程序。在功能驅(qū)動程序的上方和下方的過濾驅(qū)動程序是對功能驅(qū)動程序的補充,用來增加功能驅(qū)動程序的能力。圖 21 中給出了 Windows 2021 操作系統(tǒng)結(jié)構(gòu)和 WDM 驅(qū)動程序的分層模式,整個系統(tǒng)被分為用戶模式和內(nèi)核模式。但因為 USB 控制器是通過串行口或并行口與 MCU 連接,在傳輸速度方面不如集成了 MCU 的控制芯片。最后主機發(fā)出一個分割完成命令,集線器以 ACK應(yīng)答,表示設(shè)備成功接收到數(shù)據(jù),從而結(jié)束整個事務(wù)。一個分割事務(wù)包括兩部分 :開始分割事務(wù)(SSPLIT)和完成分割事務(wù) (CSPLIT),對應(yīng)的令牌分別為 SSPLIT 令牌和 CSPLIT 令牌,這兩個令牌包的 PID 都使用表 21所示的 SPLIT 包標(biāo)識號,在包中用一位來區(qū)分是 SSPLIT 還是CSPLIT,其它字段兩者是完全一樣的,分別給出了包要到達(dá)的集線器地址、集線器端口號,以及該端口連接的是低速還是全速設(shè)備。 ( 2) PING 令牌包 PING 令牌包和 IN,OUT,SETUP 有相同的格式,它只適合高速事務(wù)。共有三種類型的基本類型握手包 :ACK 說明成功地接收到包,主機和設(shè)備方都可以返回 ACK。 SOF的格式如下。共有四種基本類型的令牌包 :IN,OUT,SETUP 和 SOF。 表 1 USB 數(shù)據(jù)包類型 PID類型 PID名稱 PID[3: 0] 說明 令牌 OUT IN SOF SETUP 0001 1001 0101 1101 輸出(主機到設(shè)備) 輸入(設(shè)備到主機) 幀開始令牌 控制傳輸使用 數(shù)據(jù) DATA0 DATA1 DATA2 MDATA 0011 1011 0111 1111 數(shù)據(jù)包 PID 數(shù)據(jù)包 PID 高速數(shù)據(jù) PID,等時傳輸使用 高速數(shù)據(jù) PID,等時傳輸使用 握手 ACK NAK STALL NYET 0010 1010 1110 0110 接收端接收到無錯的數(shù)據(jù)包 因為端點忙,接收端不能接收數(shù)據(jù)或發(fā)送端不能發(fā)送數(shù)據(jù)。根據(jù)不同的事務(wù)類型,每個事務(wù)包括一個、兩個或三個包,在每個包中包括一個包標(biāo)識 (PAD )、錯誤校驗位和其它的信息。 成塊傳輸 (bulk)傳送 :主要應(yīng)用在數(shù)據(jù)大量傳送傳送和接受數(shù)據(jù)上,同時又沒有帶寬和間隔時間要求的情況下,要求保證傳輸。 中斷傳輸 (interrupt)方式傳送 :中斷方式傳輸主要用于定時查詢設(shè)備是否有中斷數(shù)據(jù)要傳送。控制傳輸?shù)湫偷赜迷谥饔嬎銠C和 USB 外設(shè)之間的端點 (Endpoint)0 之間的傳輸,但是指定供應(yīng)商的控制傳輸可能用到其它的端點。 USB 設(shè)備可根據(jù)數(shù)據(jù)包中的地址信息來判斷是否響應(yīng)該數(shù) 據(jù)傳輸。每一個設(shè)備都會有一個默認(rèn)控制管道(Default Control Pipe ),此默認(rèn)控制管道使用端點 0。一個單一的端點號碼可以支持 IN 和 OUT 端點地址,例如端點號 1 既可以支持一個 IN 端點來傳輸數(shù)據(jù)到主機,也可以支持一個 OUT 端點來從主機發(fā)送數(shù)據(jù)。 數(shù)據(jù)傳輸模型 USB 設(shè)備對于 USB 系統(tǒng)來說是端點的集合,端點被分成組,一組端點實現(xiàn)一個接口,設(shè)備端點和主機軟件之間利用管道進行聯(lián)系。關(guān)于設(shè)備、配置、接口、端點描述符各個字段的格式和具體含義,將在后節(jié)給出詳細(xì)的介紹。高階的描述符會包含其它低階的描述符的情況。 USB連接端口用來支持和主機之間的數(shù)據(jù)傳輸,其中的收發(fā)器 (Transceiver)提供總線的硬件接口,與收發(fā)器連接的電路形成串行接口引擎 (SIE), SIE 主要用來檢測和傳送信息包,編譯和譯碼總線上傳輸?shù)臄?shù)據(jù)格式,檢測和產(chǎn)生 CRC 等,大部分和 USB 相關(guān)的任務(wù)是通過 SIE 自動完成的。集線器控制器用來管理主機和中繼器之間的通信。雖然對于 USB設(shè)備層和功能層而言,都是通過 USB 總線接 口層具體實現(xiàn)的,但是在這兩層都有主機和設(shè)備之間的邏輯互連關(guān)系。成塊 (bulk)傳送 .但是所有的 endpoint0 都被用來傳送配置和控制信息。 USB HUB ( USB 集線器 ) USB HUB用于設(shè)備擴展連接,所有 USB DEVICE都連接在 USB HUB的端口上。 9 USB 體系結(jié)構(gòu) USB 物理總線的拓?fù)? 一個 USB 系統(tǒng)包含三類硬件設(shè)備 : USB HOST(USB 主機 )、 USB DEVICE(USB 設(shè)備 )、 USB HUB(USB 集線器 )。它們分別是 :紅色的 Vbus 導(dǎo)線、綠色的D+導(dǎo)線、白色的 D導(dǎo)線與黑色的 GND 導(dǎo)線。 USB 存在的問題 盡管在理論上, USB 可以實現(xiàn)高達(dá) 127 個設(shè)備的串列連接,但是在實際應(yīng)用中,也許串聯(lián) 3 到 4 個設(shè)備就可能導(dǎo)致一些設(shè)備失效。通過這種類似菊花鏈?zhǔn)降倪B接,一個 USB 控制器可以連多達(dá)127個外設(shè),而每個外設(shè)間距離 (線纜長度 )可達(dá) 5米。 速度夠快 速度性能是 USB 技術(shù)的突出特點之一。全速的 USB 帶寬 (12Mbps)將支持大范圍的多媒體和電話設(shè)備等。盡管個人計算機由 Apple I 發(fā)展到今天的 Pentium4,在計算性能和應(yīng)用領(lǐng)域方面提升了許多,串口與并口卻多少年來一成不變地位于主機箱的背后,在功能和結(jié)構(gòu)上沒有什么變化。 各模塊功能 ? 輸入模塊:這部分位于上位機。選用單片機價格便宜,但處理速度不快。 方案簡介 USB 控制器一般有兩種類型 :一種是微控制器 (MCU)集成在芯片里面的,如 Intel 的8X930AX, CYPRESS 的 EZUSB, SIEMENS 的 C541U 以及 MOTOLORA,National Semiconductors等公司的產(chǎn)品 。 USB 接口使用方便,它可以連接多個不同的設(shè)備,而過去的串口和并口只能接一個設(shè)備。首先簡要介紹 USB 接口的特點、硬件結(jié)構(gòu)、數(shù)據(jù)流傳送以及外設(shè)控制器的實現(xiàn)方式。然后介紹了 USB 口控制彩燈的設(shè)計,該設(shè)計主要包括輸入模塊、 USB 口通信模塊、彩燈控制模塊和主機顯示模塊四部分。速度快是 USB 技術(shù)的突出特點之一。另一種就是純粹的 USB 接口芯片,僅處理 USB 通信,如 PHILIPS 的PDIUSBDII(工 2C 接 口 )、 PDIUSBPIIA, PDIUSBDI2(并行接口 ), National Semiconductor的 USBNg602. USBN9603, USBN9604 等。使用 FPGA 或DSP處理速度很快,但由于邏輯復(fù)雜,開發(fā)風(fēng)險大,周期長且成本太高。根據(jù)系統(tǒng)的功能要求,利用 VC 開發(fā)環(huán)境進行編程,在PC 機中做一個操作界面,通過通信模塊對單片機進行操作從而實現(xiàn)彩燈的控制。 1994 年 Intel, Compaq, Digital、 IBM, Microsoft, NEC, North ern Tele 等世界上著名的七家計算機公司和通訊公司成立了 USB 論壇,于 1995 年 11月正式制定了 用串行總線 (UniversalSerialBus)規(guī)范,而把 USB 接口真正設(shè)計在主板上用了一年的時間。 目 前 USB 已得到了一個由 450 家技術(shù)公司組成的技術(shù)聯(lián)盟的支持,據(jù) Dataquest 報告 :1998 年配有 USB 的 PC 數(shù)量將增長 300%,達(dá)到 億臺。 USB1. 0 接口的最高傳輸率可達(dá)每秒 12Mb, USB2. 0將速 率從 12Mbps 提高至 120240Mbps。 USB 能智能識別 USB 鏈上外圍設(shè)備的插入或拆卸, USB為 PC 的外設(shè)擴充提供了一個很好的解決方案。而且,實際的 USB 產(chǎn)品中,只有鍵盤是有一個輸入口、一個輸出口的設(shè)備,其它的則只有一個輸入口而已,根本無法再 連接下一個 USB設(shè)備,所以當(dāng)前的 USB 應(yīng)用中,使用 Hub來連接多個 USB 設(shè)備是必需的。其中, Vbus 就是俗稱的火線,工作電壓為 +5V,最高電流為 500mA。它們之間通過 USB 總線相連構(gòu)成一個星型拓?fù)浣Y(jié)構(gòu)。一個 USB HOST總與一個根 HUB (USB ROOT HUB)相連。在 host 和設(shè)備的 endpoint 之間的連接叫作管道“ pipe” , endpoint0 叫做缺省 (default pipe)。 在功能層,是通過客戶軟件向主機提供設(shè)備的一個特定的功能,如鼠標(biāo)、鍵盤等,該層與 USB 協(xié)議無關(guān)。此外,每個 集線器都必須有一個事務(wù)轉(zhuǎn)換器,它具有轉(zhuǎn)換速度的功能,用來管理上游高速總線和下游低 /全速設(shè)備之間的通信。 程序存儲器保存供 CPU 執(zhí)行的代碼,這些代碼叫做固件,用來訪問 USB 端口和其它 I/0引腳以及其它工作,程序存儲器可能是 ROM, EPROM, EEPROM 等。 每一個設(shè)備只能有一個設(shè)備描述符,設(shè)備描述符包含整個設(shè)備的信息,例如設(shè)備所支持的 USB 規(guī)范的版本,廠商 ID 和產(chǎn)品 ID,以及設(shè)備支持的配置數(shù)目。 電源管理 USB 有 兩 種 電 源 分 配 模 式 : 總 線 供 電 模 式 (BusPowered) 和 獨 立 供 電 模 式(SelfPowered)。設(shè)備驅(qū)動程序就是通過這些接口和管道來與設(shè)備進行通信。除了端點 0(控制傳輸專用 )外,一個全速和高速設(shè)備最多可以有 30 個額外的端點,端點號碼從 115。系統(tǒng)軟件利用該管道來識別設(shè)備和配置要求,并對設(shè)備進行配置。在 USB 標(biāo)準(zhǔn) 版本中,規(guī)定了 4 種傳輸方式以適應(yīng)不同的傳輸需求:控制、同步、中斷和成塊傳輸。 同步傳輸 (isochronous)方式傳送 :同步傳輸提供了確定的帶寬和間隔時間(
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1