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

當前位置:首頁 > 嵌入式 > 嵌入式教程
[導讀]基于嵌入式USB的以太網(wǎng)應用系統(tǒng)設計

隨著USB技術的迅速發(fā)展,人們對USB的期望也越來越高。雖然USB技術在臺式計算機領域的地位已經(jīng)固如磐石,但是由于其以主機為中心的拓撲結構,任何一次USB的數(shù)據(jù)傳輸都必須由主機來發(fā)起和控制,所有的 USB設備都只能與主機建立連接。不僅如此,軟件復雜性以及較高的功率要求,使得人們對嵌入式設備中使用USB的興趣與日俱增[1]。嵌入式USB結合以太網(wǎng)技術可以將USB設備轉換到TCP/IP,讓USB 設備不再受距離限制,可以通過網(wǎng)絡隨時隨地訪問USB設備,可以讓一個USB設備供多個用戶使用,從而提高USB設備的利用率。通過使USB設備具備聯(lián)網(wǎng)能力的設備聯(lián)網(wǎng)服務器,可以實現(xiàn)聯(lián)網(wǎng)使用USB存儲、USB視頻和USB打印等。本文提出了一種利用ARM7來實現(xiàn)嵌入式USB的方法,并結合以太網(wǎng)應用技術,使得通過網(wǎng)絡可以方便地訪問USB設備。
1 系統(tǒng)組成及工作原理
    系統(tǒng)硬件結構如圖1所示,系統(tǒng)采用LPC2148控制嵌入式SL811HS和ENC28J60,實現(xiàn)了USB設備與以太網(wǎng)的連接,便于USB設備的網(wǎng)絡共享和數(shù)據(jù)的遠距離傳輸。SL811HS主要實現(xiàn)USB HOST的功能,它能夠識別USB設備,并能夠對該設備進行讀寫操作。ENC28J60主要完成系統(tǒng)的網(wǎng)絡通信,實現(xiàn)對系統(tǒng)USB設備的遠程訪問。


2 系統(tǒng)模塊設計[2-3]
    LPC2148是一個支持實時仿真和跟蹤的16/32位ARM7TDMI-STM CPU的微控制器,并帶有512KB嵌入的高速片內Flash存儲器。片內128位寬度的存儲器接口和獨特的加速結構使32位代碼能夠在最大的時鐘頻率下運行。對代碼規(guī)模有嚴格控制的應用可以使用16位Thumb模式將代碼降低超過30%,而犧牲的性能卻很小。LPC2148具有較小的64腳封裝,最多可以使用46個GPIO。其極低的功耗、多個32位定時器、多路10位ADC、1路DAC以及豐富的接口使其特別適合于工業(yè)控制、醫(yī)療系統(tǒng)、訪問控制嵌入式MODEM等各種類型的應用。選用LPC2148的原因是它片內集成了Flash、RAM、SPI接口,使得外圍電路簡單,性價比高。
    ENC28J60是美國微芯科技公司于2005年推出的全球首枚28引腳獨立以太網(wǎng)控制器,可為嵌入式應用提供低引腳數(shù)、低成本且高效易用的遠程通信解決方案。此外,ENC28J60以太網(wǎng)控制器采用業(yè)界標準的SPI串行接口,只需很少的連線即可與主控芯片機連接,使如圖2所示。其中的CS和RESET接到主控芯片是為了使軟件設計更靈活。


     SL811HS是Cypress公司設計的嵌入式USB主機設備控制器,在嵌入式系統(tǒng)中應用很廣泛,能通過軟件控制選擇主從方式,支持低速和全速傳輸并自動檢測低速或全速設備,通過A0區(qū)分地址和數(shù)據(jù),并支持地址自增模式。SL811HS與主控芯片的接口電路如圖3所示。


[!--empirenews.page--]3 軟件設計
  系統(tǒng)軟件主要由嵌入式TCP/IP程序和嵌入式USB兩個部分組成。系統(tǒng)程序通過收到的以太網(wǎng)數(shù)據(jù)包的類型來進行相應的處理,完成特定的功能。例如通過以太網(wǎng)遠程登陸的方式瀏覽和修改本地數(shù)據(jù),達到本地數(shù)據(jù)網(wǎng)絡共享的目的。
3.1 嵌入式TCP/IP實現(xiàn)
  嵌入式TCP/IP實現(xiàn)包括以太網(wǎng)控制器ENC28J60底層驅動、TCP/IP協(xié)議。ENC28J60 可與許多主控制器上的SPI接口直接相連。此器件只支持SPI 的0,0模式。另外,SPI 端口要求SCK 在空閑狀態(tài)時為低電平,不支持時鐘極性選擇。在SCK 的每個上升沿移入數(shù)據(jù),命令和數(shù)據(jù)通過SI 引腳送入器件。 ENC28J60在SCK的下降沿從SO引腳輸出數(shù)據(jù)。當執(zhí)行操作時CS 引腳必須保持低電平,當操作完成時返回高電平[4]。
3.1.1ENC28J60底層驅動
  在使用ENC28J60發(fā)送和接收數(shù)據(jù)包前,必須對器件進行初始化設置。根據(jù)應用的不同,一些配置選項可能需要更改。通常初始化任務會在復位之后立即完成,并且不再需要更改。初始化任務主要包括:(1)初始化接收緩沖器:在接收數(shù)據(jù)包前,必須編程ERXST和ERXND指針來對接收緩沖器進行初始化。ERXST與ERXND之間的存儲空間專供接收硬件使用。(2)初始化發(fā)送緩沖器:所有未被用作接收緩沖器的存儲空間都將作為發(fā)送緩沖器,故不需要專門對發(fā)送緩沖器進行專門的初始化。(3)等待OST:如果在上電復位后立即進行初始化,應查詢ESTAT.CLKRDY位,確保在開始修改MAC和PHY寄存器前已經(jīng)經(jīng)過足夠長的時間。(4)PHY初始化:PHY寄存器不能通過SPI控制接口直接訪問,而是通過一組帶有MIIM的特殊MAC控制寄存器來完成的。程序中在配置LED時用到了PHY寫函數(shù)。寫PHY寄存器時,先將PHY寄存器的地址寫入MIREGADR,然后將要寫入高低8位的內容分別寫入MIWRH、MIWRL即可。
  發(fā)送數(shù)據(jù)包時,ENC28J60會自動生成前導符和幀起始定界符。此外MAC還可以根據(jù)配置自動生成填充和CRC字段。主控制器要生成所有其他幀字段,并將他們寫入緩沖器,以待發(fā)送。此外,ENC28J60還要求在待發(fā)送的數(shù)據(jù)包前添加一個包的控制字節(jié)。接收數(shù)據(jù)包時可以使用中斷的方式,也可以使用查詢的方式。由于本設計對實時性要求不是很高,故采用查詢的方式。如果有數(shù)據(jù)包到達,ENC28J60將置位EIR寄存器的PTKIF位。程序運行時不斷地查詢該位以判斷有無數(shù)據(jù)包到達。
3.1.2 以太網(wǎng)數(shù)據(jù)包處理
  網(wǎng)絡協(xié)議通常是在不同的協(xié)議層上進行開發(fā),每一層負責不同的通信功能。TCP/IP 協(xié)議是一組不同層次上的多個協(xié)議的組合。當系統(tǒng)收到以太網(wǎng)的數(shù)據(jù)時,數(shù)據(jù)就開始從協(xié)議中由數(shù)據(jù)鏈路層逐層剝離其中各層協(xié)議所加的首部。主程序按照以太網(wǎng)數(shù)據(jù)幀分用的思路進行編制,程序框架如圖4所示。

                                                            圖4


3.2  嵌入式USB實現(xiàn)[5-6]
  嵌入式USB軟件主要分成4個部分:SL811HS初始化、USB設備的識別及配置、海量存儲協(xié)議和FAT文件系統(tǒng)。SL811HS共有16個配置寄存器,其中00-04H、08H-0CH是USB-A、USB-B的工作配置寄存器,05H是控制寄存器1,06H是中斷使能寄存器,07H的各位均為保留位,0DH為狀態(tài)寄存器,0EH為SOF計數(shù)寄存器,0FH為SOF計數(shù)寄存器的高位和控制寄存器2。在SL811HS上電開始工作之后,首先將寄存器05H的第3位置1,延時30 ms后清零,便可以對USB總線復位;然后在06H寄存器中寫入61H,使能設備檢測中斷。
  當有設備插入時,會使SL811HS的D+管腳置高,SL811HS的寄存器0DH的第7位置1并產(chǎn)生中斷,系統(tǒng)會識別到有USB設備插入,即可對USB設備進行配置了。通過標準設備請求函數(shù)ClearFeaure()、GetConfiguration()、GetDescriptor()、SetAddress()等函數(shù)完成對設備的配置。
  本系統(tǒng)可以檢測U盤的狀態(tài)(如接入、拔出),通過網(wǎng)絡對U盤的訪問,包括創(chuàng)建文件、目錄和讀寫文件等,實現(xiàn)了USB設備網(wǎng)絡共享的目的。 但是由于不同USB設備的驅動通常也不同,USB作為嵌入式應用時不可能像PC機操作系統(tǒng)把所有的驅動都裝上。但是隨著嵌入式技術的發(fā)展,可以采用網(wǎng)絡更新驅動的方式,只要某種USB設備接上就可以通過更新系統(tǒng)的固件,達到識別該設備和使用該設備的目的。這也是本系統(tǒng)目前這也是本系統(tǒng)目前需要完善的地方。

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

經(jīng)過幾十年發(fā)展,嵌入式技術已經(jīng)用在了我們生活中的方方面面,但是嵌入式始終都帶有小眾,專業(yè)性強的屬性,讓很多非嵌入式領域的同學望而卻步。近十幾年的發(fā)展,物聯(lián)網(wǎng)覆蓋了越來越多領域,包括了家居,商業(yè),工業(yè),農(nóng)業(yè)等領域,不僅吸引...

關鍵字: 嵌入式 物聯(lián)網(wǎng) 技術

隨著IT技術飛速發(fā)展,互聯(lián)網(wǎng)已經(jīng)進入了“物聯(lián)網(wǎng)”時代。物聯(lián)網(wǎng)中需要的大量設備不在依賴人與人之間的交互產(chǎn)生聯(lián)系,更多通過協(xié)議、通信、程序設計等方式連接到一處。即 “物聯(lián)網(wǎng)”的目的則是讓所有的物品都具有計算機的智能但并不以通...

關鍵字: 嵌入式 物聯(lián)網(wǎng) 計算機

最近看到APP上,給我推送了很多類似的回答,借此機會,也想著重新審視一下自己的學習歷程,以及結合自身和大牛,分享一些學習經(jīng)驗,希望對大家有所啟發(fā)和幫助。

關鍵字: APP 嵌入式 C語言

USB-C接口全稱為USB Type-C,屬于USB 3.0下一代接口,其亮點在于更加纖薄的設計、更快的傳輸速度(最高可達10Gbps)、更強的電力傳輸(最高100W),此外USB-C接口還支持雙面插入,正反面隨便插,相...

關鍵字: iPhone 15 Lightning USB

萬物智聯(lián)時代,嵌入式技術及其應用的形態(tài)將更加豐富和多元,同時也將日益呈現(xiàn)深度物理融合、混合架構共存、群體智能協(xié)同、網(wǎng)絡安全攸關等諸多新的計算特性。顯然,經(jīng)典的嵌入式系統(tǒng)體系結構、軟硬件技術和開發(fā)方法都已很難應對新趨勢下的...

關鍵字: 嵌入式 物聯(lián)網(wǎng) 計算機

物聯(lián)網(wǎng)是新一代信息技術的重要組成部分,是互聯(lián)網(wǎng)與嵌入式系統(tǒng)發(fā)展到高級階段的融合。通用計算機經(jīng)歷了從智慧平臺到互聯(lián)網(wǎng)的獨立發(fā)展道路;嵌入式系統(tǒng)則經(jīng)歷了智慧物聯(lián)到局域智慧物聯(lián)的獨立發(fā)展道路。

關鍵字: 嵌入式 物聯(lián)網(wǎng) 計算機

在下述的內容中,小編將會對交換機的相關消息予以報道,如果交換機是您想要了解的焦點之一,不妨和小編共同閱讀這篇文章哦。

關鍵字: 交換機 工業(yè)交換機 以太網(wǎng)

今天,小編將在這篇文章中為大家?guī)砉た刂靼宓挠嘘P報道,通過閱讀這篇文章,大家可以對工控主板具備清晰的認識,主要內容如下。

關鍵字: 工控主板 嵌入式 主板

隨著工業(yè)4.0、醫(yī)療電子、智能家居、物流管理和電力控制等快速的發(fā)展和推進,嵌入式系統(tǒng)利用自身的技術特點,逐漸成為眾多行業(yè)的標配產(chǎn)品。嵌入式系統(tǒng)具有可控制、可編程、成本低等,它在未來的工業(yè)和生活中有著廣闊的應用前景。在現(xiàn)在...

關鍵字: 嵌入式 物聯(lián)網(wǎng) 人工智能

長久來看,嵌入式只會越來越火,隨著人工智能時代的發(fā)展,嵌入式必定又將迎來一次浪潮和技術的巨大變革。人工智能越是想要表達智能水平,就越要依靠嵌入式技術,嵌入式技術將朝著自動化控制和人機交互發(fā)展。嵌入式因其體積小、可靠性高、...

關鍵字: 嵌入式 物聯(lián)網(wǎng) 人工智能

嵌入式教程

6897 篇文章

關注

發(fā)布文章

編輯精選

技術子站

關閉