亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于PDIUSBD12的USB接口設(shè)計(jì)應(yīng)用研究

        2010-11-07 08:40:44劉彥黔南民族師范學(xué)院計(jì)算機(jī)科學(xué)系558000
        中國(guó)科技信息 2010年9期
        關(guān)鍵詞:枚舉描述符外設(shè)

        劉彥 黔南民族師范學(xué)院計(jì)算機(jī)科學(xué)系 558000

        基于PDIUSBD12的USB接口設(shè)計(jì)應(yīng)用研究

        劉彥 黔南民族師范學(xué)院計(jì)算機(jī)科學(xué)系 558000

        USB設(shè)備的廣泛使用,使得USB接口的設(shè)計(jì)與開(kāi)發(fā)越來(lái)越重要,PHILIPS公司的USB接口控制芯片PDIUSBD12性價(jià)比高簡(jiǎn)單易用,是較為理想的USB接口設(shè)計(jì)開(kāi)發(fā)芯片。文章主要從主機(jī)與PDIUSBD12之間的數(shù)據(jù)通信過(guò)程的層面來(lái)介紹USB設(shè)備的設(shè)計(jì)開(kāi)發(fā)。

        USB;PDIUSBD12;端點(diǎn);描述符

        1.引言

        USB以其傳輸速度快、可靠性高、易于擴(kuò)展、功耗低等優(yōu)點(diǎn)已被廣泛地應(yīng)用在計(jì)算機(jī)外設(shè)中,已成為計(jì)算機(jī)與外設(shè)通信的主流接口。而PHILIPS公司的PDIUSBD12芯片以其價(jià)格便宜、接口方便、可靠性高等特點(diǎn)較為廣泛的在USB設(shè)備接口系統(tǒng)中被選用。PDIUSBD12芯片是純粹的USB接口芯片,僅負(fù)責(zé)處理USB的通信,設(shè)計(jì)時(shí)還必須要選用一個(gè)MCU來(lái)進(jìn)行協(xié)議處理和數(shù)據(jù)交換。

        2.USB設(shè)備的插入檢測(cè)

        USB主機(jī)輪流查詢各個(gè)USB端口,當(dāng)USB設(shè)備插入U(xiǎn)SB端口時(shí)由PDIUSBD12內(nèi)部集成的上拉電阻使主機(jī)檢測(cè)到D+與D-之間有電壓差,就認(rèn)為有新的USB設(shè)置接入。

        3.USB設(shè)備的枚舉

        USB枚舉指的是USB主機(jī)從USB設(shè)備讀取USB的各種描述符信息,從而知道是什么設(shè)備,如何進(jìn)行通信等,然后根據(jù)這些信息來(lái)加載合適的驅(qū)動(dòng)程序。

        3.1 獲取部分設(shè)備描述符請(qǐng)求

        主機(jī)檢測(cè)到有新的USB設(shè)置接入等待100ms后向USB設(shè)備發(fā)出復(fù)位請(qǐng)求,USB設(shè)備接到復(fù)位請(qǐng)求后,設(shè)置其地址為0,并產(chǎn)生一個(gè)外部中斷信號(hào)通知主機(jī),新接入的USB可以地址0來(lái)進(jìn)行通信,然后USB主機(jī)向地址為0的設(shè)備的端點(diǎn)0發(fā)送獲取設(shè)備描述符請(qǐng)求,設(shè)備收到該請(qǐng)求后,按固定格式返回一個(gè)端點(diǎn)0所支持的最大數(shù)據(jù)包的設(shè)備描述符給主機(jī)。由于PDIUSBD12的端點(diǎn)0只有16個(gè)字節(jié)(在所獲取的設(shè)備描述符的第8個(gè)字節(jié)處可看到PDIUSBD12端點(diǎn)0的最大包長(zhǎng)),而標(biāo)準(zhǔn)的設(shè)備描述符為18字節(jié),這一次的請(qǐng)求只能獲取部分(16個(gè)字節(jié))設(shè)備描述符。

        3.2 設(shè)置USB設(shè)備地址

        在第一次復(fù)位并獲取部分設(shè)備描述符后,USB主機(jī)再對(duì)設(shè)備復(fù)位一次,并往地址0的端點(diǎn)0發(fā)出一個(gè)SET_ADDRESS設(shè)置地址的請(qǐng)求(見(jiàn)表1),該地址是由USB主機(jī)負(fù)責(zé)分配并且是唯一的。USB設(shè)備在收到該地址后,返回0長(zhǎng)度的狀態(tài)包,主機(jī)收到狀態(tài)包,就會(huì)返回一個(gè)應(yīng)答包ACK給設(shè)備。設(shè)備在收到這個(gè)ACK之后,就可以啟用新的地址了。這樣設(shè)備就分配到了一個(gè)唯一的設(shè)備地址,以后主機(jī)就可以通過(guò)它來(lái)進(jìn)行訪問(wèn)該設(shè)備了。

        表1 SET_ADDRESS請(qǐng)求的結(jié)構(gòu)

        3.3 獲取完整設(shè)備描述符請(qǐng)求

        在USB設(shè)備啟用新地址后,USB主機(jī)重新向新地址發(fā)出獲取設(shè)備描述符的請(qǐng)求,這一次主機(jī)將分兩次從PDIUSBD12的端點(diǎn)0中獲取完整的18個(gè)字節(jié)(16+2)的設(shè)備描述符,從而獲知USB設(shè)備的基礎(chǔ)屬性,如支持的傳輸數(shù)據(jù)長(zhǎng)度、所用USB協(xié)議版本、設(shè)備版本號(hào)、PID、VID等,設(shè)備描述符的結(jié)構(gòu)見(jiàn)表2。

        3.4 獲取配置描述符請(qǐng)求

        在獲取完整的設(shè)備描述符之后,主機(jī)就會(huì)發(fā)送一個(gè)試探性的GET_CONFIGURATION獲取配置描述符的請(qǐng)求,USB設(shè)備收到該請(qǐng)求后就返回9字節(jié)的配置描述符(其結(jié)構(gòu)見(jiàn)表3)。

        3.5 獲取配置描述符集合請(qǐng)求

        在第一次獲取配置描述符后,就可以知道配置描述符集合的總長(zhǎng)度,然后再發(fā)一次GET_CONFIGURATION請(qǐng)求,這時(shí)主機(jī)將分三次從PDIUSBD12的端點(diǎn)0中獲取完整的34個(gè)字節(jié)(16+16+2)的配置描述符集合——9字節(jié)的配置描述符、9字節(jié)的接口描述符、9字節(jié)的HID描述符、7字節(jié)的端點(diǎn)描述符。

        3.6 獲取其它描述符

        在獲取了必須的設(shè)備描述符和配置描述符集合后,還可選擇是否獲取字符串描述符和報(bào)告描述符。字符串描述符可表述所要顯示的設(shè)備信息的文字,報(bào)告描述符是USB HID設(shè)備用來(lái)傳送數(shù)據(jù)的,這里不作詳細(xì)介紹。

        完成USB設(shè)備的枚舉后,主機(jī)就能知道USB設(shè)備工作方式的各種特性,正式識(shí)別USB設(shè)備并能與之進(jìn)行數(shù)據(jù)通信,就可以自己寫(xiě)測(cè)驅(qū)動(dòng)或使用通用驅(qū)動(dòng)與計(jì)算機(jī)進(jìn)行通信了。

        4.PDIUSBD12驅(qū)動(dòng)程序設(shè)計(jì)

        PDIUSBD12的驅(qū)動(dòng)程序設(shè)計(jì)主要實(shí)現(xiàn)三個(gè)功能:(1)初始化PDIUSBD12和與之相連的MCU,包括PDIUSBD12的復(fù)位和初始化全局變量;(2)在枚舉過(guò)程中為每一次的請(qǐng)求(如獲取設(shè)備描述符請(qǐng)求)編寫(xiě)中斷服務(wù)程序;(3)用戶讀/寫(xiě)端點(diǎn)的函數(shù)。

        5.結(jié)束語(yǔ)

        USB技術(shù)的日益成熟,越來(lái)越多的計(jì)算機(jī)外設(shè)使用USB接口,使得USB接口的設(shè)計(jì)開(kāi)發(fā)顯得尤為重要,而設(shè)計(jì)開(kāi)發(fā)USB接口設(shè)備必須對(duì)數(shù)據(jù)的通信過(guò)程有深入認(rèn)識(shí),本文以PDIUSBD12作為USB設(shè)備的接口控制芯片詳細(xì)深入地介紹了主機(jī)與USB接口間的數(shù)據(jù)通信過(guò)程,開(kāi)發(fā)者可根據(jù)此過(guò)程編寫(xiě)相應(yīng)的服務(wù)程序便可完成USB設(shè)備的開(kāi)發(fā)。

        表2 設(shè)備描述符的結(jié)構(gòu)

        表3 設(shè)備描述符的結(jié)構(gòu)

        [1]范曉青,袁中凡,歐協(xié)峰.PDIUSBD12的USB接口設(shè)計(jì)中的應(yīng)用[J].儀器儀表用戶.2009,2.

        [2]張安生.PDIUSBD12在USB接口設(shè)計(jì)中的應(yīng)用探析[J].現(xiàn)代教育設(shè)備.2008,2.

        [3]劉榮.圈圈教你玩USB[M].北京航空航天大學(xué)出版社.2009.

        10.3969/j.issn.1001-8972.2010.09.055

        劉彥(1977-),男(仡佬族),貴州都勻,黔南民族師范學(xué)院計(jì)算機(jī)科學(xué)系講師,研究方向?yàn)橛布夹g(shù)。

        猜你喜歡
        枚舉描述符外設(shè)
        基于理解性教學(xué)的信息技術(shù)教學(xué)案例研究
        速讀·上旬(2022年2期)2022-04-10 16:42:14
        基于結(jié)構(gòu)信息的異源遙感圖像局部特征描述符研究
        一種高效的概率圖上Top-K極大團(tuán)枚舉算法
        基于AKAZE的BOLD掩碼描述符的匹配算法的研究
        Linux單線程并發(fā)服務(wù)器探索
        利用CNN的無(wú)人機(jī)遙感影像特征描述符學(xué)習(xí)
        基于太陽(yáng)影子定位枚舉法模型的研究
        Microchip推出具備雙ADC外設(shè)的全新器件,擴(kuò)展其低成本8位PIC?單片機(jī)產(chǎn)品線
        USB開(kāi)發(fā)中易混淆的概念剖析
        貼身呵護(hù) 必不可少的PSP外設(shè)
        人妖一区二区三区视频| 亚洲人成精品久久久久| 亚洲av中文aⅴ无码av不卡| 一区一级三级在线观看 | 亚洲国产日韩综一区二区在性色 | 国内露脸少妇精品视频| 国产高级黄区18勿进一区二区| 中文字幕五月久久婷热| 日本免费在线一区二区三区| 色噜噜狠狠综曰曰曰| 国产成人午夜精品免费视频| 精品国产又大又黄又粗av | 一区在线播放| 一区二区三区精品偷拍| 一区二区视频在线观看地址 | 躁躁躁日日躁| 26uuu欧美日本在线播放| 中文字幕亚洲一二三区| 日韩精品视频一区二区三区| 美女黄18以下禁止观看| 中文字幕在线人妻视频| 日产精品高潮一区二区三区5月| 久久久久波多野结衣高潮| 欧美成人www免费全部网站| 男的和女的打扑克的视频| 久久成人成狠狠爱综合网| 国产人妻无码一区二区三区免费| 国模少妇无码一区二区三区| 国产一区二区免费在线视频| 一本色道久久综合无码人妻| 色综合88| 国产一区二三区中文字幕| 日本黑人亚洲一区二区| 狠狠色婷婷久久一区二区三区| 亚洲天堂资源网| 亚洲情久久久精品黄色| 免费大片黄国产在线观看| 人人妻人人玩人人澡人人爽| 国产精品人人爱一区二区白浆| av中文字幕一区不卡| 国产自偷自偷免费一区|