由於非PC硬件對(duì)于USB主機(jī)功能的需求不斷地增長(zhǎng)。對(duì)於可攜式消費(fèi)電子產(chǎn)品(如手機(jī))也一樣如此,另外USB主機(jī)功能在家庭娛樂產(chǎn)品(如機(jī)頂盒、游戲機(jī))中也越來(lái)越普及。以下簡(jiǎn)單實(shí)現(xiàn)的電路演示了如何將存儲(chǔ)到一個(gè)閃存驅(qū)動(dòng)器中的視頻內(nèi)容處理成可用于顯示器上觀看。它還詳細(xì)介紹了如何克服添加支持Linux系統(tǒng)USB驅(qū)動(dòng)的難題,從而可輕松地將不同的USB外設(shè)連接到嵌入式USB主機(jī)內(nèi)。
圖1所示為視頻處理電路的基本結(jié)構(gòu)。硬件要求包括:
- 德州儀器基于AM3359的DevKit8600開發(fā)平臺(tái)
- 1個(gè)VGA 8000適配器
- 1個(gè)橋接板
- 1個(gè)FTDI的FT313H EVM模塊
- 12V供電
- 1個(gè)4端口的高速USB集線器
- 1個(gè)USB鍵盤
- 1個(gè)高速USB閃存驅(qū)動(dòng)(帶媒體播放器和快速啟動(dòng)腳本拷貝到根文件夾)
圖1:基于USB的視頻處理電路的功能模塊圖
AM3359 500-mhz微處理器有一個(gè)ARM cortex-a8 32位精簡(jiǎn)指令集的核,非常適合目前的多媒體應(yīng)用。通常微控制器/微處理器如果是被用在這里描述的這類應(yīng)用,需要有特別為他們而寫的驅(qū)動(dòng),使他們可以操作連接的USB設(shè)備。這會(huì)引起不必要的技術(shù)問題,特別是對(duì)于沒有這方面經(jīng)驗(yàn)的工程師,會(huì)延長(zhǎng)開發(fā)時(shí)間。然而,F(xiàn)T313H設(shè)計(jì)用于結(jié)合基于Linux的處理器,可以在AM3359上訪問本地主機(jī)堆棧。該設(shè)備處理USB協(xié)議,數(shù)據(jù)調(diào)度等等,使AM3359的處理能力集中在基本任務(wù)上。由于支持分包傳輸,主機(jī)IC可以處理從集線器傳來(lái)的鍵盤和閃存的USB數(shù)據(jù),支持HID類和大量存儲(chǔ)類。大量存儲(chǔ)類允許執(zhí)行批量傳輸模式 – 這點(diǎn)很重要,因?yàn)橐曨l應(yīng)用需要能保持的快速傳輸速率。
FT313H專為輕松集成設(shè)計(jì)的, 有效吻合系統(tǒng)處理器總線。此外,由于其強(qiáng)大的性能,它被證明是涉及到大量數(shù)據(jù)傳輸?shù)母叨葍?yōu)化的文件傳輸應(yīng)用。這480兆位/ usb2.0-兼容 IC為系統(tǒng)設(shè)計(jì)增加了高速USB主控連接功能,實(shí)現(xiàn)與大容量存儲(chǔ)設(shè)備的快速數(shù)據(jù)傳輸接口,還可通過其支持的標(biāo)準(zhǔn)USB類驅(qū)動(dòng)連接無(wú)線設(shè)備,實(shí)現(xiàn)模塊化系統(tǒng)擴(kuò)展。板級(jí)互連包括一個(gè)通用的8或16位總線,NOR存儲(chǔ)器,或SRAM存儲(chǔ)器接口。它的電池充電檢測(cè)功能意味著,和此類主電源應(yīng)用一樣,它還可以應(yīng)用于電池供電的便攜式應(yīng)用–可控制供給外部硬件工作/充電模式的電流。
示例中的閃存驅(qū)動(dòng)電路,與連接FT313H,能夠向AM3359傳輸需要處理的數(shù)據(jù)。數(shù)據(jù)再由AM3359輸出到顯示器。通過在電路中集成一個(gè)高速USB主控芯片,微控制器/微處理器獲取了本來(lái)不具備的訪問USB外設(shè)的能力。由于系統(tǒng)是基于Linux的,所有本地USB類驅(qū)動(dòng)程序都可用,不需要開發(fā)HID或集線器類驅(qū)動(dòng)程序。直接存儲(chǔ)器DMA傳輸通過限制需要從總線提取數(shù)據(jù)的指令的數(shù)量,進(jìn)一步加快數(shù)據(jù)搬移。
電路設(shè)置如下。接上12伏電源,將USB 集線器插入到FT313H EVM模塊的下行端口,然后將鍵盤和閃存插入集線器上的USB端口 。下一步把顯示器連接到VGA端口并且打開顯示器。等到顯示器上出現(xiàn)登錄界面,使用USB鍵盤輸入字符‘root’(所有小寫),按回車鍵登錄嵌入式Linux。通過鍵盤你再發(fā)出下一條命令‘cd /media/sda1’(但在‘cd’之后一定要加一個(gè)空格)。最后通過鍵盤發(fā)出‘./play demo.avi’命令來(lái)停止播放。要停止播放,只需關(guān)閉電源12伏供電。
這個(gè)電路中的演示平臺(tái)(可以接入DevKit8600平臺(tái),VGA適配器,橋接板和EVM模塊),產(chǎn)品編號(hào)為UMFT313EV。它可以方便的在市場(chǎng)上買到并集成到嵌入式系統(tǒng)做為設(shè)計(jì)的原型驗(yàn)證。
憑藉著對(duì)於大量數(shù)據(jù)傳輸?shù)男枨?,市?chǎng)仍殷切期盼著USB高速主機(jī)解決方案。這里討論的電路展示了FT313H與微處理器/微控制器單元集成,為系統(tǒng)設(shè)計(jì)添加USB功能時(shí)的性能。它展示了將USB主控芯片集成到基于Linux的系統(tǒng)設(shè)計(jì)所帶來(lái)的操作便利性,使系統(tǒng)的微控制器/微處理器可以受益于本地驅(qū)動(dòng)支持。這意味著,可以直接實(shí)現(xiàn)開發(fā),避免驅(qū)動(dòng)開發(fā)的障礙。