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

正文內(nèi)容

畢業(yè)設(shè)計(jì)]基于usb的高速數(shù)據(jù)采集卡的設(shè)計(jì)(完整版)

2026-01-04 20:43上一頁面

下一頁面
  

【正文】 輯總線的拓?fù)? 客戶軟件層與應(yīng)用層的關(guān)系 USB 系統(tǒng)的物理上、邏輯上的拓樸結(jié)構(gòu)反映了總線的共享性。圖中也標(biāo)出了一個(gè)復(fù)合設(shè)備。主機(jī)通過根 Hub 提供若干個(gè)連接點(diǎn)。 總線的拓?fù)浣Y(jié)構(gòu): USB 設(shè)備與主機(jī)之間的各種連接方式; 主機(jī)要 在功能部件使用前對其進(jìn)行設(shè)置。每個(gè)集線器的上游端口向主機(jī)方向進(jìn)行連接。 .同步數(shù)據(jù)傳輸 。如下圖所示 (圖中的 NODE 代表 USB 設(shè)備 ): 圖 21 USB 體系圖 圖 21 USB 體系圖 USB主機(jī)可以看作是一個(gè)硬件、固件和軟件的結(jié)合體,是 USB 通信的中心。 本文設(shè)計(jì)的基于 USB總線的數(shù)據(jù)采集系統(tǒng)正是充分地利用 了 USB 總線的上述優(yōu)點(diǎn),從而有效地解決了傳統(tǒng)數(shù)據(jù)采集系統(tǒng)的缺陷。標(biāo)準(zhǔn) USB電纜長度為 3米 (低速為 5米 )。 1020kb/s 鍵盤、鼠標(biāo)、游戲棒 低價(jià)格、熱插拔、易用性 中速 現(xiàn)在生產(chǎn)的 PC 機(jī)幾乎都配備了, USB接口, Microsoft 的 windows98, NT 以及 MacOS, Linux, FreeBSD等流行操作系統(tǒng)都增加了對 USB的支持。驅(qū)動(dòng)程序以 WDM為模型,以 DDK為開發(fā)工具,以 IRP為消息傳播載體,來 實(shí)現(xiàn)與 Windows系統(tǒng)底層核心機(jī)制相交互的功能。第一章 緒論 課題背景 隨著數(shù)字化的廣泛應(yīng)用,數(shù)據(jù)采集也越來越重要,傳統(tǒng)的外設(shè)與主機(jī)的通信口一般采用 ISA、 PCI、 C PCI、 1394等標(biāo)準(zhǔn),基于這些接口的產(chǎn)品,安裝麻煩,價(jià)格昂貴,并受計(jì)算機(jī)插槽數(shù)量、地址中斷資源限制,且可擴(kuò)展性差, USB的出現(xiàn),很好地解決了以上問題。 盡管 RS232 是一種十分成熟且應(yīng)用廣泛的通訊方式,但是隨著控制系統(tǒng)的 日益復(fù)雜,所要采集的量也會(huì)越來越多。 USB 的主要特點(diǎn)如下 : 1. 速度快。電話、音頻、壓縮視頻 通過 Hub或中繼器可以使外設(shè)距離達(dá)到 30米。很方便地就能夠?qū)崿F(xiàn)低成本、高可靠性、實(shí)時(shí)的數(shù)據(jù)采 集,適用于對瞬態(tài)信號進(jìn)行采集和處理。它控制和分時(shí)連接各個(gè)器件,是唯一可利用系統(tǒng)資源的部件。 .異步數(shù)據(jù)傳輸 。每個(gè)集線器的下游端口允許連接另外的集線器或功能部件,集線器可檢測每個(gè)下游端口的設(shè)備的安裝或拆卸,并可對下游端口的設(shè)備分配能源,每個(gè)下游端口都具有獨(dú)立的能 力,不論高速或低速設(shè)備均可連接。設(shè)置信息包括 USB 帶寬分配,選擇設(shè)備的設(shè) 置信息等。內(nèi)部層次關(guān)系:根據(jù)性能疊置, USB 的任務(wù)被分配到系統(tǒng)的每一個(gè)層次; 物理拓樸結(jié)構(gòu):描述 USB 系統(tǒng)中的各組成部分是如何連接起來的。為了防止環(huán)狀連接,采用星形連接來體現(xiàn)層次性,如圖 45。 總線邏輯拓樸結(jié)構(gòu)。操縱 USB應(yīng)用設(shè)備的客戶軟件只關(guān)心設(shè)備上與它相關(guān)的接口,客戶軟件必須通過USB 軟件編程接口來操縱應(yīng)用設(shè)備。在主機(jī)與設(shè)備之間的所有通信最終都是通過 USB 的電纜進(jìn)行,然而,在上層的水 平層之間存在邏輯的主機(jī) 設(shè)備信息流。從互連的角度看, USB設(shè)備和 USB 主機(jī)都提供類似的 USB 總線接口,如串行接口引擎。主機(jī)控制器驅(qū)動(dòng) 另外, USBD 為它的客戶提供一個(gè)容易被支配及配置的抽象的設(shè)備。 總而言之,主機(jī)可提供如下的功能: 1. USBD 概況 USBD 的客戶直接命令設(shè)備或從通道直接輸入和輸出數(shù)據(jù)流。 圖 26 USB 驅(qū)動(dòng)結(jié)構(gòu) (1) USBD 初始化 具體的 USBD 初始化工作是與操作系統(tǒng)有關(guān)的。標(biāo)準(zhǔn)通道 他們由 USBD 擁有和管理。狀態(tài)報(bào)告及錯(cuò)誤恢復(fù) 2. USBD 命令工具功能 USBD 命令工具允許客戶訪問設(shè)備。 ( 2)通道狀態(tài)控制 USBD 通道 狀態(tài)由兩部份組成 如果設(shè)備沒有被配置,則不返回描述符。 ( 9)向設(shè)備發(fā)送特殊的廠商定義的命令 客戶使用 USBDI 提供的該種機(jī)制向設(shè)備送出一到多個(gè)廠商定義的命令。 ( 12)設(shè)置描述符 對于支持該項(xiàng)行為的設(shè)備, USBDI允許升級設(shè) 備上的描述符或者增加新的描述符。 客戶為輸出的通 道提供一個(gè)滿的數(shù)據(jù)緩沖區(qū),并且在請求完成以后取得傳輸狀態(tài)信息。最上層的功能由串行總線設(shè)備提供,比如鼠標(biāo),或 ISDN 接口。 2. 地址分配 當(dāng) USB 設(shè)備連接以后,由主機(jī)負(fù)責(zé)給此設(shè)備分配一個(gè)唯一的地址,這個(gè)操作是在設(shè)備復(fù)位及端口使能操作以后。如果是這樣的話,設(shè)備必須支持 GetInterface(接口請求 )與 Set Interface(接口設(shè)置 )請求,來匯報(bào)及選擇指定的接口的設(shè)備選設(shè)置。視接到設(shè)備的端口電源負(fù)載能力而定, USB 設(shè)備在配置了以后可從 VBus 汲取達(dá) 5個(gè)單元的電量。像這樣的操作有:集線器端口的復(fù)位至少需 10ms 來完成。每個(gè) Setup包有 8個(gè)字節(jié)。而在低速模式時(shí)中可以使用不帶屏蔽或不是雙絞的線,但最長不能超過 30m。需要注意的是所有的數(shù)據(jù)傳輸都是由主機(jī)開始的,任何外設(shè)都無權(quán)開始一個(gè)傳輸。 數(shù)據(jù)傳遞機(jī)制 被傳遞的數(shù)據(jù) 圖 28 USB 數(shù)據(jù)流 4. 對于高速設(shè)備允許數(shù)據(jù)包最大容量為 8, 16, 32或 64字節(jié),對于低速設(shè)備只有 8 字節(jié)一種選擇; 5. 端點(diǎn)不能指定總線訪問的頻率和占用總線的時(shí)間, USB系統(tǒng)軟件會(huì)USB 設(shè)備 Client SW 管理一個(gè)接口 USB System SW 管理設(shè)備 USB USB 幀格式 接口 的數(shù)據(jù) 事務(wù) 主機(jī)控制器 SIE 應(yīng)用 接口的集合 接口X USB 邏輯設(shè) 備 端點(diǎn)的集合 端點(diǎn)0 USB 總線接口 SIE 做出限制; 6. 具有數(shù)據(jù)傳輸保證,在必要時(shí)可以重試。 控制傳送 IRP Setup 事務(wù) 數(shù)據(jù) 事務(wù) Status 事務(wù) 額外的 控制傳送 控制傳送首先是一個(gè) OUT方向的 Setup 事務(wù),然后是多個(gè) IN 方向或 OUT 方向的數(shù)據(jù)事務(wù),最后是一個(gè)與數(shù)據(jù)反向的 Status事務(wù)。開發(fā)人員可用 IDE 本身或其它編輯器編輯 C 或匯編源文件。 根據(jù) USB協(xié)議,任何傳輸都是由主機(jī)開始的。單片機(jī)先給 FX2的命令地址發(fā)命令,根據(jù)不同命令的要求再發(fā)送或讀出不同的數(shù)據(jù)。 接口的硬件設(shè)計(jì) EZUSB FX2 單片機(jī) CY7C68013 的特性介紹 Cypress Semiconductor 公司的 EZ- USB FX2 是世界上第一款集成 的微處理器,它集成了 收發(fā)器、 SIE(串行接口引擎)、增強(qiáng)的 8051 微控制器和可編程的外圍接口。 ● 集成標(biāo)準(zhǔn) 8051 內(nèi)核,且具有下列增強(qiáng)特性: ( 1) 可以達(dá)到 48MHz 時(shí)鐘; ( 2) 每條指令占四個(gè)時(shí)鐘周期; ( 3) 兩個(gè) USARTs; ( 4) 三個(gè)定時(shí) /計(jì)數(shù)器; ( 5) 擴(kuò)展的中斷系統(tǒng); ( 6) 兩個(gè)數(shù)據(jù)指針。低 128 和高 128 是通用 RAM,SFR 包括 FX2控制和狀態(tài)寄存器。EP1IN 和 EP1OUT 使用獨(dú)立的 64字節(jié)緩沖區(qū), FX2 固件可配置這些端點(diǎn)為 BULK、INTERRUPT 或 ISOCHRONOUS 傳輸方式,這兩個(gè)端點(diǎn)和 EP0 一樣只能被 固件訪問。 TI_0 USART0 Rx amp。程序主要分四個(gè)模塊 :初始化模塊、數(shù)據(jù)處理模塊、控制采集模塊和 USB 通信模塊。在 ISR 中固件將數(shù)據(jù)包從 FX2內(nèi)部緩沖區(qū)移到循環(huán)數(shù)據(jù)緩沖區(qū),并在隨后清零 FX2 的內(nèi)部緩沖區(qū),以使能接收新的數(shù)據(jù)包。 } ( device request) Bool DR_getdescription (void) //該函數(shù)在框架執(zhí)行 get description 設(shè)備請求之前被調(diào)用 { return (TRUE)。 return (TRUE)。 } bool dr_setfeature(void) //該函數(shù)在框架執(zhí)行 set feature 設(shè)備請求之前被調(diào)用 { return (TRUE)。 usbirq=bmsof。 ezusb_irq_clear()。 } void ISR_ep0ack(void) interrupt 0 //該函數(shù)在設(shè)備收到 x 數(shù)據(jù)輸入中斷時(shí),在中斷處理器內(nèi)部被調(diào)用 { } void ISR_epxack(void) interrupt 0 //這里 X 為 0, 1, 2, 4, 6, 8 //該函數(shù)在設(shè)備收到 x 數(shù)據(jù)輸出中斷時(shí),在中斷處理器內(nèi)部被調(diào)用 { } 第六章 設(shè)備驅(qū)動(dòng)及應(yīng)用程序的設(shè)計(jì) 固件下載 USB 設(shè)備驅(qū)動(dòng)程序 介紹 EZUSB 系列芯片都具有通過下載固件和重枚舉的方式來動(dòng)態(tài)改變設(shè)備特性的能力。 開發(fā)步驟 創(chuàng)建 EZLoader 驅(qū)動(dòng)程序需要的工具: 1 Windows DDK。 4 利用 Windows DDK 的 build 命令編譯創(chuàng)建該驅(qū)動(dòng)程序。 窗口是人機(jī)交互的接口,當(dāng)窗口接受到輸入請求的時(shí)候,就會(huì)把這一請求交給某一個(gè)函數(shù)進(jìn)行處理,而這個(gè)函數(shù)就是窗口消息處理函數(shù),它能夠決定當(dāng)一個(gè)消息 被接受到的時(shí)候采取什么行動(dòng)。其實(shí),作為一種通用型串行總線標(biāo)準(zhǔn), USB不僅僅適用于 IT 行業(yè),它的應(yīng)用空間很廣泛,完全可以使用在不同的領(lǐng)域和行業(yè)。 雖然本設(shè)計(jì)還有許多缺陷,不足以完成大批量數(shù)據(jù)的高速傳送,但是它己經(jīng)是 USB 數(shù)據(jù)采集系統(tǒng)的雛形。在窗口消 息處理函數(shù)中,我們可以利用 switch 和 case 結(jié)構(gòu)進(jìn)行控制 , 針對此消息作出我們想要的操作。要想從程序員的角度充分理解窗口的含義,那么對 WNDCLASS 這個(gè)數(shù)據(jù)結(jié)構(gòu)進(jìn)行充分的了解是必須的。 3 Intel HEX 記錄格式的文件轉(zhuǎn)換為 C 文件的工具 —— 。第 1 種方法是使用 EZUSB 控制面板通過 USB 口下載固件 (Intel Hex 格式的文 件 );第 2 種方式是使用 Keil 調(diào)試監(jiān)控程序 (Debug Monitor)通過 RS232 串口下載固件。 } void ISR_highspeed(void) interrupt 0 //該函數(shù)在設(shè)備收到高速中斷時(shí),在中斷處理器內(nèi)部被調(diào)用 { if (ezusb_highspeed()) { pconfigdscr=phighspeedconfigdscr。 ezusb_irq_clear()。 } 中斷( USB interrupt) void ISR_sudav(void) interrupt 0 //該函數(shù)在設(shè)備收到 setup data available 中斷時(shí),在中斷處理器內(nèi)部被調(diào)用 { gotsud=true。 EP0BCH=0。 return (TRUE)。然后返回到主循環(huán)檢查循環(huán)緩沖區(qū)內(nèi)是否有新的數(shù)據(jù),若有就對其進(jìn)行處理,否則開始其它的前臺任務(wù)。這三個(gè)模塊都比較簡單。 TI_1 USART1 Rx amp。 EP EP EP6 和 EP8 是高帶寬、大緩沖區(qū)。盡管 Scratch RAM 從物理上來說位于片內(nèi),但是通過固件可以把它作為外部 RAM 一樣來尋址。 USB 啟動(dòng)方式和枚舉 上電時(shí),內(nèi)部邏輯會(huì)檢查連接到 I2C 總線上的 EEPROM 中的第一個(gè)字節(jié)( 0xC0 或 0xC2)。在 FX2 中,智能 SIE 可以硬件處理許多 和 協(xié)議,從而減少了開發(fā)時(shí)間和確保了 USB 的兼容性。 第 四 章 USB 數(shù)據(jù)采集系統(tǒng)的硬件設(shè)計(jì) 系統(tǒng)的模擬開關(guān)、 A/D 轉(zhuǎn)換器均采用傳統(tǒng)的設(shè)計(jì)方法,在此不多做介紹。主機(jī)首先要發(fā)令牌包給 USB設(shè)備, FX2接收到令牌包后就給單片機(jī)發(fā)中斷。目標(biāo)文件可由 LIB51 創(chuàng)建生成庫文件,也可以與庫文件一起經(jīng)L51連接定位生成絕對目標(biāo)文件 (.ABS)。 同步傳送 IRP 事務(wù) 事務(wù) 事務(wù) 批傳送 事務(wù) 事務(wù) 事務(wù) 一個(gè)批傳送是一個(gè)或多個(gè) IN/OUT方向的數(shù)據(jù)事務(wù)。 中斷傳輸 (Interrupt Transfer) 1. 用于非周期的自然發(fā)生的數(shù)據(jù)量很小的信息的傳輸,如鍵盤、鼠標(biāo)等; 2. 數(shù)據(jù)沒有 USB 定義的結(jié)構(gòu)數(shù)據(jù)流管道; 3. 只有輸入這一種傳輸方式,即外設(shè)到主機(jī); 4. 對于高速設(shè)備允許數(shù)據(jù)包,最大容量為小于或等于 64字節(jié),對于低速設(shè)備只能小于或等于 8字節(jié); 5.
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1