基于單片機(jī)的USB主從機(jī)的設(shè)計(jì)與實(shí)現(xiàn)
發(fā)布時(shí)間:2020-04-28 21:21
【摘要】: 隨著總線和接口技術(shù)的發(fā)展,在工業(yè)場(chǎng)合如何更加可靠、快速、便捷地進(jìn)行數(shù)據(jù)傳輸成為該領(lǐng)域通信的研究重點(diǎn)之一。而USB技術(shù)以其高速、可靠、通用性強(qiáng)等一系列特點(diǎn)在過(guò)去的十多年時(shí)間里發(fā)展迅猛,而USB OTG技術(shù)的誕生,使得兩USB設(shè)備在沒(méi)有PC參與的情況下進(jìn)行數(shù)據(jù)傳輸成為可能。 本文通過(guò)搭建以16位微處理器MSP430F149為核心控制芯片、ISP1362為USB接口芯片的硬件平臺(tái),分別實(shí)現(xiàn)了USB部分主機(jī)和從機(jī)功能,使之能進(jìn)行USB數(shù)據(jù)的存儲(chǔ)與交換。本文完成以下工作: 首先,認(rèn)真研究USB協(xié)議,深入理解USB通信的基本概念和傳輸方式等內(nèi)容。仔細(xì)分析USB Mass Storage類協(xié)議,并討論了采用BULK-ONLY傳輸實(shí)現(xiàn)Mass Storage類協(xié)議的方法,并對(duì)SCSI指令集等進(jìn)行了深入的剖析。 其次,根據(jù)要求,設(shè)計(jì)出由控制、接口、數(shù)據(jù)存儲(chǔ)、過(guò)流保護(hù)與供電切換電路等硬件模塊組成的系統(tǒng),在ALTIUM 2004軟件上完成原理圖的設(shè)計(jì)和PCB圖的布局、布線,并完成硬件調(diào)試工作。 再次,在已構(gòu)建的硬件平臺(tái)上,針對(duì)ISP1362 USB接口芯片的主/從機(jī)功能,分別設(shè)計(jì)了USB主機(jī)和從機(jī)的固件程序。利用IAR Workbench、BusHound等軟件進(jìn)行固件程序的調(diào)試,最終USB主機(jī)可對(duì)U盤(pán)進(jìn)行檢測(cè)、識(shí)別與配置;USB設(shè)備實(shí)現(xiàn)了USB設(shè)備的基本功能,能夠被Windows XP操作系統(tǒng)識(shí)別,與PC機(jī)之間實(shí)現(xiàn)數(shù)據(jù)的批量傳輸。 最后,用DriverWorks軟件包的Driver Wizard生成驅(qū)動(dòng)程序框架,并利用Windows DDK和VC++等軟件進(jìn)行驅(qū)動(dòng)程序的編譯,最終生成基于Windows操作系統(tǒng)的WDM型USB設(shè)備驅(qū)動(dòng)程序。 通過(guò)對(duì)USB通信協(xié)議的研究,本人成功地構(gòu)建了以MSP430F149和ISP1362為核心的硬件試驗(yàn)平臺(tái),并在此平臺(tái)上進(jìn)行USB主機(jī)、從機(jī)通信試驗(yàn)。經(jīng)測(cè)試表明,PC機(jī)能檢測(cè)、識(shí)別、讀寫(xiě)USB設(shè)備,其讀取與寫(xiě)入速度分別為560KB/s和312KB/s。而主機(jī)能識(shí)別、配置接入的U盤(pán)。
【圖文】:
移動(dòng)設(shè)備間的互連和數(shù)據(jù)交換。OTG 的最大特點(diǎn)在于,可實(shí)現(xiàn) OTG 設(shè)備之間點(diǎn)對(duì)點(diǎn)的通信[3][5]。進(jìn)行點(diǎn)對(duì)點(diǎn)通信的雙方仍跟一般 USB 通信一樣,有一方擔(dān)任主機(jī)的角色,一方擔(dān)任從機(jī)設(shè)備的角色。具有 OTG 功能的設(shè)備,可以根據(jù)接入設(shè)備的特性和數(shù)據(jù)傳輸?shù)木唧w情況而自動(dòng)切換主機(jī)或從機(jī)的身份,完成數(shù)據(jù)的傳輸。因此,OTG 設(shè)備也可稱為雙角設(shè)備。
圖 2-4 SETUP 事務(wù)處理格式[2] 可選數(shù)據(jù)階段顧名思義,這一步驟是可選的。當(dāng)有數(shù)據(jù)傳輸時(shí),,該數(shù)據(jù)階段將包括1個(gè)或者多個(gè)IN/OUT事務(wù)。這些事務(wù)的作用就是傳輸 USB 定義格式的數(shù)據(jù),數(shù)據(jù)的傳輸方向和長(zhǎng)度也都在初始設(shè)置階段確定。不同的請(qǐng)求,其數(shù)據(jù)傳輸?shù)姆较蚝烷L(zhǎng)度亦不同。當(dāng)數(shù)據(jù)階段發(fā)送或接收的數(shù)據(jù)量大于建立階段所規(guī)定的數(shù)據(jù)量,則返回 STALL 握手包。在控制事務(wù)的數(shù)據(jù)階段種返回STALL 握手包,則該控制事務(wù)將不經(jīng)歷狀態(tài)階段,見(jiàn)圖 2-5。出錯(cuò)ACK空閑DATA0數(shù)據(jù)包握手包
【學(xué)位授予單位】:電子科技大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2007
【分類號(hào)】:TP334.7;TP368.12
本文編號(hào):2643879
【圖文】:
移動(dòng)設(shè)備間的互連和數(shù)據(jù)交換。OTG 的最大特點(diǎn)在于,可實(shí)現(xiàn) OTG 設(shè)備之間點(diǎn)對(duì)點(diǎn)的通信[3][5]。進(jìn)行點(diǎn)對(duì)點(diǎn)通信的雙方仍跟一般 USB 通信一樣,有一方擔(dān)任主機(jī)的角色,一方擔(dān)任從機(jī)設(shè)備的角色。具有 OTG 功能的設(shè)備,可以根據(jù)接入設(shè)備的特性和數(shù)據(jù)傳輸?shù)木唧w情況而自動(dòng)切換主機(jī)或從機(jī)的身份,完成數(shù)據(jù)的傳輸。因此,OTG 設(shè)備也可稱為雙角設(shè)備。
圖 2-4 SETUP 事務(wù)處理格式[2] 可選數(shù)據(jù)階段顧名思義,這一步驟是可選的。當(dāng)有數(shù)據(jù)傳輸時(shí),,該數(shù)據(jù)階段將包括1個(gè)或者多個(gè)IN/OUT事務(wù)。這些事務(wù)的作用就是傳輸 USB 定義格式的數(shù)據(jù),數(shù)據(jù)的傳輸方向和長(zhǎng)度也都在初始設(shè)置階段確定。不同的請(qǐng)求,其數(shù)據(jù)傳輸?shù)姆较蚝烷L(zhǎng)度亦不同。當(dāng)數(shù)據(jù)階段發(fā)送或接收的數(shù)據(jù)量大于建立階段所規(guī)定的數(shù)據(jù)量,則返回 STALL 握手包。在控制事務(wù)的數(shù)據(jù)階段種返回STALL 握手包,則該控制事務(wù)將不經(jīng)歷狀態(tài)階段,見(jiàn)圖 2-5。出錯(cuò)ACK空閑DATA0數(shù)據(jù)包握手包
【學(xué)位授予單位】:電子科技大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2007
【分類號(hào)】:TP334.7;TP368.12
【引證文獻(xiàn)】
相關(guān)碩士學(xué)位論文 前4條
1 閔浩;基于單片機(jī)的USB接口電路及其在數(shù)據(jù)通信中的應(yīng)用[D];武漢科技大學(xué);2011年
2 戴麗莉;基于ARM的嵌入式USB主機(jī)系統(tǒng)的研究[D];哈爾濱理工大學(xué);2011年
3 黃櫻;嵌入式系統(tǒng)中USB HOST技術(shù)研究與實(shí)現(xiàn)[D];中南大學(xué);2008年
4 顧雷雷;基于USB的通信與接口驅(qū)動(dòng)的研究[D];合肥工業(yè)大學(xué);2010年
本文編號(hào):2643879
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/2643879.html
最近更新
教材專著