當(dāng)前位置:首頁 > 智能硬件 > 智能硬件
[導(dǎo)讀]提出利用SL811HS和8位單片機(jī)實(shí)現(xiàn)USB-Host實(shí)時(shí)數(shù)據(jù)采集嵌入式模塊。該系統(tǒng)的數(shù)據(jù)傳輸,遵守大規(guī)模存儲(chǔ)協(xié)議和USB 1.1協(xié)議規(guī)范,可作為嵌入式設(shè)備的數(shù)據(jù)輸入輸出模塊。

    摘要:提出利用SL811HS和8位單片機(jī)實(shí)現(xiàn)USB-Host實(shí)時(shí)數(shù)據(jù)采集嵌入式模塊。該系統(tǒng)的數(shù)據(jù)傳輸,遵守大規(guī)模存儲(chǔ)協(xié)議和USB 1.1協(xié)議規(guī)范,可作為嵌入式設(shè)備的數(shù)據(jù)輸入輸出模塊。它以文件的形式,與Slave端的USB移動(dòng)存儲(chǔ)器進(jìn)行數(shù)據(jù)傳輸。

    關(guān)鍵詞:SL811HS USB-HOST 大規(guī)模存儲(chǔ)協(xié)議 USB1.1

引言

隨著數(shù)據(jù)采集系統(tǒng)、工控行業(yè)和嵌入式用戶對(duì)移動(dòng)存儲(chǔ)的需求越來越大,傳統(tǒng)的通過軟盤、串行口(RS232/RS485)或以太網(wǎng)等傳輸數(shù)據(jù)的方式已不能滿足當(dāng)前數(shù)據(jù)存儲(chǔ)和交換的需求。如何在嵌入式模塊中實(shí)現(xiàn)USB移動(dòng)存儲(chǔ)已成為急需解決的問題。

本文提出利用SL811HS和8位單片機(jī)實(shí)現(xiàn)USB-HOST嵌入式模塊的一種方案。它帶有標(biāo)準(zhǔn)USB數(shù)據(jù)總線接口,完全遵守USB 1.1協(xié)議和大規(guī)模存儲(chǔ)協(xié)議規(guī)范。移動(dòng)存儲(chǔ)設(shè)備的文件操作方式支持FAT16文件系統(tǒng)。

1 USB-HOST嵌入式模塊原理

USB技術(shù)規(guī)范將使用USB進(jìn)行數(shù)據(jù)傳輸?shù)碾p方劃分為兩種角色——Host和Slave,并且規(guī)定,數(shù)據(jù)傳輸只能發(fā)生在Host和Slave之間。目前,絕大多數(shù)Host功能角色被集成在各種類型的PC機(jī)上,如筆記本電腦、臺(tái)式機(jī)、Mac機(jī)及服務(wù)器等;而各種各樣的基本USB的移動(dòng)設(shè)備都集成了USB Slave功能角色,例如U盤、帶USB接口的數(shù)碼相機(jī)等。這樣,就導(dǎo)致這些作為USB Slave的USB接口的數(shù)字設(shè)備中的數(shù)據(jù),離開PC機(jī)無法讀寫。解決這一問題的根本辦法就是在需要使用USB設(shè)備的系統(tǒng)中集成USB Host功能模塊,使之具有與USB Slave設(shè)備進(jìn)行數(shù)據(jù)傳輸?shù)哪芰Α?/P>

利用SL811HS和8位單片機(jī)實(shí)現(xiàn)的系統(tǒng)完成了USB Host功能,并且提供了USB總線的接口方式。它可以作為一個(gè)數(shù)據(jù)接口模塊集成到用戶的嵌入式系統(tǒng)中,使用戶系統(tǒng)能夠讀/寫作為Slave的USB移動(dòng)存儲(chǔ)器,從而完成數(shù)據(jù)存儲(chǔ)和交換功能。由于它支持FAT16文件系統(tǒng),所以可以將用戶系統(tǒng)發(fā)來的數(shù)據(jù)以文件的方式存儲(chǔ)到USB移動(dòng)存儲(chǔ)器中,因此,用戶可以在需要時(shí),將USB移動(dòng)存儲(chǔ)器取出,并拿到自己數(shù)據(jù)處理中心的PC機(jī),直接將采集到的數(shù)據(jù)進(jìn)行分析,極大地方便了用戶數(shù)據(jù)的采集和處理。其原理如圖1所示。

2 SL811HS芯片介紹

Cypress公司提供的USB嵌入式主控制器芯片SL811HS具有標(biāo)準(zhǔn)的微處理器總線接口,可以提供全速(12Mb/s)和低速(1.5Mb/s)USB數(shù)據(jù)轉(zhuǎn)換。圖2為SL811HS主從控制功能模塊。

它具有以下功能:

①自動(dòng)檢測(cè)全速或低速設(shè)備;

②8位雙向數(shù)據(jù)輸出端口;

③集成芯片的串行接口驅(qū)動(dòng)和USB接收;

④256字節(jié)內(nèi)部SRAM緩存,乒乓處理;

⑤自動(dòng)生成內(nèi)部幀同步和CRC5/16校驗(yàn);

⑥自動(dòng)地址增益模式,可以節(jié)省存儲(chǔ)器讀寫周期。

3 硬件電路設(shè)計(jì)

圖3為SL81HS電路設(shè)計(jì)圖,在實(shí)際項(xiàng)目中已經(jīng)得到了應(yīng)用。

其中AD0~AD7、CS、RD、WR均與單片機(jī)89C51相連,由單片機(jī)進(jìn)行控制。雖然SL811HS可以使用12MHz晶振,然而在實(shí)際使用過程中發(fā)現(xiàn),當(dāng)晶振質(zhì)量不太好時(shí),電路穩(wěn)定性較差,故建議在條件許可的情況下,盡量使用48MHz的有源晶振。

4 SL811HS的工作過程

①通過SL811HS向從機(jī)發(fā)送數(shù)據(jù)過程。接收數(shù)據(jù)過程同發(fā)送數(shù)據(jù)過程類似。

②通過SL811HS向從機(jī)發(fā)送數(shù)據(jù)的Ping-Pong方式的實(shí)現(xiàn)。若有大量的數(shù)據(jù)(如以512字節(jié)為最小單位的扇區(qū)寫操作)需要傳送,就要考慮到Ping-Pong傳送。其具體過程為:

*向BUFFER中同時(shí)寫入2個(gè)幀;

*發(fā)出第1個(gè)幀;

*等待確認(rèn)信息;

*收到確認(rèn)信息后發(fā)出第2個(gè)幀,在第1個(gè)幀的位置上填充第3個(gè)幀,同時(shí)開始等待確認(rèn)信息。

Ping-Pong方式利用等待的時(shí)隙,填充BUFFER,可以極大提高系統(tǒng)的性能,在不改變其它條件的情況下,提高速度。

5 大規(guī)模存儲(chǔ)過程

大規(guī)模存儲(chǔ)是CPU和移動(dòng)存儲(chǔ)設(shè)備打交道的接口程序,通過調(diào)用大規(guī)模存儲(chǔ)程序,可以得知移動(dòng)存儲(chǔ)設(shè)備文件分區(qū)表中的DBR、FAT表、文件目錄表等的起始位置,并且可以獲得移動(dòng)存儲(chǔ)設(shè)備某些地址區(qū)間的一系列數(shù)值。Windows系統(tǒng)可以自動(dòng)支持大規(guī)模存儲(chǔ)協(xié)議,使主機(jī)可以自如訪問移動(dòng)存儲(chǔ)設(shè)備;然而在單獨(dú)開發(fā)此嵌入式模塊時(shí),大規(guī)模存儲(chǔ)協(xié)議須自己編寫。

    下面為通過大規(guī)模存儲(chǔ)協(xié)議訪問移動(dòng)存儲(chǔ)設(shè)備的部分程序。

if(!SPC_RequestSense()) return FLASE;

//轉(zhuǎn)換數(shù)據(jù)狀態(tài)到主機(jī)

if(!SPC_TestUnit()) returnFALSE; //檢測(cè)UFI設(shè)備狀態(tài)

if(!RBC_ReadCapacity()) return FLASE; //主機(jī)讀取的最大容量

if(!RBC_Read(0x0,1,DBUF)) return FLASE;//主機(jī)讀0x0開始的一個(gè)數(shù)據(jù)塊到DBUF

//以上為大規(guī)模存儲(chǔ)的各個(gè)命令塊,運(yùn)行成功,則繼續(xù)。

if(DBUF[0]==0xeb||DBUF[0]==0xe9)

DeviceInfo.StartSector=0;

Else

DeviceInfo.SartSector=SwapINT32(pMBR->StartSector);

pBPB=(PBPB_BLOCK)DBUF; //引導(dǎo)扇區(qū)DBR的BRB塊定義

if(!RBC_Read(DeviceInfo.StartSector,1,DBUF)) return FLASE;

DeviceInfo.BPB_BytesPerSec=SwapINT16(pBPB->BPB_BytesPerSec);

DeviceInfo.PBP_SecPerClus=pBPB->BPB_SecPerClus;

DeviceInfo.BPB_NumFATs=pBPB->BPB_NumFATs;

DeviceInfo.BPB_RootEntCnt=SwapINT16(pBPB->BPB_RootEntCnt);

DeviceInfo.BPB_TotSec16=SwapINT16(pBPB->BPB_TotSec16);

DeviceInfo.BPB_FATSz16=SwapINT16(pBPB->BPB_FATSz16);

DeviceInfo.BPB_TotSec32=SwapINT32(pBPB->BPB_TotSec32);

SeviceInfo.FatStartSector=DeviceInfo.StartSector+1;

SeviceInfo.RootStartSector=DeviceInfo.StartSector+2*DeviceInfo.BPB_FATSz16+1;

DeviceInfo.FirstDataSector=DeviceInfo.FatStartSector+2*DeviceInfo.BPB_FATSz16+32;

/*以上為各個(gè)部分存儲(chǔ)位置即每扇區(qū)字節(jié)數(shù)、每簇扇區(qū)數(shù)、FAT表起始扇區(qū)、根目標(biāo)起始扇區(qū)、數(shù)據(jù)區(qū)起始扇區(qū)等。*/

6 系統(tǒng)的整個(gè)工作流程

通過單片機(jī)定時(shí)器0檢測(cè)設(shè)備狀態(tài),如果發(fā)現(xiàn)從設(shè)備接入,則觸發(fā)外部中斷0。當(dāng)從設(shè)備發(fā)現(xiàn)后,通過SL811HS進(jìn)行設(shè)備枚舉,設(shè)置設(shè)備地址、數(shù)據(jù)描述和配置,然后通過大規(guī)模存儲(chǔ)協(xié)議訪問從設(shè)備文件系統(tǒng)。發(fā)讀或?qū)懨?,?duì)從設(shè)備進(jìn)行讀寫,最后反饋響應(yīng)碼。

7 總結(jié)

本文描述了SL811HS芯片和大規(guī)模存儲(chǔ)協(xié)議的應(yīng)用,介紹了基于8位單片機(jī)實(shí)現(xiàn)USB-HOST的整個(gè)過程。此系統(tǒng)已經(jīng)過試驗(yàn),能夠完成對(duì)從設(shè)備的直接讀寫數(shù)據(jù),查看從設(shè)備目標(biāo)及從設(shè)備剩余存儲(chǔ)空間等一系列操作,穩(wěn)定性較強(qiáng);可廣泛地應(yīng)用于數(shù)據(jù)采集系統(tǒng)、工控行業(yè)等領(lǐng)域,具有一定的實(shí)用價(jià)值。

本站聲明: 本文章由作者或相關(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日 /美通社/ -- 英國汽車技術(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中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

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

8月28日消息,在2024中國國際大數(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è)績(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)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(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)閉