嵌入式主機(jī)通用客戶機(jī)驅(qū)動(dòng)程序_第1頁(yè)
嵌入式主機(jī)通用客戶機(jī)驅(qū)動(dòng)程序_第2頁(yè)
嵌入式主機(jī)通用客戶機(jī)驅(qū)動(dòng)程序_第3頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余7頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

主機(jī)的主機(jī)的通用客戶機(jī)驅(qū)動(dòng)程序 KimOttenandBudCaldwellMicrochipTechnologyInc.引隨著Microchip推出具有USBOTG外設(shè)的單片機(jī),單片機(jī)應(yīng)用可以輕松地支持USB 屬于已定義的USB類(lèi)之一,如海量設(shè)備(U盤(pán)和使用Microchip提供的USB通用客戶機(jī)驅(qū)動(dòng)程序,與這些未歸類(lèi)設(shè)備或供應(yīng)商特定設(shè)備進(jìn)行USB通信將變得USB傳USB規(guī)范定義了四種傳輸類(lèi)型數(shù)據(jù)量,在傳輸約束上有較寬的余(如USB帶寬,具有USB傳輸?shù)男畔?,?qǐng)參Microchip應(yīng)用AN1140《

關(guān)于驅(qū)動(dòng)程序隨MicrochipUSB主機(jī)棧一起提供的通用客戶機(jī)驅(qū)動(dòng)程序,對(duì)除端0之外只有IN端點(diǎn)(即,至主機(jī)的數(shù)據(jù)傳輸)和OUT端點(diǎn)(自主機(jī)的數(shù)據(jù)傳輸)的設(shè)備提供支持。默認(rèn)情況下,使用的是端點(diǎn)1。型,都由USB主機(jī)驅(qū)動(dòng)程序管理傳輸類(lèi)型具體使用通用客戶機(jī)驅(qū)動(dòng)程序應(yīng)用架構(gòu)機(jī)USB驅(qū)動(dòng)程序之間的層??傮w架構(gòu)如圖1所示。圖1:應(yīng)用架構(gòu)應(yīng)用通用客戶機(jī)驅(qū)動(dòng)程主機(jī)驅(qū)動(dòng)程配置通用客戶機(jī)驅(qū)動(dòng)程序使用USB配置工具USBConfig.exe者使用usb_config.h,必須把它們包含在項(xiàng)目中。

從下拉式組合框中選取DeviceFamily(目標(biāo)設(shè)備系列)。用客戶機(jī)驅(qū)動(dòng)程序,設(shè)備必須是主機(jī)。USBEmbeddedHost(USBUSBOTG選項(xiàng)都提供主機(jī)功能如果適用選擇-PongBuffermode(乒模式需要更大的數(shù)據(jù)器,但得到的數(shù)據(jù)2:配置工具,MAIN選項(xiàng)卡Host(主機(jī))選項(xiàng)卡(

如果主機(jī)應(yīng)用將使用傳輸事件,選中GenerateTransferEvents(產(chǎn)生傳輸事件)。否則,應(yīng)用必須輪詢(xún)傳輸是否完成。關(guān)于傳輸事件的信息,請(qǐng)參閱“通用客戶機(jī)驅(qū)動(dòng)程序事件”一節(jié)。3:配置工具,HOST選項(xiàng)選中SupportviaVID/PID(通過(guò)VID/PID支持),然后在相應(yīng)字段中輸入U(xiǎn)SB供應(yīng)商ID和產(chǎn)品ID的十六進(jìn)制值。這些值必須以十六

組合框中,選中Generic(通用)。根據(jù)需要填寫(xiě)InitialConfiguration(初始些字段,保持為0即可。點(diǎn)擊AddtoTPL(添加至TPL),更新目標(biāo)4:配置工具,TPL選項(xiàng)Generic選項(xiàng)卡(5)序列號(hào),選中IncludeSerialNumberSupport(包括序列號(hào)支持)并給出序列號(hào)如果在Host選項(xiàng)卡中選中了GenerateTransferEvents,則通用客戶機(jī)驅(qū)動(dòng)程序

應(yīng)終止傳輸。在應(yīng)用中,傳輸在一定選中EnableNAKTimeout(NAK超許的NAK數(shù))。5:配置工具,GENERIC選項(xiàng)通用客戶機(jī)驅(qū)動(dòng)程序事件VIDPID和序(如果支持的話)隨事件一起發(fā)送。數(shù)在Host選項(xiàng)卡的NameofApplicationEventHandler(應(yīng)用事件處理函數(shù)的名稱(chēng))字段中指定(圖3)。關(guān)于事件處理函數(shù)的函數(shù)原型和結(jié)構(gòu)的信息,請(qǐng)參閱Microchip應(yīng)用筆記AN1140《USB

USB外部設(shè)備通信當(dāng)應(yīng)用收EVENT_GENERIC_ATTACH事件之后,它USB外部設(shè)備進(jìn)行通信1歸納了可用的注 有關(guān)API調(diào)用的完整列表,請(qǐng)參考隨根據(jù)應(yīng)用的結(jié)構(gòu)應(yīng)用可以使用這些函數(shù)調(diào)用中的四個(gè)。所有應(yīng)用都要使用函數(shù)用USBHostGenericRead() 和USBHostGenericWrite(),以便在設(shè)備連接之后與之通信。如果應(yīng)用不使用傳輸事件,則將使用函數(shù)USBHostGenericRxIsComplete()和USB 否完成。使用它們的示例見(jiàn)例2。如果應(yīng)用使用傳輸事件,則它在結(jié)束時(shí)將收到EVENT_GENERIC_RX_DONE事件,在寫(xiě)入結(jié)束時(shí)將收到EVENT_GENERIC_TX_DONE事件。在發(fā)起傳輸之前,通過(guò)使用函數(shù)USBHostGenericRxIsBusy()和否已經(jīng)在進(jìn)行中。使用它們的示例見(jiàn)例3。例1:通用客戶機(jī)驅(qū)動(dòng)程序函數(shù)原型BYTEUSBHostGenericReadBYTEdeviceAddressvoid*bufferDWORDlength); BOOL plete(BYTEdeviceAddress,BYTE*errorCodeifif{USBHostGenericRead(deviceAddress,&buffer,sizeof(buffer));}2:使用輪詢(xún)開(kāi)始3:使用傳輸事件開(kāi)始{USBHostGenericRead(deviceAddress,&buffer,sizeof(buffer));}演示程序USB主機(jī)通用客戶機(jī)驅(qū)動(dòng)程序隨USB支持包一起安裝, 提供,地址是位置請(qǐng)參閱版本說(shuō)明(ReleaseNotes)。如何使用驅(qū)動(dòng)程序USB外部設(shè)備進(jìn)行通信。演示的使用USB主機(jī)示例對(duì)一塊Explorer16演使用USB外部設(shè)備示例對(duì)另一塊演示板(或者是Explorer16PICDEM?FSUSB演示板)進(jìn)行編程。USB外部設(shè)備演示板上的溫度和電位計(jì)值。主機(jī)示例向USB外部設(shè)備請(qǐng)求這一信息并將之結(jié)有些應(yīng)用卻沒(méi)有。USB主機(jī)通用客戶機(jī)驅(qū)動(dòng)程序提供了一種簡(jiǎn)單的機(jī)制,能夠與非標(biāo)準(zhǔn)USB設(shè)備類(lèi)的USB外部設(shè)備進(jìn)行連接。

參考文獻(xiàn)Microchip應(yīng)用筆記AN1140《USB主機(jī)棧 Microchip應(yīng)用筆記AN1141《USB主機(jī)棧 詳細(xì)信息,可見(jiàn)隨MicrochipUSB主機(jī)棧一起安裝的Help文件。文件在下面的中:關(guān)于MicrochipUSB解決方案各組件的信息,以及關(guān)于USB主機(jī)客戶機(jī)驅(qū)動(dòng)程序和外部設(shè)備功能驅(qū)動(dòng)程序的信息,請(qǐng)MicrochipUSB設(shè)計(jì)中心關(guān)于USB的通用信息,請(qǐng)BusRevision2.0Specification”,注請(qǐng)注意以下有關(guān)Microchip器件代碼保護(hù)功能的要點(diǎn)Microchip的產(chǎn)品均達(dá)到Microchip中所述的技術(shù)指標(biāo)Microchip確信:在正常使用的情況下,Microchip系列產(chǎn)品是市場(chǎng)上同類(lèi)產(chǎn)品中最安全的產(chǎn)品之一 所知,所有這些行為都不是以Microchip中規(guī)定的操作規(guī)范來(lái)使用Microchip產(chǎn)品的。這樣做的人極可能了知識(shí) Microchip愿與那些注重代碼完整性的客戶合作Microchip或任何其他半導(dǎo)體廠商均無(wú)法保證其代碼的安全性。代碼保護(hù)并不意味著保證產(chǎn)品是“牢不可破”的代碼保護(hù)功能處于持續(xù)發(fā)展中。Mcrcip承諾將不斷改進(jìn)產(chǎn)品的代碼保護(hù)功能。任何試圖破壞Mcrcip代碼保護(hù)功能的行為均可視為 了《數(shù)字器件千年法案(DgalMlenumCyrihtAct)》。如果這種行為導(dǎo)致他人在 的情況下,能您或其他 保護(hù)的成果, 依據(jù)該法案 訟,從而制止這種行為提供本文檔的中文版本僅為了便于理解。忽視文檔中包含的英文部分,因?yàn)槠渲刑峁┝擞嘘P(guān)Mirohip產(chǎn)品性能和使用情況的有用信息。Mcrohipechnologync.及其和相關(guān)公司、各級(jí)主管與員工及事務(wù)機(jī)構(gòu)對(duì)譯文中可能存在的任何差錯(cuò)不承擔(dān)任何責(zé)任。建議參考Mirohipechnoogyn.的英文原版文檔。本物中所述的器件應(yīng)用信息及其他類(lèi)似內(nèi)容僅為您提供利,它們可能由更新之信息所替代。確保應(yīng)用符合技術(shù)規(guī)范,是您自身應(yīng)負(fù)的責(zé)任。Miohip對(duì)這些信息不作任何明示或暗示、或口頭、法定或其他形式的或擔(dān)保,包括但不限于針對(duì)其使用情況、質(zhì)量、性能、適銷(xiāo)性或特定用途的適用性的或擔(dān)保Microchip對(duì)因這些信息及使用這些信息而引起的不承擔(dān)任何責(zé)任。如果將Microchip器件用于生命維持和/或生命安全應(yīng)用,一切風(fēng)險(xiǎn)由買(mǎi)方自負(fù)。買(mǎi)方同意在由此任何一切、索賠、或費(fèi)用時(shí),會(huì)和保障Microcip免于承擔(dān),并加以賠償。在Micrchip保護(hù)下,不得暗中或以其他方式轉(zhuǎn)讓任何證

商Microchip的名稱(chēng)和徽標(biāo)組Microchip徽標(biāo)、dsPIC、KEELOQKEELOQMPLABPICPICmicroPICSTARTPIC32徽標(biāo)、rfPICUNI/OMicrochipTechnologyInc.在和其他國(guó)家或地區(qū)的商標(biāo)。FilterLab、Hampshire、HI-TECHC、LinearActiveThermistor、MXDEV、MXLAB、SEEVALTheEmbeddedControlSolutionsCompanyMicrochipTechnologyInc.og-for-the-DigitalAge、ApplicationMaestroCodeGuard、dsPICDEM、dsPICDEM.net、dsPICworks、dsSPEAK、ECAN、ECONOMONITOR、FanSense、HI-TIDEIn-CircuitSerialProgrammingICSPMindi、MiWi、MPASM、MPLABCertified徽標(biāo)、MPLIB、MPLINK、ICErfLABSelectModeTotalEnduranceTSHARC、UniWinDriver、WiperLock和ZENA均為MicrochipTechnologyInc.在和其他國(guó)家或地區(qū)的商標(biāo)。SQTP是MicrochipTechnologyInc.在的服務(wù)標(biāo)記。ISBN:978-1-60932-198-Microchip位于亞利桑那州Chandler和empe與位于俄勒岡州Gresham的全球總部、設(shè)計(jì)和晶圓生產(chǎn)廠及位于加利福尼亞州和的設(shè)計(jì)中心均通過(guò)了ISO/TS-16949:2002認(rèn)證。公司在PIC?MCU與dsPIC?DSC、KELOQ?跳件、串行EEPROM、單片機(jī)外設(shè)、非易失性器和模擬產(chǎn)品方面的質(zhì)量體系流程均符合ISO/TS-16949:2002。此外,Microchip在開(kāi)發(fā)系統(tǒng)的設(shè)計(jì)和生產(chǎn)方面的質(zhì)量體系也已通過(guò)了ISO9001:2000認(rèn)證。全球銷(xiāo)售及服務(wù)網(wǎng)點(diǎn)美2355WestChandlerBlvd.ChandlerAZ85224-:Fax:::亞特蘭大波士頓Boston1-Fax:芝加哥:1-Fax:Independence,OH達(dá)拉DallasAddisonTX:1-Fax:底特律DetroitFarmingtonHills,MI:1-Fax:科:1-Fax:MissionViejo,CA1-Fax:圣克拉ntaSantaClara,CA多倫多Mississauga,:1-Fax:

亞太地區(qū)AsiaPacificOfficeSuites3707-14,37thFloorTower6,TheGatewayHarbourCity,:852-2401-Fax:852-2401-中國(guó)-:86-10-8528-Fax:86-10-8528-中國(guó)-:86-28-8665-Fax:86-28-8665-中國(guó):86-23-8980-Fax:86-23-8980-中國(guó)-特別行政:852-2401-Fax:852-2401-中國(guó)-:86-25-8473-Fax:86-25-8473-中國(guó):86-532-8502-Fax:86-532-8502-中國(guó)-:86-21-5407-Fax:86-21-5407-中國(guó):86-24-2334-Fax:86-24-2334-中國(guó)-:86-755-8203-Fax:86-755-8203-中國(guó)-:86-27-5980-Fax:86-27-5980-中國(guó):86-29-8833-Fax:86-29-8833-中國(guó):Fax:中國(guó)-:Fax:地區(qū):886-7-536-Fax:886-7-536-地區(qū):886-2-2500-Fax:886-2-2508-

亞太地區(qū)地區(qū):886-3-6578-Fax:886-3-6578-澳大利亞Australia-:61-2-9868-Fax:61-2-9868-:91-80-3090-Fax:91-80-3090-New:91-11-4160-Fax:91-11-4160-:91-20-2566-Fax:91-20-2566-Japan-:81-45-471-Fax:81-45-471-Korea-:82-53-744-Fax:82-53-744-Korea-:82-2-554-Fax:82-2-558-593282-2-558-Malaysia-Kuala:60-3-6201-Fax:60-3-6201-Malaysia-:60-4-227-Fax:60-4-227-菲律賓Philippines:63-2-634-Fax:63-2-634-新加坡:65-6334-Fax:65-6334-Thailand-:66-2-694-Fax:66-2-694-

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論