女人被狂躁到高潮视频免费无遮挡,内射人妻骚骚骚,免费人成小说在线观看网站,九九影院午夜理论片少妇,免费av永久免费网址

當(dāng)前位置:首頁(yè) > 電源 > 數(shù)字電源
[導(dǎo)讀]本文介紹了一種采用TMS320VC5509A自帶的USB模塊來(lái)實(shí)現(xiàn)USB數(shù)據(jù)傳輸?shù)姆桨?,?duì)該DSP內(nèi)部的USB模塊的構(gòu)造及其傳輸原理做了分析,詳細(xì)的介紹了如何利用CCS內(nèi)部集成的片級(jí)支持庫(kù)(CSL)來(lái)實(shí)現(xiàn)USB設(shè)備固件程序的設(shè)計(jì),并給出了相關(guān)的部分代碼。

摘要:本文介紹了一種采用TMS320VC5509A自帶的USB模塊來(lái)實(shí)現(xiàn)USB數(shù)據(jù)傳輸?shù)姆桨?,?duì)該DSP內(nèi)部的USB模塊的構(gòu)造及其傳輸原理做了分析,詳細(xì)的介紹了如何利用CCS內(nèi)部集成的片級(jí)支持庫(kù)(CSL)來(lái)實(shí)現(xiàn)USB設(shè)備固件程序的設(shè)計(jì),并給出了相關(guān)的部分代碼。該方案大大降低了系統(tǒng)硬件設(shè)計(jì)的復(fù)雜度和調(diào)試的難度,提高了系統(tǒng)的集成度和穩(wěn)定性,適用于便攜式設(shè)備中。
關(guān)鍵詞:TMS320VC5509A;CSL;DSP;USB;固件程序

1.引言

通用串行總線(xiàn)(USB)是一種高傳輸速率的串行接口總線(xiàn),由于它具有即插即用、易于擴(kuò)展、傳輸速率高、連接簡(jiǎn)單、使用方便的特點(diǎn),被廣泛的應(yīng)用于各種計(jì)算機(jī)外設(shè)、數(shù)據(jù)采集、數(shù)字設(shè)備以及工業(yè)控制等領(lǐng)域中。選取合適的USB控制芯片是USB數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)的重要環(huán)節(jié),目前常采用USB控制芯片有兩類(lèi),一類(lèi)是不帶MCU的控制芯片,如PDIUSBD12;而另一類(lèi)是帶MCU的,如EZ—USB系列等。這兩類(lèi)專(zhuān)用的控制芯片都需要通過(guò)芯片所提供的接口來(lái)與系統(tǒng)處理器進(jìn)行通信,而本文介紹的USB接口方案沒(méi)有采用專(zhuān)用的USB控制芯片,而是采用DSP芯片TMS320VC5509A內(nèi)部集成的USB模塊來(lái)完成USB通信,使系統(tǒng)硬件設(shè)計(jì)和調(diào)試難度都大大降低,同時(shí)也提高了系統(tǒng)的集成度和穩(wěn)定性。

2.USB接口設(shè)計(jì)

2.1 TMS320VC5509A簡(jiǎn)介

TMS320VC5509A是TI推出的高性能、低功耗的定點(diǎn)DSP處理器,CPU頻率最高可以運(yùn)行在200MHz(內(nèi)核電壓工作在1.6v),每個(gè)時(shí)鐘周期可執(zhí)行一到兩條指令,有兩個(gè)算術(shù)邏輯單元(ALU),兩個(gè)硬件乘法器,是一款具有較高性?xún)r(jià)比、高集成度、低功耗的DSP芯片,適用于便攜式設(shè)備中。TMS320VC5509A集成了128K 16Bits RAM、32K 16Bits的ROM,且?guī)в蠩MIF接口, 可實(shí)現(xiàn)與多種存儲(chǔ)器之間的無(wú)縫連接。片內(nèi)還有豐富的外設(shè):2個(gè)20位的定時(shí)器;3個(gè)多通道緩沖串口(McBSP);USB全速接口(12Mbps);I2C接口;實(shí)時(shí)時(shí)鐘等[1]。

2.2 TMS320VC5509A的USB模塊介紹

TMS320VC5509A自帶的USB模塊支持USB1.1協(xié)議全速標(biāo)準(zhǔn),該USB模塊有兩個(gè)控制端點(diǎn)(僅用于控制傳輸)和14個(gè)通用端點(diǎn),通用端點(diǎn)支持中斷、批量和同步傳輸。DSP的USB模塊由串行接口引擎(SIE)、USB緩沖管理單元(UBM)、緩沖器RAM、USB的DMA控制器和緩沖器RAM仲裁器組成。DSP存儲(chǔ)器與USB主機(jī)之間的數(shù)據(jù)傳輸模型如圖(1)所示:在IN事務(wù)中,CPU或USB的DMA控制器將準(zhǔn)備發(fā)送到主機(jī)的數(shù)據(jù)放到緩沖器RAM中,等待USB緩沖管理單元將數(shù)據(jù)取出后送到串行接口引擎(SIE),由SIE負(fù)責(zé)數(shù)據(jù)的發(fā)送;在OUT事務(wù)中,SIE接收到由主機(jī)發(fā)來(lái)的數(shù)據(jù)后送到UBM,再送入到緩沖器RAM中,等待CPU或USB的DMA控制器將數(shù)據(jù)取出后送到DSP的存儲(chǔ)器中。

圖(1)DSP存儲(chǔ)器與USB主機(jī)之間的數(shù)據(jù)傳輸

 

2.3 USB 模塊的時(shí)鐘發(fā)生器:

USB模塊有專(zhuān)門(mén)的時(shí)鐘發(fā)生器,獨(dú)立于CPU的時(shí)鐘發(fā)生器,如圖(2)所示,由DSP時(shí)鐘發(fā)生器輸出的時(shí)鐘送入到CPU和其他外設(shè)(不包括USB模塊),而USB模塊的時(shí)鐘由單獨(dú)的時(shí)鐘發(fā)生器為它提供。USB模塊的時(shí)鐘可選擇用模擬鎖相環(huán)(APLL)或數(shù)字鎖相環(huán)(DPLL)來(lái)產(chǎn)生[3]。模擬鎖相環(huán)與數(shù)字鎖相環(huán)相比有它獨(dú)特的優(yōu)勢(shì),TI推薦使用模擬鎖相環(huán)來(lái)產(chǎn)生USB模塊的時(shí)鐘。提供給USB模塊的時(shí)鐘必須設(shè)置為48MHz。

圖(2)時(shí)鐘發(fā)生器

2.4 USB接口硬件設(shè)計(jì)

       如圖(3)所示,DP、DN和PU端口接到5509A的USB模塊端口引腳上,DSP的DP、DN端口以差分方式傳送數(shù)據(jù),PU端口通過(guò)1.5k的上拉電阻接到USB總線(xiàn)的D+端,DSP可以通過(guò)編程來(lái)控制PU端口,從而控制設(shè)備與USB總線(xiàn)的連接與斷開(kāi)。主機(jī)USB接口提供的電源經(jīng)電阻分壓后送入DSP,供DSP檢測(cè)是否與主機(jī)的USB接口連接上。

圖(3)USB接口硬件連接圖

3.USB設(shè)備固件程序設(shè)計(jì)與實(shí)現(xiàn)

USB驅(qū)動(dòng)程序主要包括兩個(gè)部分:設(shè)備固件程序和主機(jī)端的設(shè)備驅(qū)動(dòng)程序,設(shè)備固件程序是指運(yùn)行在設(shè)備端CPU中的程序,它主要完成USB協(xié)議的處理及設(shè)備與主機(jī)的數(shù)據(jù)交換, 設(shè)備固件程序設(shè)計(jì)是重點(diǎn)也是難點(diǎn),本文主要介紹設(shè)備固件程序的編寫(xiě)。

3.1 DSP 的CSL編程

       在DSP系統(tǒng)軟件設(shè)計(jì)中,一般會(huì)大量涉及到對(duì)片上外設(shè)的操作,而這往往要消耗過(guò)多的時(shí)間和精力。TI為5000系列和6000系列的DSP提供了各自的片級(jí)支持庫(kù)CSL(chip support library),CSL庫(kù)函數(shù)主要用于配置和控制DSP片上外設(shè),使片上外設(shè)更容易使用,縮短開(kāi)發(fā)時(shí)間,增加可移植性。用CSL來(lái)配置和管理DSP的USB模塊可以使USB固件程序的開(kāi)發(fā)變得更加方便和快捷。CSL已集成到CCS中,我們可利用CCS提供的圖形用戶(hù)接口(GUI)來(lái)對(duì)USB模塊進(jìn)行相應(yīng)的初始化配置,或者直接調(diào)用CSL庫(kù)函數(shù)來(lái)配置。

3.2 USB設(shè)備枚舉過(guò)程

當(dāng)主機(jī)檢測(cè)到有設(shè)備連接到USB總線(xiàn)時(shí),主機(jī)要向USB設(shè)備發(fā)出一系列的設(shè)備請(qǐng)求,獲取USB設(shè)備的一些屬性,如設(shè)備支持的最大傳輸速率、設(shè)備接口特性、設(shè)備端點(diǎn)個(gè)數(shù)以及每個(gè)端點(diǎn)支持的傳輸方式等。接著主機(jī)為USB設(shè)備分配一個(gè)唯一的設(shè)備地址,然后USB設(shè)備才可以正常使用,這個(gè)過(guò)程叫做枚舉[4]。USB設(shè)備的枚舉過(guò)程分以下幾步:

1.  USB設(shè)備加電,并連接上USB總線(xiàn)。

2.  主機(jī)檢測(cè)到USB設(shè)備,總線(xiàn)復(fù)位,集線(xiàn)器發(fā)送復(fù)位信號(hào)并維持至少10毫秒。

3.  復(fù)位完成,USB設(shè)備處于缺省狀態(tài),此時(shí)設(shè)備將以缺省地址0響應(yīng)主機(jī)請(qǐng)求

4.  主機(jī)發(fā)出請(qǐng)求,從缺省地址0讀取USB設(shè)備的設(shè)備描述符。

5.  主機(jī)為該USB設(shè)備分配一個(gè)新的設(shè)備地址。

6.  主機(jī)從新的設(shè)備地址再次讀取USB設(shè)備的設(shè)備描述符。

7.  主機(jī)讀取設(shè)備的配置,包括配置描述符、該配置的所有接口描述符、接口的所有端點(diǎn)描述符以及字符串描述符號(hào)。  

8.  主機(jī)加載設(shè)備驅(qū)動(dòng)程序,USB枚舉過(guò)程結(jié)束,USB設(shè)備可以正常使用了。

3.3 USB設(shè)備固件程序設(shè)計(jì)

USB設(shè)備固件程序主要包括兩個(gè)部分:USB模塊的初始化和USB中斷服務(wù)程序,下面分別對(duì)這兩個(gè)部分的實(shí)現(xiàn)做個(gè)簡(jiǎn)單的介紹。

3.3.1 USB模塊的初始化

    USB模塊初始化流程為:首先關(guān)閉中斷,然后設(shè)置API函數(shù)指針向量,設(shè)置USB模塊時(shí)鐘,初始化USB設(shè)備的端點(diǎn),調(diào)用函數(shù)USB_init( )初始化USB模塊,用函數(shù)IRQ_plug( )初始化中斷向量表,再打開(kāi)中斷,最后調(diào)用函數(shù)USB_connectDev( )使USB的D+端通過(guò)1.5k電阻上拉,從而使設(shè)備接入U(xiǎn)SB總線(xiàn),隨后開(kāi)始USB設(shè)備的枚舉過(guò)程[5]。下面對(duì)USB模塊初始化過(guò)程中涉及到的部分CSL庫(kù)函數(shù)做個(gè)簡(jiǎn)單介紹:

USB模塊時(shí)鐘設(shè)置函數(shù)USB_initPLL( ),該函數(shù)有三個(gè)參數(shù),分別是USB模塊的輸入時(shí)鐘、USB模塊的輸出時(shí)鐘(必須設(shè)置為48MHz)、輸入時(shí)鐘的分頻數(shù)(該參數(shù)在USB模塊的寄存器中用2 bit 來(lái)設(shè)置,即分頻數(shù)只能設(shè)定為1,2,3或4,所以在硬件設(shè)計(jì)時(shí)需考慮好DSP的外部輸入時(shí)鐘頻率,使USB模塊的時(shí)鐘能夠設(shè)置為48MHz)。

端點(diǎn)初始化函數(shù)USB_initEndptObj( )有七個(gè)參數(shù),該函數(shù)用于對(duì)端點(diǎn)的端點(diǎn)號(hào)、端點(diǎn)的傳輸方式(控制傳輸,中斷傳輸,批量傳輸和同步傳輸)、端點(diǎn)能夠接收的包的最大值、引發(fā)該端點(diǎn)產(chǎn)生中斷的中斷事件、產(chǎn)生該端點(diǎn)中斷后去執(zhí)行的函數(shù)等屬性進(jìn)行相應(yīng)的設(shè)置。

初始化中斷向量表函數(shù)IRQ_plug( )有兩個(gè)參數(shù)[6],第一個(gè)參數(shù)為中斷事件ID(DSP中各種類(lèi)型的中斷在CSL的頭文件中都定義了不同的ID值),第二個(gè)參數(shù)為中斷函數(shù)地址(產(chǎn)生與事件ID對(duì)應(yīng)的中斷時(shí)轉(zhuǎn)而執(zhí)行的中斷函數(shù)的地址)。USB模塊初始化的部分代碼如下:

USB_EpObj   usbEpObjOut0, usbEpObjIn0………;    //創(chuàng)建USB端點(diǎn)

USB_EpHandle  myUsbConfig[] = {&usbEpObjOut0, &usbEpObjIn0,……,NULL};

void USB_Init()

{   ……

    CSL_init( );    //CSL 初始化

INT_DisableGlobal();     //關(guān)中斷

    USB_setAPIVectorAddress();      //初始化USB模塊API函數(shù)向量指針

USB_initPLL(12,48,0);     //設(shè)置USB模塊時(shí)鐘,必須設(shè)置為48MHz

event_mask = USB_EVENT_RESET | …...;//引發(fā)端點(diǎn)中斷的事件

/////端點(diǎn)初始化

USB_initEndptObj(USB0, &usbEpObjOut0, USB_OUT_EP0, USB_CTRL,0x40, event_mask, USB_ctl);

USB_initEndptObj(USB0, &usbEpObjIn0, USB_IN_EP0, USB_CTRL,0x40, event_mask, USB_ctl);

……                   //其它端點(diǎn)初始化程序

USB_init(USB0, myUsbConfig, 0x40);   //USB模塊初始化

IRQ_plug(usbId,&USB_isr);   //初始化中斷向量表

IRQ_globalEnable();         //開(kāi)中斷

USB_connectDev(USB0);    //設(shè)備連接到USB總線(xiàn)上

    ……

}

3.3.2 USB中斷服務(wù)程序

       當(dāng)產(chǎn)生USB中斷時(shí),程序會(huì)執(zhí)行相應(yīng)的USB中斷程序,在USB中斷程序中我們可以調(diào)用函數(shù)USB_evDispatch( )來(lái)處理中斷事務(wù),該函數(shù)會(huì)清除相應(yīng)的中斷標(biāo)志位,并且發(fā)布USB中斷事件,從而去執(zhí)行相應(yīng)的端點(diǎn)中斷函數(shù)。若是控制端點(diǎn)0中斷,則執(zhí)行控制端點(diǎn)0的中斷函數(shù),完成相應(yīng)的復(fù)位、掛起、SETUP(設(shè)備請(qǐng)求包)等操作。若是其他通用端點(diǎn)中斷則按照該端點(diǎn)初始化時(shí)定義的傳輸方式來(lái)完成數(shù)據(jù)傳輸。USB中斷函數(shù)及端點(diǎn)中斷函數(shù)的部分程序如下:

interrupt void USB_isr()      //USB中斷

{   USB_evDispatch( );  }

//控制端點(diǎn)0中斷處理函數(shù)

void USB_ctl(USB_DevNum DevNum, USB_EpHandle hEp0In,USB_EpHandle hEp0Out)

{  ……

if(USB_ctl_events & USB_EVENT_RESET)    {…… }    //復(fù)位處理

if(USB_ctl_events & USB_EVENT_SUSPEND)  {…… }     //掛起處理

if((USB_ctl_events & USB_EVENT_SETUP) == USB_EVENT_SETUP)  //收到SETUP包

{

         if(USB_getSetupPacket(DevNum,&USB_Setup) == USB_TRUE)

     {…… }    //處理SETUP包,完成相應(yīng)的USB設(shè)備枚舉操作

}

……

}

……    //其它端點(diǎn)中斷函數(shù)

3.4 USB設(shè)備固件程序流程圖

       如圖(4)所示,DSP及其USB模塊的初始化完成后進(jìn)入主循環(huán),等待USB中斷。若是控制端點(diǎn)中斷則進(jìn)入控制端點(diǎn)中斷服務(wù)程序,完成設(shè)備枚舉的相關(guān)操作;若是通用端點(diǎn)中斷,則按照通用端點(diǎn)定義的傳輸方式來(lái)完成數(shù)據(jù)的傳輸。然后中斷返回,進(jìn)入主循環(huán)。

4.結(jié)論

       本文介紹的采用TMS320VC5509A自帶的USB接口來(lái)完成USB數(shù)據(jù)傳輸?shù)姆桨?,使系統(tǒng)硬件設(shè)計(jì)的復(fù)雜度和系統(tǒng)調(diào)試的難度都大大的降低,同時(shí)也提高了系統(tǒng)的集成度和穩(wěn)定性,減小了系統(tǒng)體積和功耗,適合于在便攜式產(chǎn)品中應(yīng)用。

 

圖(4)USB設(shè)備固件程序流程圖

參考文獻(xiàn):

[1] TMS320VC5509A Fixed-Point Digital Signal Processor  Texas Instruments Incorporated  June 2006

[2] 滕巖峰 周雪峰 帶USB接口的100MHZ高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].微計(jì)算機(jī)信息 2006.22.7-2

[3] Using the USB APLL on the TMS320VC5509A  Texas Instruments Incorporated  February 2004

[4] 陳啟美、丁傳鎖編著 計(jì)算機(jī)USB接口技術(shù) 南京大學(xué)出版社 2003

[5] TMS320C55x CSL USB Programmer’s Reference Guide  Texas Instruments Incorporated October 2001

[6] TMS320C55x Chip Support Library API Reference Guide  Texas Instruments Incorporated September 2004

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

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

關(guān)鍵字: iPhone 15 Lightning USB

GRL東莞實(shí)驗(yàn)室將與上海和臺(tái)北實(shí)驗(yàn)室一同,提供Windows Host認(rèn)證服務(wù) 加利福尼亞州圣克拉拉市2022年9月22日 /美通社/ -- 高速信號(hào)和充電技術(shù)測(cè)...

關(guān)鍵字: Windows THUNDERBOLT USB OS

接下來(lái)測(cè)試燒寫(xiě)功能,本次采用串口和USB燒寫(xiě)方式。使用ISP串口燒寫(xiě)這是51單片機(jī)常用的方案,本次測(cè)試比較順利,沒(méi)有遇到什么問(wèn)題。但是USB燒寫(xiě)沒(méi)有測(cè)試成功,USB燒寫(xiě)方式不需要任何的驅(qū)動(dòng)和硬件支持,直接將USB線(xiàn)和ST...

關(guān)鍵字: PCB控制板 USB 串口

倉(cāng)儲(chǔ)機(jī)器人領(lǐng)域的領(lǐng)先企業(yè)率先實(shí)現(xiàn)這一行業(yè)里程碑 馬薩諸塞州威爾明頓2022年9月16日 /美通社/ -- 倉(cāng)儲(chǔ)處理自主移動(dòng)機(jī)器人(AMR)市場(chǎng)領(lǐng)先企業(yè)Locus Robot...

關(guān)鍵字: ROBOTICS AMR USB 移動(dòng)機(jī)器人

摘要:主要介紹了應(yīng)用DSP的電能質(zhì)量檢測(cè)系統(tǒng)的硬件電路及軟件開(kāi)發(fā)工具,對(duì)采集來(lái)的某電鐵電流信號(hào)進(jìn)行了電能質(zhì)量檢測(cè),并開(kāi)展了實(shí)際實(shí)驗(yàn)嘗試。實(shí)驗(yàn)結(jié)果顯示,實(shí)際信號(hào)含有大量諧波,但通過(guò)應(yīng)用DSP的電能質(zhì)量檢測(cè)系統(tǒng)成功檢測(cè)到了它...

關(guān)鍵字: 電能質(zhì)量檢測(cè) Matlab仿真 DSP

隨著生活水平的提高,大家都想從生活壓力中釋放出來(lái),越來(lái)越多的人向往戶(hù)外運(yùn)動(dòng)、露營(yíng)等,在大自然的擁抱中釋放壓力,解放自我,從而成為戶(hù)外旅行火熱的原因之一。因此,很多音箱廠(chǎng)商都開(kāi)始推出針對(duì)戶(hù)外的戶(hù)外藍(lán)牙音箱。但是市面上的藍(lán)牙...

關(guān)鍵字: PD快充 I2S DSP IC

(全球TMT2022年8月26日訊)運(yùn)輸和物流提供商GEODIS和用于營(yíng)運(yùn)倉(cāng)庫(kù)的自主移動(dòng)機(jī)器人(AMR)企業(yè)Locus Robotics宣布了一項(xiàng)新的擴(kuò)展協(xié)議,將在未來(lái)24個(gè)月內(nèi)在GEODIS的全球倉(cāng)庫(kù)網(wǎng)點(diǎn)總共部署10...

關(guān)鍵字: USB GE AMR ROBOTICS

GEODIS與Locus Robotics簽署擴(kuò)展協(xié)議,在全球倉(cāng)庫(kù)網(wǎng)點(diǎn)部署1000個(gè)LocusBot 田納星州納什維爾和馬薩諸塞州威明頓2022年8月25日 /美通社/ -- 全球領(lǐng)先的運(yùn)輸和物流提供商GEODIS和用...

關(guān)鍵字: USB ROBOTICS GE AMR

以下內(nèi)容中,小編將對(duì)路由器的相關(guān)內(nèi)容進(jìn)行著重介紹和闡述,希望本文能幫您增進(jìn)對(duì)路由器的了解,和小編一起來(lái)看看吧。

關(guān)鍵字: 路由器 USB 處理器

(全球TMT2022年8月12日訊)Arasan宣布即刻起提供面向USB 2.0規(guī)范的第二代USB PHY。Arasan第二代USB PHY是其數(shù)十年來(lái)持續(xù)發(fā)展的成果,這一代產(chǎn)品具有極小的面積和超低的功率,專(zhuān)門(mén)面向物聯(lián)...

關(guān)鍵字: USB AN IP TOTAL

數(shù)字電源

15504 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉