USB接口是指分布在計算機(jī)的后面或者兩�(cè)的多個通用串行總線接口。通過這些USB接口,您可以將從鼠標(biāo)到打印機(jī)的各種設(shè)備連接到計算機(jī)�,既方便又快��
1、可以熱插拔。這就讓用戶在使用外接�(shè)備時,不需要重�(fù)“關(guān)�(jī)à將并口或串口電纜接上à再開�(jī)”這樣的動�,而是直接在PC開機(jī)�,就可以將USB電纜插上使用�
2、攜帶方�。USB�(shè)備大多以“小、輕、薄”見�,對用戶來說,同�20G的硬�,USB硬盤比IDE硬盤要輕一半的重量,在想要隨身攜帶大量�(shù)�(jù)�,當(dāng)然USB硬盤會是首要之選了�
3、標(biāo)�(zhǔn)�(tǒng)一。大家常見的是IDE接口的硬�,串口的鼠標(biāo)鍵盤,并口的打印�(jī)掃描儀,可是有了USB之后,這些�(yīng)用外�(shè)�(tǒng)�(tǒng)可以用同樣的�(biāo)�(zhǔn)與PC連接,這時就有了USB硬盤、USB鼠標(biāo)、USB打印�(jī),等��
4、可以連接多個設(shè)�。USB在PC上往往具有多個接�,可以同時連接幾個設(shè)�,如果接上一個有4個端口的USB HUB時,就可以再連上4個USB�(shè)�,以此類推,盡可以連下�,將你家的設(shè)備都同時連在一臺PC上而不會有任何問題(注:可連接�127個設(shè)�)�
下面貼一張常見的USB接口圖片
從左往右依次為:miniUSB公口(A型插�)、miniUSB公口(B型插�)、USB公口(B�)、USB母口(A型插�)、USB公口(A型插�)
以下是引腳定�
其中ID腳在OTG功能中才使用。由于Mini-USB接口分Mini-A、B和AB接口�
如果你的系統(tǒng)僅僅是用做Slave,那么就使用B接口�
系統(tǒng)控制器會判斷ID腳的電平判斷是什么樣的設(shè)備插�,如果是高電�,則是B接頭插入,此時系�(tǒng)就做主模�(master mode)
如果ID為低,則是A接口插入,然后系�(tǒng)就會使用HNP對話�(xié)議來決定哪個做Master,哪個做Slave�
這些說明為技�(shù)人員總結(jié)�,僅供參��
我們手�(jī)上一般用的都是B型Mini-USB�,如圖:帶Mini-USB接口的USB��
USB接口電路采用DIUSBD12芯片,這是一款性能價格比很高的USB器件,通常用于皋于ARM并與ARM通用接口�(jìn)行通信,同時支持本地DMA傳輸。該器件采用模塊化的方法實現(xiàn)一個USB接口,允許使用現(xiàn)存的體系�(jié)�(gòu)并使固件投資減到最小。這種靈活性通過使用己有的結(jié)�(gòu)和減少固件上的投�,減少了開發(fā)時間、風(fēng)險和成本,是開發(fā)低成本且高效的USB外圍�(shè)備解決方案的一種有效途徑�
PDIUSBD12�(nèi)置的串行接口引擎SIE,實�(xiàn)了全部的USB�(xié)議層,完全由硬件實現(xiàn)而不需要固件的參與。該模塊的功能包括:同步模式的識�、并行/串行�(zhuǎn)�、位填充/解除填�、CRC校驗/產(chǎn)�、PID校驗/產(chǎn)生、地址識別和握手評估/�(chǎn)��
PDIUSBD12的內(nèi)部結(jié)�(gòu)如圖所��
� PDIUSBD12的內(nèi)部結(jié)�(gòu)框圖
其中�
·模擬收發(fā)器:集成的收�(fā)器接口可通過終端電阻直接與USB相連�
·電壓�(diào)整器:片�(nèi)集成了一�3�3V的調(diào)整器用于模擬收發(fā)器的供電�
·PLL:片上集成了6MHZ�48MHZ時鐘乘法,允許使用低成本�6MHZ晶振,電磁干擾也由于使用低頻晶振而降��
·位時鐘恢�(fù):位時鐘恢復(fù)電路采用4倍過采樣原理,從輸入的USB�(shù)�(jù)流中恢復(fù)時鐘,能跟蹤USB�(guī)定范圍內(nèi)的抖動和頻漂�
·Soft-Connect:高速設(shè)備與USB的連接是通過1�5kΩ上拉電阻將D+實�(xiàn)的�1.5kQ上拉電阻集成在USB芯片�(nèi),默�(rèn)狀�(tài)下不與Voc相�。連接的建立通過ARM�(fā)送命令來實現(xiàn),這就允許ARM在決定與USB建立連接之前完成初始化時序�
USB總線連接可以重新初始化而不需要拔出電��
·Good-Link:提供良好的USB連接指示。在枚舉中,LED指示燈根�(jù)通信的狀況間歇閃�。當(dāng)USB成功地枚舉和配置后,LED指示燈將一直點(diǎn)�。在USB的數(shù)�(jù)傳輸過程�,LED將閃�;在掛起期間,LED熄滅。這種特性為USB器件、集線器和USB通信狀�(tài)提供了用戶友好的指示。作為一個診斷工�,它對隔離故障的�(shè)備很有用,降低了�(xiàn)場支持和熱線的成��
·存儲空間管理單元(MMU)和集成RAM:在�12Mb/s的速率傳輸并與ARM相連時,MMU和集成RAM作為USB之間速度差異的緩沖區(qū)。這∷就允許ARM以它 自己的速率對USB信息包�(jìn)行讀��
·并行和DMA接口:對ARM處理器而言,PDIUSBD12看起來就像一個帶8位數(shù)�(jù)總線和一個地址位(占用2個位置)的存儲器�。它支持�(dú)立的和分時復(fù)用的地址和數(shù)�(jù)總線,還支持主端�(diǎn)與本地共享RAM之間直接讀取的DMA傳輸,以及單周期和突�(fā)模式的DMA傳輸�
詳細(xì)的USB的電器特性的相關(guān)�(nèi)容是在USB�(guī)�。而在�,僅列出用戶所需注意的一些特�。如�1所�,呈�(xiàn)了在全速設(shè)備與PC主機(jī)之間電氣特性的連接。除了Vcc(+5 V)與接地線外,需要特別注意的是D+與D-的差動數(shù)�(jù)信號�。首�,在連接至USB收發(fā)器之前必須先串接9O�44Ω的電�。而后根據(jù)不同的USB�(shè)各的傳輸速度(全速或低速),改變在�(shè)各端的提升電�1�5×�1±5%)kΩ的位置。這個提升電�,也可視為設(shè)各端電阻。對于全速設(shè)備(12 Mbps�,就將提升電阻接至D+信號線與電源之間的位置。如果是低速設(shè)各(1�5 Mbps�,就將提升電阻接到D一信號線與電源之間的位置,如圖1�15所�。這個電壓源的范圍為3�0�3�6 V。但對于USB 2�0的高速傳�,這個提升電阻被省略,改以自動切換的方式。,D+與D-兩條信號線在PC主機(jī)的根集線器或集線器端同時接上15 kΩ的下拉電阻并連至接地�。用戶也可視這些下拉電阻為集線器端電��
�1 全速設(shè)備與PC主機(jī)之間電氣特性的連接�
�2 低速設(shè)備與PC主機(jī)之間電氣特性的連接�
整個PC主機(jī)與設(shè)備之間的電氣特性是如何操作的呢?首先,在設(shè)備未連接至PC主機(jī)的根集線器或集線器的連接端口�,D+與D-兩條信號線因為下拉電阻的�(guān)�,幾乎都視為接地,但是若有一個設(shè)各剛連接上時,由于提升電阻(1�5 kΩ)與下拉電阻�15 kΩ)形成了一個分壓器;因此其中有一條數(shù)�(jù)信號線(D+或D-)的電位將被提升至電壓Vdc�90%左�。此�,當(dāng)集線器檢測到其中的一條數(shù)�(jù)信號線趨�3 Vcc,而另外一條仍維持接地狀�(tài)時就可確定有一�(shè)備已連接上。PC主機(jī)會不斷地每隔一般時間來查詢根集線器,檢查D+與D一的電位變�,以了解�(shè)備的連接狀�(tài)�
USB的英文全稱為Universal Serial Bus,中文含義是通用串行總線,它是一種快速的,雙向的,同步傳�?shù)牧畠r的并可以�(jìn)行熱拔插的串行接�。USB接口使用方便,它可以連接多個不同的�(shè)備,而過去的串口和并口只能接一個設(shè)�。速度快是USB技�(shù)的突出特�(diǎn)之一。全速USB接口的傳輸率可達(dá)12Mb/s,比串口快了整�100倍,而執(zhí)行USB2.0�(biāo)�(zhǔn)的高速USB接口速率更是�(dá)到了480Mb/s.這使得高分辨�、真彩色的大容量圖象的實時傳送成為可能。USB接口支持多個不同設(shè)備的串列連接,一個USB接口理論上可以連接127個USB�(shè)備。連接方式也十分靈�,既可以使用串行連接,也可以使用集線�(Hub)把多個設(shè)備連接在一�,再同PC�(jī)的USB接口相接。普通的使用串口、并口的�(shè)備都需要單�(dú)的供電系�(tǒng),而USB�(shè)備則不需要。正是由于USB的這些特點(diǎn),使其獲得了廣泛的應(yīng)�。到目前為止,USB已經(jīng)在PC�(jī)的多種外�(shè)上得到應(yīng)�,包括掃描儀,數(shù)碼相�(jī),數(shù)碼攝像機(jī)、音頻系�(tǒng)、顯示器、輸入設(shè)備等。對于廣大的工程�(shè)計人員來�,USB是設(shè)計外�(shè)接口時理想的總線�
對于USB接口芯片,通常分為普通和DMA(直接存儲器存�)兩種工作模式。相對于普通模式,DMA�(shù)�(jù)傳輸模式傳輸速率更快,更適合于視頻數(shù)字信號等高速、實時信號的傳�。但遺憾的是,國�(nèi)市場上提供的各種USB接口電路板大部分僅工作在普通模�,缺少對DMA工作模式的支�,不能直接用于象CCD�(shù)�?jǐn)z像機(jī)USB接口這樣的需要工作在DMA模式下的�(shè)計開�(fā)。為了解決這個問�,我們對USB的原理�(jìn)行了研究,嘗試著利用51單片�(jī)�(jié)合PHILIPS公司的PDIUSBD12帶并行總線的USB接口器件�(shè)計帶DMA工作模式的可供視頻信號傳�?shù)亩喙δ躑SB接口電路,現(xiàn)已設(shè)計出了完整的硬件電路�
1、USB概述
由于多媒體技�(shù)的發(fā)展對外設(shè)與主�(jī)之間的數(shù)�(jù)傳輸率有了更高的需�,因�,USB總線技�(shù)�(yīng)�(yùn)而生。USB(Universal Serial Bus)翻譯為中文就是通用串行總線,是由Conpaq、DEC、IBM、Inter、Microsoft、NEC和Northen Telecom等公司為簡化PC與外�(shè)之間的互連而共同研究開�(fā)的一種免�(fèi)的標(biāo)�(zhǔn)化連接器,它支持各種PC與外�(shè)之間的連接,還可實�(xiàn)�(shù)字多媒體集成。現(xiàn)在生�(chǎn)的PC幾乎都配備了USB接口,Microsoft 的Windows98、NT以及MacOS、Linux、FreeBSD等流行操作系�(tǒng)都增加了� USB的支��
USB的主要優(yōu)�(diǎn)�
l 使用方便。連接外設(shè)不必再打開機(jī)�;允許外設(shè)熱插�,而不必關(guān)閉主�(jī)電源�
l 速度�。USB支持三種�(shè)備傳輸速率�1.5 Mb/s(低速設(shè)�)�12 Mb/s(中速設(shè)�)�480 Mb/s(高速設(shè)�)�
l �(dú)立供�。USB接口提供了內(nèi)置電��
l 連接靈活。一個USB口理論上可以連接127個USB�(shè)�。連接的方式也十分靈活,既可以使用 串行連接,也可以使用集線器Hub,把多個設(shè)備連接在一�,再同PC�(jī)的USB口相��
l 成本�。為了把外設(shè)連接到PC�,USB提供了一種低成本的解決方��
�(xiàn)在滿足USB要求的外�(shè)有:�(diào)制解�(diào)�,鍵盤,鼠標(biāo),光�(qū),游戲手�,軟�(qū),掃描儀,音箱等。USB總線�(biāo)�(zhǔn)�1.1版升級到2.0版后,傳輸率�12Mbps增加到了480Mbps,更換介�(zhì)后連接距離由原來的5米增加到近百�?;谶@�(diǎn),USB也可以做生產(chǎn)ISDN以及基于視頻的產(chǎn)�。USB 總線�(jié)�(gòu)簡單,信號定義僅�2條電源線�2條信號線組成�
2、USB�(jié)�(gòu)與工作原�
一個USB系統(tǒng)可以從三個方面加以描�
(1)USB互聯(lián)�
(2)USB�(shè)備�
(3)USB主機(jī)�
USB互聯(lián)是指一個USB�(shè)備與USB主機(jī)相聯(lián)并和其通信的方�,它包括:
(1)總線�?fù)浣Y(jié)�(gòu):USB主機(jī)和USB�(shè)備的連接模型�
(2)層間�(guān)系:USB在系�(tǒng)中的每一層都要完成一定的任務(wù)�
(3)�(shù)�(jù)流模型:USB系統(tǒng)中信源和信息之間的數(shù)�(jù)傳送方��
(4)任務(wù)�(guī)劃:USB提供可以共享的互�(lián)�(jī)制。通過�(guī)劃對互連機(jī)制的訪問,可以支
持同步數(shù)�(jù)傳輸�
下面簡要討論USB硬件�(jié)�(gòu)和數(shù)�(jù)流傳��
2.1 USB硬件�(jié)�(gòu)
一個USB系統(tǒng)包含三類硬件�(shè)�: USB主機(jī)(USB HOST)� USB�(shè)�(USB DEVICE)、USB集線�(USB HUB)。參見圖2-1�
(1)USB HOST
在一個USB系統(tǒng)�,當(dāng)且僅�(dāng)有一個USB HOST時,USB HOST有以下功�:
� 管理USB系統(tǒng);
� 每毫秒產(chǎn)生一幀�(shù)�(jù);
� �(fā)送配置請求對USB�(shè)備�(jìn)行配置操�;
� 對總線上的錯誤�(jìn)行管理和恢復(fù)�
(2)USB DEVICE
在一個USB系統(tǒng)�,USB DEVICE和USB HUB總數(shù)不能超過127�。USB DEVICE接收USB總線上的所有數(shù)�(jù)�,通過�(shù)�(jù)包的地址域來判斷是不是發(fā)給自己的�(shù)�(jù)包:若地址不符,則簡單地丟棄該�(shù)�(jù)�;若地址相符,則通過響應(yīng)USB HOST的數(shù)�(jù)包與USB HOST�(jìn)行數(shù)�(jù)傳輸�
(3)USB HUB
USB HUB用于�(shè)備擴(kuò)展連接,所有USB DEVICE都連接在USB HUB的端口上。一個USB HOST總與一個根HUB (USB ROOT HUB)相�。USB HUB為其每個端口提�100mA電流供設(shè)備使�。同時,USB HUB可以通過端口的電氣變化診斷出�(shè)備的插拔操作,并通過響應(yīng)USB HOST的數(shù)�(jù)包把端口狀�(tài)匯報給USB HOST。一般來�,USB�(shè)備與USB HUB間的連線長度不超�5m,USB系統(tǒng)的級�(lián)不能超過5�(包括ROOT HUB)�
USB總線最多可支持127個USB外設(shè)連接到計算機(jī)系統(tǒng)。USB的拓?fù)涫菢湫谓Y(jié)�(gòu),有1個USB根集線器(root hub),下面還可有若干集線��1個集線器下面可接若干USB接口。USB線纜包括4條線:Vbus(USB電源)、D+(�(shù)�(jù))、D-(�(shù)�(jù))� Gnd(USB�)。線纜長度不超過5m。USB1.1的傳輸速率�12Mb/s(低速外�(shè)的標(biāo)�(zhǔn)速率�1.5Mb/s,高速外�(shè)的標(biāo)�(zhǔn)速率� 12Mb/s)。圖2-1是典型的USB功能器件�(jié)�(gòu)框圖,圖2-3是高速外�(shè)的USB線纜與電阻的連接�。圖2-3中:FS為全�(高�);LS為低�;R1=15kΩ,R2=15kΩ。USB外設(shè)可以采用計算�(jī)里的電源(+5V�500mA),也可外接USB電源。在所有的USB信道之間動態(tài)地分配帶寬是USB總線的特征之一,這大大地提高了USB帶寬的利用率。當(dāng)一臺USB外設(shè)長時�(3ms以上)不使用時,就處于掛起狀�(tài),這時只消�0.5mA 電流。按USB1.0/1.1�(biāo)�(zhǔn),USB的標(biāo)�(zhǔn)脈沖時鐘頻率�12MHz,而其總線時脈沖時鐘為1ms(1kHz),即每隔1ms,USB器件�(yīng)� USB線纜�(chǎn)�1個時鐘脈沖序列。這個脈沖系列稱為幀開始�(shù)�(jù)�(SOF)。高速外�(shè)長度為每幀12000bit(�),而低速外�(shè)長度只有每幀 1500bit�1個USB�(shù)�(jù)包可包含0~1023字節(jié)�(shù)�(jù)。每個數(shù)�(jù)包的傳送都�1個同步字段開始�
2.2 USB的數(shù)�(jù)流傳�
主控制器�(fù)�(zé)主機(jī)和USB�(shè)備間�(shù)�(jù)流的傳輸。這些傳輸�(shù)�(jù)被當(dāng)作連續(xù)的比特流。每個設(shè)備提供了一個或多個可以與客戶程序通信的接�,每個接口由0個或多個管道組�,它們分別獨(dú)立地在客戶程序和�(shè)備的特定終端間傳輸數(shù)�(jù)。USBD為主�(jī)軟件的現(xiàn)實需求建立了接口和管�,當(dāng)提出配置請求�,主控制器根�(jù)主機(jī)軟件提供的參�(shù)提供服務(wù)�
USB支持四種基本的數(shù)�(jù)傳輸模式:控制傳輸,等時傳輸,中斷傳輸及�(shù)�(jù)塊傳�。每種傳輸模式應(yīng)用到具有相同名字的終�,則具有不同的性質(zhì)�
控制傳輸類型:支持外�(shè)與主�(jī)之間的控�,狀�(tài),配置等信息的傳�,為外設(shè)與主�(jī)之間提供一個控制通道。每種外�(shè)都支持控制傳輸類�,這樣主機(jī)與外�(shè)之間就可以傳送配置和命令/狀�(tài)信息。等時傳輸類型:支持有周期�,有限的時延和帶寬且�(shù)�(jù)傳輸速率不變的外�(shè)與主�(jī)間的�(shù)�(jù)傳輸。該類型無差錯校驗,故不能保證正確的�(shù)�(jù)傳輸,支持像計算�(jī)-電話集成系統(tǒng)(CTI)和音頻系�(tǒng)與主�(jī)的數(shù)�(jù)傳輸�
中斷傳輸類型:支持像游戲手柄,鼠�(biāo)和鍵盤等輸入�(shè)�,這些�(shè)備與主機(jī)間數(shù)�(jù)傳輸量小,無周期�,但對響�(yīng)時間敏感,要求馬上響�(yīng)�
�(shù)�(jù)塊傳輸類型:支持打印�(jī),掃描儀,數(shù)碼相�(jī)等外�(shè),這些外設(shè)與主�(jī)間傳�?shù)�?shù)�(jù)量大,USB在滿足帶寬的情況下才�(jìn)行該類型的數(shù)�(jù)傳輸�
USB采用分塊帶寬分配方案,若外設(shè)超過�(dāng)前帶寬分配或潛在的要�,則不能�(jìn)入該�(shè)�。同步和中斷傳輸類型的終端保留帶寬,并保證數(shù)�(jù)按一定的速率傳�。集中和控制終端按可用的帶寬來傳輸傳輸數(shù)�(jù)�
3、USB外設(shè)控制器的兩種實現(xiàn)方式
USB芯片在外�(shè)�(lǐng)域的�(yīng)用面很廣。USB外設(shè)控制芯片通常包括USB收發(fā)器、串行接口引�(SIE)、USB控制器和外設(shè)功能等四個模�(SIE 主要以硬件方式處理大多數(shù)USB�(xié)�,USB控制器負(fù)�(zé)與PC交互通信信息)。USB控制器一般有兩種類型:一種是MCU集成在芯片里面的,如 Intel�8X930AX、CYPRESS的EZ-USB、SIEMENS的C541U以及 MOTOLORA、National Semiconductors等公司的�(chǎn)�;另一種就是純粹的USB接口芯片,僅處理 USB通信,如PHILIPS的PDIUSBD11(I2C接口)� PDIUSBP11A、PDIUSBD12(并行接口),National Semiconductor的USBN9602、USBN9603、USBN9*等�
集成MCU的USB控制芯片�(yōu)�(diǎn)是CPU與控制器在同一片芯片里,CPU只需要訪問一系列寄存器和存儲器,便可實現(xiàn)USB口的�(shù)�(jù)傳輸,限度的�(fā)� USB高速的特點(diǎn)。而且簡化了程序的�(shè)�,極大地降低了USB外設(shè)的開�(fā)難度。缺�(diǎn)是靈活性不夠高,開�(fā)成本較大�
純粹的USB接口芯片的優(yōu)�(diǎn)是系�(tǒng)組成靈活,可根據(jù)不同的系�(tǒng)需求,搭配不同的MCU,具有較高的性能價格�。但因為USB控制器是通過串行口或并行口與MCU連接,在傳輸速度方面和開�(fā)難度方面不如集成了MCU的控制芯��
不同的實�(xiàn)方式在設(shè)計開銷、上市時�、元器件開銷和引腳數(shù)方面各有�(yōu)�,選擇不同的方案意味著在以上各項指標(biāo)中�(jìn)行取��
本文主要介紹PHILIPS公司的PDIUSBD12器件。該芯片是一款性價比很高的USB器件,它通常用作微控制器系統(tǒng)中實�(xiàn)與微控制器�(jìn)行通信的高速通用并行接口,設(shè)計者可根據(jù)需要選擇合適的微控制器,靈活性較�,適用于開發(fā)低成本且高效的USB外圍�(shè)備�
4、應(yīng)用:帶DMA視頻信號接口功能的USB接口電路�(shè)�
目前,市場上提供的USB接口電路板很�,但大部分僅使用普通的工作模式,缺少對DMA工作模式的支�,不能直接用于象CCD�(shù)�?jǐn)z像機(jī)USB接口這樣的需要工作在DMA模式下的�(shè)計開�(fā)�
所謂的DMA傳送方�,全名叫直接存儲器存�(Direct Memory Access)�(shù)�(jù)傳送方式,是指采用專門的硬�(DMA控制�)來執(zhí)行數(shù)�(jù)傳�。DMA控制器可以從CPU那里接管系統(tǒng)總線的控制權(quán),并且由本身�(fā)出存儲器地址信號以及訪問存儲器和I/O�(shè)備的讀/寫脈沖等控制信號,使得數(shù)�(jù)通過總線,直接在存儲器和I/O�(shè)備之�(或I/O�(shè)備與存儲器之�,存儲器與存儲器之間)�(jìn)行傳送。在DMA接管總線�(zhí)行數(shù)�(jù)傳送過程中,CPU暫停工作�
由于DMA傳送方式僅僅在需要占用總線傳送數(shù)�(jù)時才暫停CPU的操�,CPU的工作效率極�,傳輸數(shù)�(jù)可由硬件自身控制,大大提高了傳送速率,十分適合于高速數(shù)�(jù)的采��
下面就介紹一下我們利�51單片�(jī)�(jié)合PHILIPS公司的PDIUSBD12帶并行總線的USB接口器件�(shè)計帶DMA工作模式的可供視頻信號傳�?shù)亩喙δ躑SB接口電路�
4.1 系統(tǒng)概況
該系�(tǒng)主要實現(xiàn)USB的接口功能,通過�,外�(shè)與計算機(jī)之間可以實現(xiàn)USB方式的連接。外�(shè)接口1用于DMA方式�(shù)�(jù)的傳�,可與CCD攝像頭等�(shè)備相�。外�(shè)接口2采用了標(biāo)�(zhǔn)的IDE接口方式,可直接于硬盤等大容量存儲器相連,傳輸海量�(shù)�(jù),也可以通過接口�(zhuǎn)�,與其他功能的外�(shè)相�,具有較廣的適用��
兩種接口方案:普通模式和DMA模式�
(1)方案一:普通模�
�4-2是該USB接口電路普通模式的框圖,該框圖說明了連接外設(shè)的一種簡單模式,所有寄存器和數(shù)�(jù)的讀寫都是通過8051 的I/O 來仿真的,因此數(shù)�(jù)吞吐速率較低,適合間歇式�(shù)�(jù)的傳��
(2)方案二:DMA模式
�(shù)�(jù)傳送以DMA方式,直接由D12傳送到計算�(jī)�,MCU只完成DMA的初始化工作,傳輸速度�,適合于視頻�(shù)字信號等高速實時傳送�
系統(tǒng)詳細(xì)的電原理圖和電路板結(jié)�(gòu)圖參見附��
4.2 系統(tǒng)主要部件及電�
該系�(tǒng)主要�89C51控制電路、PDIUSBD12 接口電路、數(shù)�(jù)選擇電路、串并轉(zhuǎn)換電路、掛起復(fù)位電�、IDE�(kuò)展接口電路等組成,下面分述各部分的功能和特點(diǎn)�
4.2.1 89C51控制電路
89C51是該接口電路的控制核心,其中P0,P2口用�16位數(shù)�(jù)I/O�,P1,P3口用做控��
89C51的晶振頻率為24MHz,每個機(jī)器周期為0.5us.
4.2.2 PDIUSBD12 接口電路
PDIUSBD12是一個性能�(yōu)化的USB器件,通常用于基于微控制器的系�(tǒng)并與微控制器通過高速通用并行接口�(jìn)行通信,也支持本地DMA傳輸。該器件采用模塊化的方法實現(xiàn)一� USB接口,允許在眾多可用的微控制器中選擇最合適的作為系�(tǒng)微控制器,允許使用現(xiàn)存的體系�(jié)�(gòu)并使固件投資減到最小。這種靈活性減少了開發(fā)時間、風(fēng)險和成本,是開發(fā)低成本且高效的USB外圍�(shè)備解決方案的一種最快途徑� PDIUSBD12完全符合USB1.1�(guī)�,也能適�(yīng)大多�(shù)�(shè)備類�(guī)范的�(shè)�,如成像�、大容量存儲�、通信�、打印類和人工輸入設(shè)備等,因�,PDIUSBD12 非常適合做很多外圍設(shè)�,如打印�(jī)、掃描儀、外部大容量存儲�( Zip�(qū)動器)和數(shù)碼相�(jī)�?,F(xiàn)在用SCSI實現(xiàn)的很多設(shè)備如果用 USB來實�(xiàn)可以直接降低成本�
PDIUSBD12掛起時的低功耗以及LazyClock輸出符合ACPI 、OnNOW和USB電源管理�(shè)備的要求。低功耗工作允許實�(xiàn)總線供電的外圍設(shè)��
PDIUSBD12還集成了像SoftConnect、GoodLink、可編程時鐘輸出、低頻晶振和終端電阻等特性。所有這些特性都能在系統(tǒng)實現(xiàn)時節(jié)省成�,同時在外圍�(shè)備上很容易實�(xiàn)更的 USB功能�
(1)�(nèi)部結(jié)�(gòu)
?�?模擬收發(fā)器。集成的收發(fā)器直接通過終端電阻與USB電纜接口�
� 電壓�(diào)整器。片上集成的1�3.3 V電壓�(diào)整器為模擬收�(fā)器供�,也提供連接到外�1.5 kΩ上拉電阻的輸出電壓。作為選�,PDIUSBD12提供集成1.5 kΩ上拉電阻的SoftConnect技�(shù)�
?�?PLL。片上集�1�*8 MHz的倍頻PLL(鎖相�(huán)),允許使�6 MHz的晶�,EMI也由于使用低頻晶振而減�。PLL的工作不需要外部器件�
?�?位時鐘恢�(fù)。位時鐘恢復(fù)電路�4倍過采樣原理從輸入的USB �(shù)�(jù)流中恢復(fù)時鐘,能跟蹤USB�(guī)范中指出的信號抖動和頻率漂移�
?�?PHILIPS串行接口引擎PSIE。PHILIPS的SIE完全實現(xiàn)USB�(xié)議層??紤]到速度,它是全硬件�� 不需要固�(微程�)介入。這個模塊的功能包括:同步模式識別、并 /串轉(zhuǎn)�、位填充/不填充、CRC校驗、PID確認(rèn)、地址識別以及握手鑒定�
?�?SoftConnect。高速設(shè)備與USB的連接是靠把D+通過1�1.5 kΩ的上拉電阻接到高電平來建立的。在PDIUSBD12中,這個上拉電阻是集成在芯� �(nèi)�,缺省是沒有連接到VDD,這個連接是靠外部 MCU�(fā)一個命令來建立�。這使得系�(tǒng)微處理器可以在決定建� USB連接之前完成初始�。重新初始化USB總線連接也可以不用拔掉電纜來完成�
?�?GoodLink。GoodLink是靠一個引腳接�(fā)光二極管實現(xiàn)�。在 USB�(shè)備枚舉時LED指示燈將立即閃亮;�(dāng)PDIUSBD12被成功枚舉并配置�� LED指示燈將會始終亮;�(jīng)過PDIUSBD12的USB�(shù)�(jù)傳輸過程�� LED將一閃一閃,傳輸成功后LED熄滅;在掛起期�,LED熄滅。這種特性可以使我們知� PDIUSBD12的狀�(tài),方便電路調(diào)�?��?存儲器管理單元MMU和集成RAM。MMU和集成RAM能緩沖USB(工作� 12Mb/s)�(shù)�(jù)傳輸和微控制器之間并行接口之間的速度差異,這允 許微控制器以自己的速度讀寫USB��
?�?并行和DMA接口。并行接口容易使�、速度快并且能直接與主微控制器接口。對于微控制�,PDIUSBD12可以看成是一個有8位數(shù)�(jù)總線�1位地址線的存儲�(shè)�� PDIUSBD12支持多路�(fù)用和非多路復(fù)用的地址和數(shù)�(jù)總線。在主端�(diǎn)(端點(diǎn) 2)和局部共享存儲器之間也可使用DMA(直接存儲器存�)傳輸。它支持單周期模式和塊傳送模� 兩種DMA傳輸�
(2)PDIUSBD12引腳說明
(3)PDIUSBD12的典型連接
PDIUSBD12�80C51的連接電路� �4-6 所�。在這個例子中� ALE始終接低電平,說明采用單�(dú)地址和數(shù)�(jù)總線配置。A0 腳接80C51的任何I/O引腳,控制是命令還是�(shù)�(jù)輸入到PDIUSBD12 �80C51的P0口直接與PDIUSBD12的數(shù)�(jù)總線相連接,CLKOUT 時鐘輸出�80C51提供時鐘輸入�
(4)PDIUSBD12的DMA 傳輸
直接存儲器尋址 允許在主端點(diǎn)和本地共享存儲器間實�(xiàn)�(shù)�(jù)塊的有效傳輸.使用DMA控制�,PDIUSBD12 的主端點(diǎn)和本地共享存儲器間的�(shù)�(jù)傳輸可自主�(jìn)行而不需要本地CPU 的干�(yù).要處理任何DMA傳輸,本地CPU 從主�(jī)接收必要的建立信息并對DMA控制器�(jìn)行相�(yīng)的編�.典型的對DMA控制器的傳輸模式、字節(jié)計數(shù)寄存器和地址計數(shù)器�(jìn)行正確的編程。在該模式下� PDIUSBD12 �(fā)出請求時開始傳輸,當(dāng)字節(jié)計數(shù)器減少為零時終止。在DMA 控制器編程之�,本地CPU 在初始化傳輸時將PDIUSBD12 中的DMA使能位置位�
PDIUSBD12 可編程為單周期DMA或突�(fā)模式DMA。在單周期DMA 中,DMREQ在每單個應(yīng)答后直到被DMACK[_]N 重新激活之前保持無�。在突發(fā)模式DMA 中,DMREQ 在器件中突發(fā)編程時一直保持有�。該過程持續(xù)到PDIUSBD12 通過EOT[_]N 接收到一個DMA 終止信息。這時�(chǎn)生一個中斷指示本地CPU ,DMA操作已經(jīng)完成�
在DMA 讀操作�,DMREQ 僅當(dāng)緩沖區(qū)完全表示主機(jī)成功的發(fā)送了一個信息包到PDIUSBD12 時才有效。由于具有雙緩沖配置主機(jī)可以在個緩沖區(qū)被讀出時對第二個緩沖區(qū)�(jìn)行填�。這種并行的處理有效的增加了數(shù)�(jù)吞吐量。當(dāng)主機(jī)沒有完全填滿緩沖區(qū)的情況下(單向ISO 配置時小�64 �128 字節(jié))。DMREQ 會在緩沖區(qū)的一個字節(jié)時無�,而不管當(dāng)前的DMA突發(fā)計數(shù)。在更新了DMA突發(fā)計數(shù)的下一個包�(fā)送時,DMREQ 再次被激��
DMA的寫操作與之相似,當(dāng)緩沖區(qū)未裝滿時,DMREQ 一直有效。當(dāng)緩沖區(qū)填滿�,在下一個IN �(biāo)志將信息包送入主機(jī)。當(dāng)傳輸完成之后DMREQ �?yōu)闊o�。同樣的,雙緩沖配置在這也改善了數(shù)�(jù)的吞吐量。在非同步傳輸中(批量模式和中�),在�(shù)�(jù)被發(fā)送到主機(jī)之前,緩沖區(qū)需要通過DMA寫操作完全裝�。的例外是,在DMA傳輸�(jié)束時,EOT[_]N 接收的信號將會停止DMA寫操作并且在下一個IN �(biāo)志置位時將緩沖區(qū)的內(nèi)容傳送到主機(jī)�
在同步模式中,本地CPU 和DMA 控制器必須保證它們在一個USB 幀(1ms )中能夠吞吐的信息包的�(guī)�。DMACK[_]N 的激活將自動選擇主端�(diǎn)(端點(diǎn)2 )而不管當(dāng)前選擇的端點(diǎn)。PDIUSBD12的DMA操作可通過普通的I/O 對其它端�(diǎn)的存取實�(xiàn)交叉存取。DMA操作可通過以下方式終止:復(fù)位DMA使能寄存器位或EOT[_]N 加上DMACK[_]N 以及RD[_]N/WR[_]N的激��
PDIUSBD12 支持單地址模式中的DMA傳輸,也可以在DMA 控制器的雙地址模式中工�。在單地址模式�,DMA 通過DREQ ,DMACK[_]N,EOT[_]N,WR[_]N 和RD[_]N 控制線實�(xiàn)傳輸。在雙地址模式�,DMREQ,DMACK[_]N和EOT[_]N未用,取而代之的是CS[_]N,WR[_]N和RD[_]N控制信號。需要遵� PDIUSBD12的I/O 模式傳輸�(xié)�。在讀周期中對DMAC 信號源�(jìn)行訪�,在寫周期對目標(biāo)�(jìn)行訪問。傳輸需要兩個單�(dú)的總線周期來儲存暫存在DMAC 中的�(shù)�(jù)�
4.2.3 DMA方式�(shù)�(jù)傳輸電路
上面詳細(xì)介紹了PDIUSBD12芯片的原理和工作方式,下面將介紹接口電路板工作在DMA方式的原�。該傳輸方式的原理框圖參看圖4-3�
�(dāng)外設(shè)接口1接入要求DMA傳輸?shù)脑O(shè)��51單片�(jī)向D12�(fā)出DMA傳送的指令,并通過控制口線�157�(shù)�(jù)選擇電路�74164傳送過來的并行�(shù)�(jù)直接與D12的并行接口相�,不在�(jìn)�51單片�(jī),在完成了對D12 DMA傳送初始化以后,MCU不再控制傳�,而由計數(shù)器滿8向D12�(fā)送一個讀信號,使D12 讀�164�(nèi)存儲�8個字節(jié)的數(shù)�(jù),如此反�(fù),整個傳輸過程由硬件完成,不受MCU 的速率限制,從而實�(xiàn)了DMA傳輸�
此工作方式適用于視頻�(shù)字信號的傳輸,下面是連接CCD攝像頭的電路示意圖:
CCD[_]IN為經(jīng)過A/D�(zhuǎn)化或二值化處理的視頻數(shù)字信�,CCD[_]CLK1為脈沖同步信號,CCD[_]CLK2為行同步信號,CCD[_]CLK3為場同步信號。計�(shù)器對CCD[_]CLK1�(jìn)行計�(shù),滿8個脈沖向D12的讀端發(fā)一個低電平,通知D12�164里面的數(shù)�(jù)�(jìn)行讀��
4.2.4 �(shù)�(jù)選擇電路
�(shù)�(jù)選擇電路是由兩片74H157搭建而成,數(shù)�(jù)選擇DATA[_]SEL端連到�51的控制口線上,由51控制D12的并行數(shù)�(jù)I/O口是�51的P0口相連還是和74HC93串并�(zhuǎn)換輸出的并行�(shù)�(jù)線相�,從而到�(dá)了數(shù)�(jù)選擇的作��
4.2.5 串并�(zhuǎn)換及計數(shù)器電�
電路�74HC164起了串并�(zhuǎn)換的作用,在DMA工作方式�,通過接入�(shù)�(jù)同步脈沖,把外設(shè)接口1送入的串行數(shù)�(jù)�(zhuǎn)化成并行�(shù)�(jù),供D12直接讀��
計數(shù)�74HC93�(fù)�(zé)對CCD[_]CLK1�(jìn)行計�(shù),滿8個脈沖向D12的讀端發(fā)一個低電平,通知D12�164里面的數(shù)�(jù)�(jìn)行讀��
4.2.6 �(fù)位掛起電�
�(fù)位掛起電�
掛起和復(fù)位電路被�(shè)計在一�,允許器件�(jìn)入掛起模式還可以�(dá)到在USB �(guī)格Rev.1.1 中所陳述的掛起限制電��
�(zhí)行此功能以后將強(qiáng)迫MCU �(jìn)入掉電模�,MCU 振蕩器停止工作。只有硬件復(fù)位才能喚醒MCU工作。從這個電路中,復(fù)位信號是連接到復(fù)位電路的,當(dāng)上位PC �(jī)從掛起狀�(tài)恢復(fù)�,將�(dǎo)致D12 觸發(fā)掛起信號,并通過上面的電路而產(chǎn)生復(fù)位信��
4.2.7 外設(shè)接口2
采用�(biāo)�(zhǔn)的IDE接口連線方式的外�(shè)接口2電路
外設(shè)接口2采用了標(biāo)�(zhǔn)的IDE接口連線方式,可直接與計算機(jī)硬盤、光�(qū)、光盤刻錄機(jī)等相�,用于傳輸海量數(shù)�(jù),使用方��
由于采取�51接口�(kuò)展的方式,通過對接口的�(zhuǎn)�,也可以與其他更多的外設(shè)相�,用途比較廣��
4.2.8 其他器件
l 按下按鈕SW1 :復(fù)位或恢復(fù)系統(tǒng)
l LED D1 � USB 接口連接成功指示器:�(dāng)此LED �(diǎn)�?xí)r表示USB 主機(jī)和USB 器件已經(jīng)裝配和枚�。如果它正在閃爍表示�(shù)�(jù)已經(jīng)�(fā)送或接收�
l JP2� 外設(shè)接口1,用于與CCD相連,�4接口的接插件
l CON1� USB CON 用于與USB電纜相聯(lián)�
�(jié)束語
USB為計算機(jī)外設(shè)輸入輸出提供了新的接口標(biāo)�(zhǔn)。它使設(shè)備具有熱插拔,即插即�,自動配置的能力,并�(biāo)�(zhǔn)化設(shè)備連接。USB的級�(lián)星型�?fù)浣Y(jié)�(gòu)大大�(kuò)充了外設(shè)�(shù)�,使增加,使用外�(shè)更加便捷,快速。而新提出的USB2.0�(biāo)�(zhǔn)更是將數(shù)�(jù)傳輸速率提高到了一個新的高�,這是具有美好的應(yīng)用前景�
維庫電子通,電子知識,一查百��
已收錄詞�120907�