當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]USB接口單片機SL11R的特點及應(yīng)用

1 USB接口簡介

    USB總線是通用串行總線(Universal Serial Bus)的簡稱,已經(jīng)成為PC機的標(biāo)準(zhǔn)接口。目前586以上的PC機基本上都已經(jīng)配置了USB接口。USB接口具有數(shù)據(jù)傳輸速率高、使用方便等特點。USB1.1協(xié)議規(guī)定的全速傳輸速率為12Mbit/s,而USB2.0協(xié)議所規(guī)定的高速傳輸速率為480Mbit/s,非常適合有大量數(shù)據(jù)傳輸?shù)南到y(tǒng)。USB設(shè)備即插即用,無需重新啟動計算機。

2 SL11R介紹

2.1 SL11R概述

    SL11R是Scanlogic公司的SL11產(chǎn)品家族的一員,是一種帶USB接口的16位單片機,內(nèi)部運行頻率為48MHz,采用RISC結(jié)構(gòu),有16位數(shù)據(jù)總線,32位通用I/O口(GPIO),其中22位可作為地址總線進行尋址(A0~A21),可以直接擴展多種外設(shè)。

2.2 SL11R主要特點

    ·USB接口   SL11R的USB接口符合USB1.1協(xié)議,有四個端點(endpoint),兩種數(shù)據(jù)傳輸速率,全速模式為12Mbit/s,低速模式為1.5Mbit/s,并且具有USB協(xié)議所規(guī)定的四種數(shù)據(jù)傳輸方式,即控制傳輸方式(Control mode)、同步傳輸方式(Iochronous mode)、中斷傳輸方式(Intrerupt mode)、批量傳輸方式(Bluk mode)。

    ·硬件資源豐富 SL11R有3K字節(jié)的內(nèi)部RAM、兩個定時器、兩個外部中斷、一個看門狗電路、一個普通串行接口(UART)、32位通用可編程I/O口(GPIO)、一個16位的可編程DMA接口、四個PWM輸出引腳及擴展外圍元件用的控制引腳。SL11R的外圍元件擴展非常方便,擴展EPROM、串行E2PROM、SRAM即EDO DRAM等常用元件時均無需另加控制電路。

    ·多種工作方式  SL11R有四種工作模式,即通用輸入輸出模式、快速增強并行端口模式、8位/16位DMA模式、DVC8位DMA模式,可根據(jù)實際應(yīng)用場合用軟件進行設(shè)置。尤其8位DVC模式,可以直接與CCD接口,方便地開發(fā)CCD圖像采集系統(tǒng)或數(shù)碼相機。

    ·無需專用開發(fā)裝置  SL11R內(nèi)部有3K×16位的程序存儲器,類似于80X86的BIOS,已經(jīng)把單片機的啟動配置、聯(lián)機調(diào)試及常用功能等固化在內(nèi)部,開發(fā)者直接調(diào)用即可。CPU復(fù)位后,內(nèi)部BIOS會把外部程序存儲器中的代碼讀入內(nèi)部RAM中執(zhí)行。如果沒有外部程序存儲器,SL11R會自動運行在監(jiān)控狀態(tài),與PC機進行聯(lián)機通訊,并能夠在線對線路板上的串行EEPROM進行編程或直接調(diào)試程序。由此可見,SL11R無需專用開發(fā)裝置就可以進行開發(fā),這一點對開發(fā)者非常有利。由于SL11R可以在線編程,這就意味著即使用戶也可以進行軟件升級。這一點對新產(chǎn)品開發(fā)很必要,因為有些BUG可能要用戶使用后才能發(fā)現(xiàn)。

2.3  SL11R工作方式簡介

    ·通用輸入輸出模式(GPIO模式) 在這種模式下,SL11R的外部有32個通用輸入輸出引腳,其中4個已經(jīng)分配給USB和UART串行接口專用,其他28個引腳可以通過軟件編程,分別設(shè)置成輸入或輸出狀態(tài)。這種模式一般用于處理普通的外部并行接口類設(shè)備的數(shù)據(jù),是用途較廣的模式。

    ·快速增強并行端口模式(Fast EPP模式)    快速增強并行端口(Fast EPP)是計算機外設(shè)的一種標(biāo)準(zhǔn)并行接口。SLR11R在這種模式下,可以直接讀寫快速EPP并行增強端口。一般用于USB接口和Fast EPP接口的轉(zhuǎn)換。

    ·8位/16位快速DMA模式 SL11R的DMA模式包括郵箱協(xié)議(Mailbox Protocol)和DMA協(xié)議兩種方式。郵箱協(xié)議工作方式允許外部處理器與SL11R進行異步通訊,它們通過郵箱的輸入、輸出寄存器交換數(shù)據(jù)。DMA協(xié)議工作方式一般用于SL11R與外部設(shè)備大量的數(shù)據(jù)高速傳輸。這種傳輸無需CPU的干預(yù),而且允許外設(shè)直接與DRAM進行數(shù)據(jù)交換,適合數(shù)據(jù)量大的場合,如打印機、Modem、掃描儀等。

    SL11R在DMA模式下,還有四個可編程的PWM輸出引腳,可以控制DMA模式下的外設(shè)與不同的外設(shè)通訊,如連接CCD、CIS、COMS等圖像傳感器或其他外設(shè)。只要根據(jù)外設(shè)的控制要求對PWM編程,就可以控制外設(shè)在DMA模式下傳輸數(shù)據(jù)。

    ·DVC8位DMA模式    這種模式專門用于與CCD相機接口,SL11R通過串行方式控制CCD相機,圖像數(shù)據(jù)以DMA的方式傳給SL11R。

3 SL11R設(shè)計應(yīng)用

3.1 SL11R硬件設(shè)計

    SL11R的硬件設(shè)計比較簡單,因為實際應(yīng)用中一般的外圍元件可以直接擴展。Scanlogic公司在開發(fā)套件中提供了一個比較完善的電路圖,但對一些簡單應(yīng)用場合顯得稍繁瑣。事實上SL11R的內(nèi)部有3K字節(jié)的RAM,在數(shù)據(jù)量不是特別大的場合,無需擴展外部數(shù)據(jù)存儲器。圖1是筆者設(shè)計的SL11R應(yīng)用的一個基本電路,已經(jīng)在實際項目中應(yīng)用。

 

 

    雖然SL11R經(jīng)過編程可以使用12MHz晶振,但調(diào)試模式不支持12MHz,而且筆者在實際使用過程中發(fā)現(xiàn),如果晶振質(zhì)量不太好,電路穩(wěn)定性稍差。故建議在條件許可的情況下,盡量使用48MHz的晶振。

    SL11R的工作電壓為3.3V,電路中其它元件均應(yīng)選用低電壓型器件。

    Scanlogic公司提供的SL11R開發(fā)工具中附帶有調(diào)試程序,在線調(diào)試時需要使用RS232口,所以電路中設(shè)計了RS232接口芯片。

3.2 SL11R固件設(shè)計

    SL11R的固件直接控制CPU的運行,程序代碼可以存儲在外部EPROM或I2C串行EEPROM中,甚至可以存在主機上,在適當(dāng)?shù)臅r候下載到SL11R的內(nèi)部運行。最簡單的方式是把代碼寫到串行EEPROM中,因為SL11R提供了專用的工具軟件可以直接對EEPROM在線編程,無需另外的編程裝置。

3.2.1 SL11R程序結(jié)構(gòu)

    SL11R匯編語言的語法結(jié)構(gòu)與80X86相似,而且也有內(nèi)部BIOS。[!--empirenews.page--]

    MCS51等沒有BIOS的單片機,需要開發(fā)者控制CPU的每一步運行,程序必須在某一段反復(fù)循環(huán),程序結(jié)構(gòu)見圖2。SL11R由于有BIOS支持,它的程序結(jié)構(gòu)就與MCS51有所區(qū)別。SL11R的主體循環(huán)是在BIOS內(nèi)部,實際上用戶程序一般只是BIOS的中斷響應(yīng)子程序。也就是說,開發(fā)者所編的SL11R的用戶程序可以沒有主循環(huán)體。SL11R的用戶程序結(jié)構(gòu)見圖3。值得指出的是,開發(fā)者也可以擺脫BIOS的控制,程序不在BIOS內(nèi)部循環(huán)。但該程序設(shè)計難度較大,因為這時開發(fā)者需要自己直接處理USB接口的底層軟件,一般沒有特殊要求不要使用這種方式。

 

 

3.2.2  SL11R的USB接口編程

    SL11R的大部分功能都可以通過BIOS調(diào)用實現(xiàn)。USB的編程也是調(diào)用BIOS實現(xiàn)。SL11R復(fù)位后會自動配置USB接口,與主機建立USB通訊,一般情況下開發(fā)者可以不進行干預(yù)。

    開發(fā)者主要使用的與USB有關(guān)的BIOS軟件中斷:

    ·USB_STAND_INT、USB_CLASS_INT、USB_VENDOR_

INT、USB_FINISH_INT 這些中斷主要是為了實現(xiàn)USB通訊,其中USB_VENDOR_INT是接受主機控制指令中斷,主機對SL11R的控制基本上都是通過它實現(xiàn)的。

    ·USB_SEND_INT、USB_RECEIVE_INT這兩個中斷用于USB發(fā)送、接收數(shù)據(jù)??梢酝ㄟ^配置,分別使用USB的四個端口。

3.3 主機軟件設(shè)計

    要開發(fā)SL11R主機軟件,一種簡單、快捷的方式是借助于SL11R開發(fā)工具包(SL11R DVK)。通過學(xué)習(xí)工具包中附帶的例子程序可以在較短的時間內(nèi)開發(fā)出一個應(yīng)用軟件,用戶不需自己開發(fā)驅(qū)動程序。該工具包可以從ScanLogic公司的網(wǎng)站(www.scanlogic.com)下載得到。工具包中包括的內(nèi)容有:通用驅(qū)動程序、例子程序和開發(fā)用的文檔資料。對于一般的開發(fā)工作可以直接使用工具包中的驅(qū)動。用于Windows98系統(tǒng)的三個文件分別是: slusbgen.sys、usb2epp.sys和usbdev.inf。

    在AppWizard (zip)源代碼包中,可以找到用VC寫成的主機例子程序(usbtest.exe)的源代碼。其中有幾個文件對利用ScanLogic公司提供的驅(qū)動程序來開發(fā)應(yīng)用程序很有幫助。在頭文件slusb.h中含有如下函數(shù)原型:

    BOOL FAR PASCAL CloseUsbDev(VOID); //關(guān)閉USB口

    BOOL FAR PASCAL FindUsbDev(WORD wProd);  //打開USB口

    BOOL UsbVendorCmdRead(BYTE bCmd,WORD wValue,

    WORD wIndex, WORD wLen, PVOID pData);  //發(fā)送讀控制指令

    BOOL UsbVendorCmdWrite(BYTE bCmd, WORD wValue,

    WORD wIndex, WORD wLen, PVOID pData); //發(fā)送寫控制指令

    BOOL UsbDataRead(DWORD n, PVOID pData);  //讀數(shù)據(jù)塊

    BOOL UsbDataWrite(DWORD n, PVOID pData); //寫數(shù)據(jù)塊

    只要在應(yīng)用程序中靈活用好以上幾個函數(shù),做一些簡單的數(shù)據(jù)采集工作是完全可行的,筆者就是借用這幾個函數(shù)在實際工作中成功完成了應(yīng)用系統(tǒng)的開發(fā)。

    文件devioctl.h包含有slusb.h中需要的常數(shù)和宏的定義。在文件usbtest.cpp中定義了控制SL11R操作的指令代碼。

    SL11R是一種功能強大的USB接口單片機,它的16位總線及DMA傳輸模式允許進行大容量數(shù)據(jù)的高速傳輸,可以進行高速數(shù)據(jù)采集。而且SL11R的編程簡單,無需專用開發(fā)裝置,開發(fā)成本低,初次接觸USB的開發(fā)人員可以很容易實現(xiàn)應(yīng)用系統(tǒng)的開發(fā)。

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

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

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

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉