<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于PDIUSBD12的USB控制器的設計

基于PDIUSBD12的USB控制器的設計

作者: 時(shí)間:2013-10-26 來(lái)源:網(wǎng)絡(luò ) 收藏
USB是一種新型的通用串行總線(xiàn),它具有即插即用、可熱插拔和傳輸速率高的特點(diǎn),在工業(yè)界已經(jīng)獲得了廣泛的支持和應用。迄今為止,各種USB的外設已有上千種,除了象顯卡這種需要極高數據量和實(shí)時(shí)性要求特別高的控制設備,幾乎所有的PC外設都可以移植到USB上來(lái)。

  一般的USB設備都使用一片微控制器作為其核心部件,通過(guò)微控制器強火的控制和運算功能,開(kāi)發(fā)者可以很容易地實(shí)現USB設備的智能化。而嵌入式設備的實(shí)時(shí)、小巧等特性使得USB的協(xié)議棧和總線(xiàn)驅動(dòng)的開(kāi)發(fā)設計顯得尤為重要,因為它的好壞會(huì )直接對USB主機產(chǎn)生影響,從而會(huì )對嵌入式系統性能和穩定產(chǎn)生較大影響。本文以為USB接口芯片,以AT89C52為控制器,給出了一種USB接口的設計方法。

1 芯片介紹

  PHILIPS公司生產(chǎn)接口芯片是一款性?xún)r(jià)比很高的USB器件,它通常通過(guò)其高速并行接口進(jìn)行和微控制器通信,支持本地的DMA傳輸,支持3個(gè)USB端點(diǎn),其中一個(gè)端點(diǎn)128B容量,另外2個(gè)端點(diǎn)具有256B容量。該器件允許在眾多可用的微控制器中選擇最合適的系統控制器可,允許使用現存的體系結構并使設備軟件投資成本減少,是開(kāi)發(fā)低成本,高效率的USB外圍設備的最佳途徑。

PDIUSBD12特性:

  (1) 符合通用串行總線(xiàn)USB1.1版規范

  (2)高性能USB接口器件集成了SIE FIFO存儲器收發(fā)器以及電壓調整器

  (3) 符合大多數器件的分類(lèi)規格

  (4) 可與任何外部微控制器/微處理實(shí)現高速并行接口2M字節/秒

  (5) 完全自治的直接內存存取DMA操作

  (6) 集成320字節多結構FIFO存儲器

  (7) 主端點(diǎn)的雙緩沖配置增加了數據吞吐量并輕松實(shí)現實(shí)時(shí)數據傳輸

  (8) 在批量模式和同步模式下均可實(shí)現1M字節/秒的數據傳輸速率

  (9) 具有良好EMI特性的總線(xiàn)供電能力

  (10) 在掛起時(shí)可控制LazyClock輸出

  (11) 可通過(guò)軟件控制與USB的連接

  (12) 采用GoodLink技術(shù)的連接指示器,在通信時(shí)使LED閃爍

  (13) 可編程的時(shí)鐘頻率輸出

  (14) 符合ACPI OnNOW和USB電源管理的要求

  (15) 內部上電復位和低電壓復位電路

  (16) 有SO28和TSSOP28兩種封裝

  (17) 工業(yè)級操作溫度-40~+85℃

  (18) 高于8kV的在片靜電防護電路減少了額外元件的費用

  (19) 具有高錯誤恢復率(>99%)的全掃描設計確保了高品質(zhì)

  (20) 雙電源操作3.3V或擴展的5V電源,范圍為3.6~5.5V

  (21) 多中斷模式實(shí)現批量和同步傳輸

2 USB通信模塊的硬件電路的設計

  本系統設計采用PDIUSBD12和AT89C52配合完成通信設計。其連線(xiàn)圖如圖1所示。

  從上圖分析知道,AT89C52和PDIUSBD12采用總線(xiàn)方式連接,對AT89C52來(lái)說(shuō),PDIUSBD12是一個(gè)具有8位數據總線(xiàn)的存儲設備。PDIUSBD12獲取USB總線(xiàn)數據,并對數據作相應協(xié)議處理之后以中斷的方式通知AT89C52,MCU根據相應的中斷請求往PDIUSBD12發(fā)送不同請求數據,協(xié)同實(shí)現USB設備列舉和數據傳輸。當外設經(jīng)過(guò)PDIUSBD12連接到集線(xiàn)器后,集線(xiàn)器就會(huì )檢測外設的連接狀態(tài)并向主機報告,一但發(fā)現該設備,主機就會(huì )發(fā)送一系列請求給集線(xiàn)器,以使得集線(xiàn)器在主機和設備之間建立一個(gè)通信通道。然后主機試圖列舉該設備,發(fā)送設備描述符等請求可,列舉成功后,主機即可以從外設能夠被主機識別并能和主機進(jìn)行通信。之后,USB總線(xiàn)進(jìn)入數據傳輸階段。

3 USB固件程序的設計

  固件是FireWare的中文意思,它實(shí)際上足的程序文件,可以采用C語(yǔ)言或是匯編語(yǔ)言編寫(xiě)。它的操作方式與硬件聯(lián)系緊密,包括USB設備的連接、USB協(xié)議、中斷處理等,它不是單純的軟件,而是軟件和硬件的結合,開(kāi)發(fā)者需要對端口、中斷和硬件結構非常熟悉。在本系統中,當PDIUSBD12從USB接受到一個(gè)數據包,就對CPU產(chǎn)生一個(gè)中斷請求,CPU立即響應中斷。在ISR(中斷服務(wù)程序)中,固件讀取數據,并將數據保存值到循環(huán)數據緩沖區,隨后置柏應事件的標志位,CPU繼續前臺程序,檢測事件標志,執行完成相應的事件任務(wù)。固件程序一般放入MCU中,當把設備連接到主機上時(shí),上位機可以發(fā)現新設備,然后建立連接。因此,編寫(xiě)固件程序的一個(gè)最主要的目的就是讓W(xué)indows可以檢測和識別設備。

3.1 固件功能需求

  在本系統設計中,固件程序不僅要協(xié)助USB控制芯片PDIUSBD12完成USB通信的任務(wù),而且還要控制采集模塊和標準信號源的工作,具體包括:

  (1) 應答主機列舉設備的所有請求,完成設備的列舉和重列舉過(guò)程。其中包括用軟件來(lái)模擬USB設備的斷開(kāi)與從新連接,對接收到的設備包進(jìn)行分析和判斷,對主機的設備請求作出適當的響應工作,直到主機對設備的配制完成。

  (2) 初始化工作,這項工作有兩個(gè)方面,一是對采集模塊和信號源模塊的硬件進(jìn)行初始化工作;二是對USB芯片進(jìn)行初始化,設置一些特殊功能寄存器的初值,例如開(kāi)或關(guān)中斷,配制I/O端口等。

  (3) 當主機發(fā)送數據時(shí),要接收數據包并解析數據包的含義,根據事先約定的協(xié)議進(jìn)行相應的操作。對于采集模塊具體包括:寫(xiě)入波形數據,選擇頻率,選擇幅度,選擇波形類(lèi)型等。

  (4) 當主機要求回傳采集到的數據時(shí),根據設備狀態(tài)回傳數據,或者應答數據未準備好?;貍鲾祿?,自動(dòng)按照原先保存的設置初始化采集參數并啟動(dòng)下一次采集,從而使采集繼續下去。

  (5) 響應硬件產(chǎn)生的中斷,并作出相應的處理。

  與PDIUSBD12的通信主要是靠給PDIUSBD12發(fā)命令和數據來(lái)實(shí)現的。PDIUSBD12的命令字分為三種:初始化命令字、數據流命令字和通用命令字。PDIUSBD12數據手冊給出了各種命令的代碼和地址。單片機先給PDIUSBD12的命令地址發(fā)命令,根據不同命令的要求再發(fā)送或讀出不同的數據。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: PDIUSBD12 USB控制器 單片機

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>