日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

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

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

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

引言

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

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

1 USB-HOST嵌入式模塊原理

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

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

2 SL811HS芯片介紹

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

它具有以下功能:

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

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

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

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

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

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

3 硬件電路設(shè)計

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

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

4 SL811HS的工作過程

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

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

*向BUFFER中同時寫入2個幀;

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

*等待確認信息;

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

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

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

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

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

if(!SPC_RequestSense()) return FLASE;

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

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

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

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

//以上為大規(guī)模存儲的各個命令塊,運行成功,則繼續(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;

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

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

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

7 總結(jié)

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

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

西班牙巴塞羅那2025年3月3日 /美通社/ -- 2025年3月3日,在巴塞羅那世界移動通信大會(MWC)上,華為云aPaaS正式發(fā)布了Cloud Device產(chǎn)品,將有助于運營商構(gòu)建新的業(yè)務(wù)形態(tài)與商業(yè)模式,同時為其海...

關(guān)鍵字: DEVICE 華為云 手機 AI

摘 要:針對目前鋼鐵企業(yè)對能效要求的提高,企業(yè)需要建立一套能源管理系統(tǒng)。但是鋼鐵企業(yè)過程控制層控制設(shè)備繁雜,通信協(xié)議繁多,難以實現(xiàn)數(shù)據(jù)的集成和共享。為此,文中提出了一種基于工業(yè)網(wǎng)關(guān)的數(shù)據(jù)采集系統(tǒng),該系統(tǒng)作為一個標準的數(shù)據(jù)...

關(guān)鍵字: 實時數(shù)據(jù)采集 能源管理系統(tǒng) 工業(yè)網(wǎng)關(guān) 仿真

關(guān)注、星標 嵌入式客棧 ,干貨及時送達 [導(dǎo)讀] 前文分析了Linux設(shè)備驅(qū)動的驅(qū)動模型,本文來聊聊Platform_driver/Platform_device這個類。做嵌入式Linux的驅(qū)動,這個也是繞不開的,所以來...

關(guān)鍵字: DEVICE Linux PLATFORM BSP

菜菜哥,請教個問題唄? 說說看,能否解決不敢保證哦 最近做的App業(yè)務(wù)中,有很多敏感操作需要用戶輸入手機驗證碼 這沒問題,手機驗證碼主要是為了驗證當(dāng)前操作人的有效性,有什么問題呢? 如果有數(shù)的幾個操作還可以,但是系統(tǒng)有很...

關(guān)鍵字: 手機 程序員 BSP DEVICE

[導(dǎo)讀] 前文分析了Linux設(shè)備驅(qū)動的驅(qū)動模型,本文來聊聊Platform_driver/Platform_device這個類。做嵌入式Linux的驅(qū)動,這個也是繞不開的,所以來學(xué)習(xí)分析總結(jié)一下。 閱讀本文,建議先讀:...

關(guān)鍵字: DEVICE PLATFORM 嵌入式LINUX LINUX驅(qū)動

5G詳細資費在11月1號推出,消息稱,三家運營商按速度區(qū)分費用,月均最低128元。對于5G的想象很多,但距離真正成熟還需要一段時間。 一、別著急升級套餐 最低128元,這個水準相

關(guān)鍵字: 5G 華為 DEVICE 蘋果

11月26日,由搜狐科技主辦的“2019搜狐科技AI峰會”在北京舉行。 峰會嘉賓——三星電子中國研究院院長張代君在會上針對AI芯片作了題為《Ubiquitous AI Powered b

關(guān)鍵字: AI DEVICE AI技術(shù) 三星電子

(文章來源:中科羅伯特機器人學(xué)院) 發(fā)那科 M-20iA 是一款小型智能機器人,具有可以簡單方便地進行用戶電纜處理的中空手腕機型和可以應(yīng)對大型工件搬運的具有高容許轉(zhuǎn)動慣量手腕的機型,可以

關(guān)鍵字: 機器人 電纜 DEVICE 集成

關(guān)注、星標公眾號,不錯過精彩內(nèi)容 素材來源:網(wǎng)絡(luò) 編輯整理:strongerHuang 對于許多物聯(lián)網(wǎng)設(shè)備而言,擁有一個小型且具有彈性的文件系統(tǒng)至關(guān)重要。 在MCU上運行的文件系統(tǒng)不多,絕大部分人應(yīng)該知道FatFS這個文...

關(guān)鍵字: FATFS LITTLE BOOT DEVICE

嵌入式編程中的復(fù)雜指針的使用 1.說明 2.函數(shù)指針與指針函數(shù) 3.const修飾的指針問題 4.函數(shù)指針直接跳轉(zhuǎn)的問題 5.回調(diào)函數(shù) 6.總結(jié) 1.說明 在C語言編程中,指針是最容易出錯的地方,尤其是在很多指針同時出現(xiàn)...

關(guān)鍵字: 嵌入式編程 DEVICE 回調(diào)函數(shù) 接口
關(guān)閉