新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > USB數據通信接口模塊的元器件選型

        USB數據通信接口模塊的元器件選型

        作者: 時間:2016-12-21 來源:網絡 收藏

        本模塊選用USB接口芯片為Philips公司生產的PDIUSBD 12芯片,由于設計的需要,下面對該芯片進行簡單 的描述。

        PDIUSBD 12是一款性價比很高的USB器件,它通常用作微控制器系統中實現與微控制器進行通信的高速通 用并行接口,它還支持本地的DMA傳輸。

        1.芯片工作方式

        PDIUSBD12可編程為單周期DMA或突發模式DMA。在單周期DMA中DMREQ在每單個應答后直到被DMACK N重新激 活之前保持無效。在突發模式DMA中DMREQ在器件中突發編程時一直保持有效。該過程持續到PDIUSBD12通過 E0T N接收到一個DMA終止信息,這時產生一個中斷指示本地CPU,DMA操作已經完成。

        在DMA讀操作時,DMREQ僅當緩沖區完全表示主機成功地發送了一個信息包到PDIUSBD12時才有效。由于具 有雙緩沖,配置主機可以在第一個緩沖區被讀出時對第二個緩沖區進行填充,這種并行的處理有效地增加了 數據吞吐量。當主機沒有完全填滿緩沖區的情況下(單向ISO配置時小于64或128字節),DMREQ會在緩沖區 的最后一個字節時無效,而不管當前的DMA突發計數。在更新了DMA突發計數的下一個包發送時,DMREQ再次 被激活。

        DMA的寫操作與之相似,當緩沖區未裝滿時,DMREQ一直有效;當緩沖區填滿時,下一個IN標志將信息包送入主機,當傳輸完成之后DMREQ變為無效。同樣,雙緩沖配置也改善了數據的吞吐 量。在非同步傳輸中(批量模式和中斷),在數據被發送到主機之前,緩沖區需要通過DMA寫操作完全裝滿 。惟一的例外是,在DMA傳輸結束時,EOT N接收的信號將會停止DMA寫操作并且在下一個IN標志置位時將緩 沖區的內容傳送到主機。

        在同步模式中,本地CPU和DMA控制器必須保證它們在一個USB幀(1ms)中能夠吞吐的最大信息包的規模。 DMACK N的激活將自動選擇主端點(端點2)而不管當前選擇的端點。PDIUSBD12的DMA操作可通過普通的I/O 對其他端點的存取實現交叉存取。DMA操作可通過以下方式終止:復位DMA,使能寄存器位EOT N和DMACK N或 者使能RD_N/WR_N。

        PDIUSBD12支持單地址模式中的DMA傳輸,也可以在DMA控制器的雙地址模式中工作。在單地址模式中,DMA 通過DREQ、DMACK_N、EOT_N、WR_N和RD_N控制線實現傳輸。在雙地址模式中,DMREQ、DMACK_N和EOT_N未用 ,取而代之的是CS_N、WR_N和RD_N控制信號,需要遵循PDIUSBD12的I/O模式傳輸協議。在讀周期中對DMAC信 號源進行訪問,在寫周期對目標進行訪問。傳輸需要兩個單獨的總線周期來儲存暫存在DMAC中的數據。

        這種實現USB接口的標準組件使得設計者可以在各種不同類型微控制器中選擇最合適的微控制器。這種靈 活性減小了開發的時間風險以及費用,通過使用己有的結構和減少固件上的投資從而用最快捷的方法實現最 經濟的USB外設的解決方案。

        此外它還集成了許多特性,包括SoftConnetTM、GoodLinkTM、可編程時鐘輸出、低頻晶振和終止寄存器集 合。所有這些特性都為系統顯著節約了成本,同時使USB功能在外設上的應用變得容易。

        2.芯片功能引腳

        PDIUSBD12的功能框圖如圖1所示。

        USB數據通信接口模塊的元器件選型0

        圖1 PDIUSBD12的功能框圖[page]

        PDIUSBD12引腳如圖2所示。

        USB數據通信接口模塊的元器件選型1

        圖2 PDIUSBD12的引腳配置圖

        PDIUSBD12的引腳描述如表1所示。

        表1 PDIVSBD12引腳描述

        USB數據通信接口模塊的元器件選型2

        USB數據通信接口模塊的元器件選型3



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 横山县| 阿合奇县| 海阳市| 西乡县| 边坝县| 钟山县| 霍林郭勒市| 祁门县| 临夏县| 阳曲县| 神农架林区| 吴桥县| 镇坪县| 靖远县| 永嘉县| 鹰潭市| 泰兴市| 海口市| 兰考县| 沅陵县| 凤山县| 密山市| 敦化市| 邳州市| 肃北| 南宁市| 湖州市| 武威市| 南城县| 寻甸| 清远市| 乳源| 沅江市| 顺平县| 阜阳市| 莱阳市| 巴中市| 玛多县| 油尖旺区| 虎林市| 抚顺市|