日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機(jī)電之家資源網(wǎng)
單片機(jī)首頁|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
TMS320VC5509A USB設(shè)備固件設(shè)計(jì)與實(shí)現(xiàn)
TMS320VC5509A USB設(shè)備固件設(shè)計(jì)與實(shí)現(xiàn)
 更新時(shí)間:2008-8-4 4:50:24  點(diǎn)擊數(shù):27
【字體: 字體顏色

USB_disconnectDev(USB0); /*將USB模塊與總線斷開,保證配置正確進(jìn)行*/
USB_initPLL(12,48,0); /*產(chǎn)生48MHz時(shí)鐘*/
……    /*創(chuàng)建端點(diǎn)對(duì)象,并初始化端點(diǎn)對(duì)象*/
USB_EpHandle hEpObjArray[]= {&EndptObjOut0,&EndptObjIn0,……,NULL};
/*以NULL結(jié)束的初始化端點(diǎn)目標(biāo)的句柄組成的數(shù)組*/
USB_init(USB0,hEpObjArray,0x80); /*初始化USB模塊*/
USB_devConnect(USB0);  /*將USB模塊與總線聯(lián)接*/
……      /*DSP進(jìn)入枚舉過程,進(jìn)行設(shè)備請(qǐng)求命令的應(yīng)答*/
3.2 傳輸方式的實(shí)現(xiàn)
    USB總線上的信息包括差模數(shù)據(jù)線上的包以及一些有特殊意義的數(shù)據(jù)線上的信號(hào),如設(shè)備喚醒、復(fù)位等等。根據(jù)USB總線傳輸?shù)牟煌瑪?shù)據(jù),USB定義了四種傳輸方式[1]:控制傳輸、中斷傳輸、批量傳輸、同步傳輸。四種傳輸方式分別對(duì)應(yīng)于不同的傳輸環(huán)境要求。
    USB協(xié)議棧應(yīng)該能夠識(shí)別不同的數(shù)據(jù),并用不同的傳輸類型并對(duì)它們進(jìn)行相應(yīng)的處理。
    控制傳輸是最為復(fù)雜的傳輸類型,也是最重要的傳輸類型,是USB枚舉階段最主要的數(shù)據(jù)交換方式。主機(jī)一旦發(fā)現(xiàn)USB設(shè)備連接到總線上,就通過控制傳輸來交換信息:設(shè)置設(shè)備地址、讀取設(shè)備描述符和選擇配置。下面重點(diǎn)分析在VC5509A上實(shí)現(xiàn)控制傳輸?shù)姆椒。中斷傳輸、批量傳輸和同步傳輸較之控制傳輸要簡單,可以在控制傳輸?shù)幕A(chǔ)上實(shí)現(xiàn)。
    控制傳輸中的硬件操作接口可以通過片上支持庫CSL中的兩個(gè)的API函數(shù)實(shí)現(xiàn):
    接收Setup包函數(shù)USB_getSetupPacket()和傳輸函數(shù)USB_postTransaction()。前者可以由數(shù)據(jù)緩沖區(qū)中讀取Setup包,后者通過端點(diǎn)發(fā)送和接收USB數(shù)據(jù)。當(dāng)USB設(shè)備初次聯(lián)接到總線上時(shí),DSP通過USB_getSetupPacket()函數(shù)來交換信息、設(shè)備地址和讀取設(shè)備的描述符。
USB_SetupStruct  USB0_SetupPkt;     /*定義承載Setup包的USB_SetupStruct型變量*/
void USB_Endpt0EventHandler(void)    /*控制端點(diǎn)0的中斷服務(wù)程序*/
{  if(USB_getEvents(EndptObjIn0) & USB_EVENT_SETUP)  /*判斷Setup事件發(fā)生*/
{  if(USB_getSetupPacket(USB0, USB0_SetupPkt) == USB_TRUE)
/*由數(shù)據(jù)緩沖區(qū)中讀取Setup包并保存在變量USB0_SetupPkt中 */
{
 /*―― 以下分析由主機(jī)傳送過來的setup包,并作相應(yīng)處理,完成總線枚舉――*/
switch(USB0_SetupPkt.bRequest)
case GET_STATUS:    //獲取狀態(tài)請(qǐng)求(2byte)
      case CLEAR_FEATURE:     //清除特性請(qǐng)求
      case SET_FEATURE:   //設(shè)置特性請(qǐng)求
        case SET_ADDRESS:   //設(shè)置地址請(qǐng)求
case GET_DESCRIPTOR:  //獲取描述符請(qǐng)求
case SET_DESCRIPTOR:  //設(shè)置描述符請(qǐng)求
case GET_CONFIGURATION: //獲取配置請(qǐng)求
case SET_CONFIGURATION: //設(shè)置配置請(qǐng)求
case GET_INTERFACE:   //獲取接口請(qǐng)求
case SET_INTERFACE:   //設(shè)置接口請(qǐng)求
case SYNCH_FRAME:    //同步幀請(qǐng)求
/*―――――――――――――END――――――――――――――― */
}
}  return;
}
    以上利用控制傳輸實(shí)現(xiàn)控制端點(diǎn)0的中斷服務(wù)程序,完成USB標(biāo)準(zhǔn)請(qǐng)求命令。
3.3 設(shè)備固件協(xié)議棧
    USB設(shè)備固件協(xié)議棧以設(shè)備端點(diǎn)的使用和管理作為基礎(chǔ)和核心,而編寫USB中斷服務(wù)程序是整個(gè)設(shè)備端固件編寫的主要內(nèi)容。固件協(xié)議棧主要完成以下功能:
    1) 設(shè)備上電復(fù)位,系統(tǒng)初始化,并使能中斷。
    2) 系統(tǒng)等待,直到將Setup包接收到端點(diǎn)0緩沖區(qū)為止。
    3) 應(yīng)答設(shè)備請(qǐng)求,完成設(shè)備枚舉。
    4) 等待USB中斷,有中斷發(fā)生則進(jìn)入中斷服務(wù)程序,完成系統(tǒng)要求。
    圖2是一個(gè)比較精簡的USB設(shè)備固件流程圖。 

  圖2 USB協(xié)議棧固件流程圖

4、結(jié)束語
    采用該方案設(shè)計(jì)實(shí)現(xiàn)的USB通信接口,已經(jīng)在一個(gè)電力故障錄波儀系統(tǒng)中成功應(yīng)用。該錄波儀系統(tǒng)使用   VC5509A DSP完成32路模擬量的實(shí)時(shí)數(shù)據(jù)采集、分析和壓縮,同時(shí)主機(jī)通過USB接口讀取錄波儀的數(shù)據(jù),或者向錄波儀傳送配置信息。實(shí)踐證明系統(tǒng)硬件結(jié)構(gòu)簡單,USB固件協(xié)議棧工作穩(wěn)定、可靠,系統(tǒng)開銷較小,數(shù)據(jù)傳輸速度可以達(dá)到USB 1.1規(guī)范,具有廣泛的適用性。



  • 上一篇: 基于ARM的PCMCIA接口設(shè)計(jì)
  • 下一篇: 基于PCI總線的高速數(shù)據(jù)采集接口的設(shè)計(jì)與實(shí)現(xiàn)
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1