當(dāng)前位置:首頁 > 智能硬件 > 智能硬件
[導(dǎo)讀]本文介紹一種 采用Philips公司帶I2C接口的USB接口芯片PDIUSBD11進(jìn)行USB接口開發(fā)的方法,他使用高速通用I2C接口與單片機(jī)相連接。?

1、前言

       USB(Universal Serial Bus)通用串行總線是在1994年底由康柏、IBM、Microsoft等多家 公司聯(lián)合制訂的,但是直到1999年,USB才真正被廣泛應(yīng)用。同時(shí),他也得到了各PC廠商、芯片制造商和PC外設(shè)廠商的廣泛支持,USB外設(shè)在國(guó)內(nèi)外以驚人的速度發(fā)展,迄今為止,各種USB的外設(shè)已經(jīng)有數(shù)千種。為PC外圍設(shè)備設(shè)計(jì)USB接口已成為大勢(shì)所趨。  

       隨著單片機(jī)技術(shù)的發(fā)展,單片機(jī)的功能日益強(qiáng)大,外圍電路日益復(fù)雜,其有限的管腳也就顯 得捉襟見肘。目前采用普通單片機(jī)外加USB接口芯片開發(fā)USB外設(shè)時(shí),USB接口器件大都是采 用并行接口與單片機(jī)相連接,這樣再加上一些控制信號(hào)線,總共需要占用單片機(jī)十余個(gè)管腳 ,對(duì)于一般對(duì)傳輸速度要求不是很高的設(shè)備顯得有些浪費(fèi),特別是對(duì)于為產(chǎn)品轉(zhuǎn)型而 進(jìn)行的USB接口開發(fā),勢(shì)必會(huì)影響原來的電路連接和功能設(shè)置。因此,采用一種既能保持較 高的傳輸速度,又能減少單片機(jī)引腳使用的USB接口開發(fā)方法很有必要。本文介紹一種 采用Philips公司帶I2C接口的USB接口芯片PDIUSBD11進(jìn)行USB接口開發(fā)的方法,他使用高速通用I2C接口與單片機(jī)相連接。?    

       2 背景介紹   

       2.1 USB背景介紹  

       USB是一些PC廠商為解決日益增加的PC外設(shè)與有限的主板插槽和端口間的矛盾制定的一種 串行通信標(biāo)準(zhǔn)。他傳輸速度快,能提供3種傳輸方式:低速模式(速率為1.5 Mb/s);中速模 式(速率為12 Mb/s);高速模式(速率為?360 Mb/s?以上)。數(shù)據(jù)傳輸可靠,USB設(shè)備在發(fā)送 數(shù)據(jù)時(shí)支持 數(shù)據(jù)偵錯(cuò)和糾錯(cuò)功能,增強(qiáng)了數(shù)據(jù)傳輸?shù)目煽啃?。設(shè)備安裝和配置容易,安裝USB設(shè)備不必 再打開機(jī)箱,增減設(shè)備不用關(guān)閉計(jì)算機(jī),所有USB設(shè)備支持熱插拔,系統(tǒng)對(duì)他進(jìn)行自動(dòng)配置 。易于擴(kuò)展,外設(shè)接口之間采用菊花鏈形式連接通過使用Hub擴(kuò)展可連接多達(dá)127個(gè)外設(shè)。能 夠采用總線供電,USB總線提供最大達(dá)5 V電壓,500 mA電流,可為小型設(shè)備供電。使用靈活,USB共有4種傳輸模式:控制傳輸(control)、同步傳輸( synchronization )、中斷傳輸 (interrupt)、批量傳輸(bulk),以適應(yīng)不同設(shè)備需要。   

       2.2 I2C總線技術(shù)介紹  

       I2C總線技術(shù)是Philips公司研制出來的串行擴(kuò)展技術(shù)。他是一種簡(jiǎn)單、雙向二線制同步串 行總線,他只需要2根線(串行時(shí)鐘線SCL和串行數(shù)據(jù)線SDA)即可在連接于總線上的器件之 間傳送信息。對(duì)于并不要求很高的數(shù)據(jù)傳輸速度的外設(shè),I2C總線的使用無疑簡(jiǎn)化了系統(tǒng) ,增加了硬件構(gòu)成的靈活性,是一種高效、方便的串行擴(kuò)展總線。  

       使用I2C傳輸數(shù)據(jù)有2種基本方法。第一種是采用I2C總線標(biāo)準(zhǔn)的單片機(jī)或IC器件,其內(nèi) 部含有I2C接口電路,使用這種方法可直接從接口讀寫數(shù)據(jù)。第二種是采用軟件程序模擬I2C總線的時(shí)序來完成接口功能,使用這種方法可任意從單片機(jī)中選取2個(gè)I/O口,作為串 行時(shí)鐘線SCL和串行數(shù)據(jù)線SDA,使用靈活。?    

       3 PDIUSBD11芯片介紹   

       3.1 PDIUSBD11 芯片特點(diǎn)  

       PDIUSBD11 是一款性價(jià)比很高的USB 器件,他通常用作微控制器系統(tǒng)中實(shí)現(xiàn)與微控制器進(jìn)行 通 信的高速通用I2C接口。這種實(shí)現(xiàn)USB 接口的標(biāo)準(zhǔn)組件使得設(shè)計(jì)者可以在各種不同類型微 控制器中選擇出最合適的微控制器。這種靈活性減小了開發(fā)的時(shí)間風(fēng)險(xiǎn)以及費(fèi)用,通過使用 已 有的結(jié)構(gòu)減少固件上的投資。從而用最快捷的方法實(shí) 現(xiàn)最經(jīng)濟(jì)的USB外設(shè)的解決方案。PD IUSBD11適用于電腦監(jiān)視器、操縱桿、鍵盤和其他一些使用I2C或SMBUS結(jié)構(gòu)的器件 。PDIUSBD11符合USB 1?1協(xié)議規(guī)范、I2C串行接口和SMBUS協(xié)議規(guī)范。他完全符合人機(jī)接 口設(shè)備和監(jiān)視控制類協(xié)議規(guī)范。PDIUSBD11所具有的低掛起功耗連同LazyClock 輸出可以滿 足使用ACPI,OnNOW 和USB 電源管理的要求。低的操作功耗可以執(zhí)行總線供電功能。此外他 還集成了許多特性包括SoftConnetTM,GoodLinkTM,可編程時(shí)鐘輸出、低頻晶振、多重功能 終端和終止寄存器集合。所有這些特性都為系統(tǒng)顯著節(jié)約了成本,同時(shí)使USB 功能在外設(shè)上 的應(yīng)用變得容易。
 
       3.2  PDIUSBD11 內(nèi)部結(jié)構(gòu)

       PDIUSBD11芯片的內(nèi)部結(jié)構(gòu)如圖1所示。

 

       模擬收發(fā)器收發(fā)器接口可通過終端電阻 直接與USB電纜相連,  他們能以全速(12 Mb/s)傳送和接收數(shù)據(jù)。

{{分頁}}  

       PLL片內(nèi)集成了12~48 M時(shí)鐘乘法器PLL。這樣就可使用低成本的12 M晶振 ,EMI也隨之降低。PLL的工作不需要外部元件。  

       Philips串行接口引擎PSIEPhilips SIE實(shí)現(xiàn)了全部的USB協(xié)議層。完全由 硬件實(shí)現(xiàn)而不需要固件的參與。該模塊的功能包括:同步模式的識(shí)別、并行/串行轉(zhuǎn)換、位 填充/解除填充、CRC校驗(yàn)/產(chǎn)生、PID校驗(yàn)/產(chǎn)生、地址識(shí)別和握手評(píng)估/產(chǎn)生?! ?/P>

       存儲(chǔ)器管理單元MMU和集成RAM當(dāng)USB接口以12 Mb/s的速率傳輸并且I2C接口以1 Mb/s與微控制器相連時(shí),MMU和集成RAM被用來處理這種極大的速率差異。這就允許 微控制器以他自己的速率通過I2C接口對(duì)USB信息包進(jìn)行讀寫?! ?/P>

       I2C控制接口這個(gè)模塊執(zhí)行必要的I2C接口協(xié)議。一個(gè)I2C控制器執(zhí)行簡(jiǎn)單的編碼。一個(gè)中斷信號(hào),當(dāng)PDIUSBD11需引起注意時(shí),用來向微控制器發(fā)出 警告。作為一個(gè)控制I2C的器件,PDIUSBD11的時(shí)鐘輸入SCL由微控制器控制。I2C接口的 傳輸速率能夠達(dá)到1 Mb/s。  

       SoftConnectTM與USB的連接是通過1.5 kΩ上拉電阻將D+(用于 高速USB器件)置為高實(shí)現(xiàn)的。1.5 kΩ上拉電阻集成在PDIUSBD11片內(nèi),默認(rèn)狀態(tài)下不與VC C相連。連接的建立通過外部/系統(tǒng)微控制器發(fā)送命令來實(shí)現(xiàn)。這就允許系統(tǒng)微控制器在決定 與USB建立連接之前完成初始化時(shí)序。USB總線連接可以重新初始化而不需要拔出電纜?! ?/P>

       3.3  PDIUSBD11 芯片的典型應(yīng)用 

       PDIUSBD11芯片的應(yīng)用示意圖如圖2所示。其外圍電路典型連接如圖3所示?! ?/P>

 

       VBUS是USB的總線電源感知引腳,通過他USB接口控制芯片判斷USB設(shè)備是否接到了P C機(jī)上。外部復(fù)位引腳Reset上電復(fù)位,但PDIUSBD11芯片內(nèi)部提供復(fù)位電路,因此可以將他 接到3.3V上,屏蔽其外部復(fù)位功能。Suspend引腳,他的作用是當(dāng)USB設(shè)備進(jìn)入掛起模式時(shí),輸出 高電平提醒主機(jī),主機(jī)可通過拉低該引腳的電壓來喚醒USB設(shè)備,使用中也可以直接將該引 腳接地,來屏蔽USB設(shè)備的掛起功能。INT_N引腳與單片機(jī)的連接是必不可少的,當(dāng) 主機(jī)需 要與USB設(shè)備通信時(shí),該引腳變成低電平,通知USB設(shè)備進(jìn)入中斷服務(wù)程序,中斷請(qǐng)求結(jié)束后 他又重新變回高電平。因此他通過上拉電阻接正電源,當(dāng)空閑時(shí)處于高電平狀態(tài)。?

{{分頁}}    

       4  固件程序設(shè)計(jì)  

       單片機(jī)與PDIUSBD11的通信主要是 靠單片機(jī)給PDIUSBD11發(fā)命令和數(shù)據(jù)來實(shí)現(xiàn)的。 PDI USBD11的命令字分為3種:初始化命令字、數(shù)據(jù)流命令字 和通用命令字。PDIUSBD11給出了各種命 令的代碼和地址。單片機(jī)先給PDIUSBD11的命令地址發(fā)命令,根據(jù)不同命令的要求再 發(fā)送或讀出不同的數(shù)據(jù)?! ?/P>

       當(dāng)單片機(jī)使用專門的I2C接口與PDIUSBD11芯片連接時(shí),可以直接進(jìn)行輸入、輸出通信。但 如果只使用2個(gè)普通的I/O口連接時(shí),需要用軟件模擬I2C接口與PDIUSBD11芯片進(jìn)行通信 ,可將模擬I2C傳輸部分編成子程序,使用時(shí)直接調(diào)用即可。具體編程方法可參照I2C總 線規(guī)范。  

       USB單片機(jī)控制程序通常由3部分組成:  

       (1) 初始化單片機(jī)和所有的外圍電路(包括PDIUSBD11芯片);  

       (2) 主循環(huán)部分,其任務(wù)是可以中斷的;  

  (3) 中斷服務(wù)程序,其任務(wù)是對(duì)時(shí)間敏感的,必須馬上執(zhí)行。?   

       4.1 初始化程序設(shè)計(jì)  

       在編寫初始化程序時(shí)需要注意,由于PDIUSBD11芯片采用Philips的SoftConnectTM技術(shù)設(shè)計(jì)。與USB的連接通過1.5 kΩ上拉電阻將D+(用于高速USB器件)置為高實(shí)現(xiàn)。1.5kΩ上拉電阻集成在PDIUSBD11片內(nèi),默認(rèn)狀態(tài)下不與VCC相連。連接的建立通過 單片機(jī)發(fā)送命令來實(shí)現(xiàn)。這就允許系統(tǒng)微控制器在決定與建立USB連接之前完成初始化時(shí)序 。USB總線連接可以重新初始化而不需要拔出電纜。所以在固件程序中需要編寫芯片初始化 程序,以確保設(shè)備能順利進(jìn)行USB連接。初始化程序范例如下:
    
 

       按不同的應(yīng)用方式(如遠(yuǎn)程喚醒、掛起功能等),可在Set Mode的第一個(gè)字為PDIUS BD11芯片設(shè)置不同的模式?!?/P>

       4.2 中斷服務(wù)程序 

       根據(jù)USB協(xié)議,任何傳輸都是由主機(jī)(host)開始的,單片機(jī)作他的前臺(tái)工作,等待中斷。主機(jī)首先要發(fā)令牌包給USB設(shè)備(這里是PDIUSBD11),PDIUSBD11接收到令牌包后就給單片 機(jī)發(fā)中斷,單片機(jī)檢測(cè)到INT_N引腳變成低電平后進(jìn)入中斷服務(wù)程序,首先讀PDIUSBD11的中斷寄存器,判斷USB令牌包的類型,然后執(zhí)行相應(yīng)的操作。因此,USB單片機(jī)程序主要就 是中斷 服務(wù)程序的編寫。中斷服務(wù)程序流程圖如圖4所示。PDIUSBD11芯片可支持4個(gè)端點(diǎn)(EP0~3),其中端點(diǎn)0用來對(duì)應(yīng)缺省控制通道并初始化和操縱配置設(shè)備,同時(shí)提供設(shè)備配置信息的 讀取和支持控制傳輸。端點(diǎn)1~3則用于支持塊傳輸和中斷傳輸?shù)取?

 

       具體的固件程序內(nèi)容可參考文獻(xiàn)[4],PDIUSBD12芯片是Philips公司的一款帶并口的USB接口芯片,目前應(yīng)用較廣。  

       用PDIUSBD11芯片開發(fā)的USB接口,數(shù)據(jù)的傳輸速率是由單片機(jī)的I2C接口速率決定的。經(jīng)測(cè)試其傳輸速率可達(dá)500 kb/s,遠(yuǎn)高于普通串口的傳輸速率,保持了USB接口的高速性,能滿足一般的非大容量存儲(chǔ)設(shè)備的需要。    

       5 結(jié)語   

       使用單片機(jī)外加USB接口芯片開發(fā)USB接口,適用于為現(xiàn)有產(chǎn)品開發(fā)USB接口,能盡量避免對(duì) 原有電路及程序的修改,降低了開發(fā)成本和風(fēng)險(xiǎn)。在對(duì)速度要求不太高的情況下,可采用Ph ilips公司的USB接口芯片PDIUSBD11,他特有的I2C接口設(shè)計(jì)可以減少與單片機(jī)的引腳連接 ,簡(jiǎn)化外圍電路設(shè)計(jì)。雖然只有2根數(shù)據(jù)線負(fù)責(zé)數(shù)據(jù)的雙向傳輸,但仍保證了較高的傳輸速 率,能滿足一般的對(duì)速度要求不太高的設(shè)備的需要。
 
參考文獻(xiàn)
[1]PDIUS BD11 Data Sheet[S].?
[2]USB Specification V1?1[S].?
[3]I2C總線規(guī)范[S].?
[4]周立功.PDIUSBD12 USB固件編程與驅(qū)動(dòng)開發(fā)[M].北京:北京航空航天大 學(xué)出版社,2003.  

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉