新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于DSP的USB接口設(shè)計(jì)

基于DSP的USB接口設(shè)計(jì)

作者: 時(shí)間:2013-09-23 來源:網(wǎng)絡(luò) 收藏
-COLOR: rgb(255,255,255); orphans: 2; widows: 2; webkit-text-size-adjust: auto; webkit-text-stroke-width: 0px">  (2) FIFO數(shù)據(jù)接口:用來訪問4個(gè)1K字節(jié)的FIFO中的數(shù)據(jù)。

  這兩個(gè)外部接口均可以通過同步或異步的方式進(jìn)行訪問。

  本設(shè)計(jì)采用異步的方式進(jìn)行訪問。根據(jù)圖3 的地址分配,利用TMS320VC5416 的三根高位地址線(A11、A12、A13)連接CY7C68001 的FIFOAD0/1/2,用以選擇FIFO2、FIFO4、FIFO6、FIFO8以及命令接口,其地址表如圖3所示。CY7C68001的地址線FIFOADR[2:0]為100B 時(shí),選中CY7C68001 的命令口(Command)。通過CY7C68001的命令口,可以訪問37個(gè)寄存器、Endpoint 0緩沖器(64個(gè)字節(jié)FIFO)和描述表(500個(gè)字節(jié)FIFO)等,對(duì)這些寄存器進(jìn)行讀寫方式采用二次尋址方式,即首先通過命令口將要尋址的寄存器的子地址和操作類型(讀或?qū)?寫入,然后再通過命令口將數(shù)據(jù)讀出或?qū)懭胂鄳?yīng)的寄存器。

  

基于DSP的USB接口設(shè)計(jì)
寫入命令口的內(nèi)容稱為命令字,命令字包含要尋址的寄存器的子地址,或要寫入寄存器的數(shù)據(jù)的高4位或低4位。讀命令口必須要跟在給命令口寫讀命令字之后,讀出的為相應(yīng)寄存器的8位數(shù)據(jù)。所以,寄存器的寫操作由3 個(gè)步驟組成:

  

基于DSP的USB接口設(shè)計(jì)

  4 USB 接口的軟件設(shè)計(jì)

  的軟件設(shè)計(jì)由兩部分組成:一是在PC機(jī)Windows中運(yùn)行USB 2.0 Utility 工具,是一個(gè)Windows 圖形用戶界面軟件,提供CY7C68001 與Windows 操作系統(tǒng)的接口程序,使得CY7C68001的開發(fā)變得簡(jiǎn)單。二是在在中運(yùn)行嵌入式應(yīng)用程序代碼,提供硬件的驅(qū)動(dòng),用來管理CY7C68001進(jìn)行不同方式的數(shù)據(jù)處理,從而實(shí)現(xiàn)USB2.0 傳輸協(xié)議。

  4.1 USB 接口的軟件設(shè)計(jì)流程

  的軟件設(shè)計(jì),端代碼大致包括芯片初始化(vc5416_init 函數(shù))、USB芯片初始化(sx2_init 函數(shù))、USB芯片配置程序( s x 2 _ s e t u p 函數(shù)) 以及USB 芯片數(shù)據(jù)讀寫程序(sx2_processdata 函數(shù)),程序流程如圖4 所示。

  DSP芯片初始化(vc5416_init函數(shù))主要負(fù)責(zé)設(shè)置VC5416的工作頻率,配置SWCR以及SWWSR寄存器,另外本應(yīng)用系統(tǒng)采用一個(gè)GPIO引腳作為68001的復(fù)位信號(hào),所以還需要對(duì)其進(jìn)行相關(guān)設(shè)置。

  

程序流程圖

  USB芯片初始化(sx2_init函數(shù))主要負(fù)責(zé)清除Buffer緩沖區(qū)以及使能VC5416 的外部中斷INT1



關(guān)鍵詞: DSP USB接口

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉