《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于TMS320C2XX DSP平臺的USB接口設計
基于TMS320C2XX DSP平臺的USB接口設計
單片機及嵌入式系統應用
湯金寬 吳裕冰 曹丹華
摘要: 本次設計是在一個已有的DSP圖像采集嵌入式系統的基礎上,為它配接上一個USB1.1的接口,以達到DSP圖像采集系統高速地將圖像數據回傳到PC機中的目的。設計的要求主要有:
關鍵詞: DSP USB接口 TMS320C2XX PC機
Abstract:
Key words :

關鍵字:USB接口" title="USB接口">USB接口 設計 DSP平臺 數字信號處理 PC機" title="PC機">PC機

  引言

  USB接口(Universal Serial Bus)是一種通用的高速串行接口。它最主要的特點是它的高速傳輸特性。USB1.1理論速度極限可以達到12Mb/s,USB2.0可達到 480Mb/s。這樣,它可以很好解決大數據量的數據在嵌入式系統與PC機之間的互傳問題;同時,它支持熱插拔,并且最多同時支持127個外設,非常適合嵌入式系統的應用。

  本次設計是在一個已有的DSP圖像采集嵌入式系統的基礎上,為它配接上一個USB1.1的接口,以達到DSP圖像采集系統高速地將圖像數據回傳到PC機中的目的。設計的要求主要有:

  ①在原有平臺提供的接口基礎上,加入一個低成本、高速度的USB接口;

  ②通過USB接口,實現PC機對DSP圖像采集系統的操作與控制;

  ③實現圖像數據在DSP攝像系統與PC機之間高速的雙向傳輸。

  基于以上幾點可以看出,本方案最主要的特點是成本低廉且傳輸速度高。

  1 硬件方案選擇與設計

  1.1 方案選擇

  對于基于DSP平臺的USB接口設計,經過綜合考慮了幾種方案之后決定,采用一個不帶MCU內核的USB接口芯片PDIUSBD12(成本非常低,一片PDIUSBD12的價格僅為20元),再加上簡單的外圍電路和時序調整電路。

  這種芯片僅僅完成USB底層的數據鏈路級交換,并提供給本地微控制器一個并行的接口,但是它并不完成協議層的工作。協議層的工作需要對微控制器編程,控制USB接口芯片來實現USB協議。所以,開發難度相對來說大一些,要做的編程工作也多一點。但是這套方案的成本非常低,而且由于直接用DSP作為微控制器,沒有原單片機的瓶頸限制,所以可以實現很高的數據傳輸速率。該系統的原理框圖如圖1所示。

系統的原理框圖

  由于PDIUSBD12的并行接口時序較慢,只能達到2MB/s。這個速度相對于DSP來說比較低,而且有些地方不是簡單地在程序中加入延時就可以調整,所以需要一個時序調整電路來完成它們之間的配合。

  1.2 PDIUSBD12芯片

  PDIUSBD12芯片是由Philips公司推出的一種USB1.1接口芯片。它可以工作在5V或者3.3V的工作電壓下;具有8位數據總線,且有完全自治的DMA傳輸操作。它還具有可控制的軟件連接(SoftConnect)功能,可以保證在微控制器可靠完成初始化之后再連接上USB總線。另外,它還有一個LED驅動腳,可以外接LED來監測USB的枚舉過程和數據傳輸過程。當USB接口枚舉完成,并且成功配置以后,LED將會一直點亮;而在枚舉過程以及USB數據通信過程中,LED只是有節奏地閃爍。

  PDIUSBD12只占用微控制器的兩個地址資源。也就是說,它只有一根地址線。其中一個地址用來向芯片中寫命令,另外一個地址用來向燕片中寫數據或者從芯片中讀取數據。

  PDIUSBD12一共有三組端點:端點0完成控制傳輸;端點1可以配置成中斷傳輸;端點2是主要的數據傳輸端點。它有64B的緩沖區,如果加上它的雙緩沖機制,就有128B的緩沖區;它可以配置成批量傳輸模式,或者同步傳輸模式。

  總的來說,PDIUSBD12是一款性能優異,價格相對軟低的USB接口芯片。

  1.3 時序芯片

  為了降低成本、簡化電路,本方案不使用DMA傳輸方式,而以TI公司的TMS320C2XX作為微控制器(使用20MHz晶振)。它的并口速度非常高,遠遠高于PDIUSBD12所要求的最高限制2MB/s。此處是硬件設計最關鍵的地方。

  經過詳細的時序分析發現,大部分問題可以通過在DSP固件設計的加入延時,或者設置DSP的WSGR寄存器來解決。但是有一個問題,必須在硬件上加以解決。圖2是DSP(TMS320C2XX" title="TMS320C2XX">TMS320C2XX)的寫時序。

DSP

  圖2中,參數th(W-D)是指在WE信號變高(無效)以后,所寫的數據將仍然保持有效的時間。這個值最小為3ns,最大為14ns,所以所寫的數據在WE信號無效以后還會維持有效,大約3~14ns(實際的延時介于這兩個值之間)。

  圖3是PDIUSBD12所要求的寫時序。圖中,參量tWDH是與DSP (TMS320C2XX)參量th(W-D)相對應的另外一個參量。這個參量反映了PDIUSBD12要求微控制器在向其中寫數據時,所寫的數據在WR信號無效之后,要繼續保持有效的時間。這個參量最小值為10ns。也就是說,PDIUSBD12要求所寫的數據最少要保持有效10ns(在WR無效之后)。

PDIUSBD12所要求的寫時序

  由此可以看出,DSP(TMS320C2XX)的寫時序不能可靠地保證滿足 PDIUSBD12的要求,而且這個問題無法通過軟件加延時的方法來解決,必須通過硬件來處理。經過分析對比,最后決定采用一個很簡單但是后來事實證明非常有效的方法來調整它們之間的時序。那就是在DSP(TMS320C2XX)與PDIUSBD12的總線之間加一個雙向緩沖器-74LS245。這個芯片可以在它們的時序之間引入一個延時。雖然這個延時并不可靠、但是由于DSP(TMS320C2XX)本身會在WR無效后,繼續保持數據有效一段時間(前面已講過),這要僅僅需要將延時適當延長一點就可以了。74LS245所造成的延時典型值為15ns,最小也為8ns。這樣,加上原來DSP寫時序的延時,就可以滿足PDIUSBD12所要求的寫時序了。

  另外由于加入74LS245所造成的對其它接口時序的影響,可以通過設置DSP(TMS320C2XX)的WSGR寄存器來消除,所以這個方案是可行的。(事實上,后來制造好的電路也證明了這個方案是完全可行的)

  對其余時序上的配合,經過仔細的計算與核對證明,也是完全可行的。在硬件上,哂方案還采用了一片GAL(16V8)來實現對PDIUSBD12芯片的片選,以及實現對它的軟件和手動復位。硬件總體框圖如圖4所示。

  2 軟件設計

  2.1 固件設計

  由于采用的是不帶MCU內核的USB接口芯片,所以關于USB1.1協議規范的實現都必須靠DSP(TMS320C2XX)控制PDIUSBD12芯片來完成。固件的主要設計任務是:在DSP(TMS320C2XX)的平臺上編寫程序,以完成 USB1.1規范所要求的標準請求及用戶根據產品需要自己定義的請求。

  為了不影響程序的執行效率,本方案采用中斷方式完成固件的編寫;同時,為了保證程序的模塊化及良好的可移植性,在設計中采用分層結構進行固件的編寫,如圖5所示。

固件設計

  最下層是硬件接口層,完成硬件上PDIUSBD12與DSP(TMS320C2XX)的對接。主要是DSP(TMS320C2XX)向PDIUSBD12中寫入數據或者命令,以及從中讀取數據。

  中間層主要有兩個模塊,用來完成PDIUSBD12的命令接口和中斷處理子程序。命令接口是指按照PDIUSBD12的命令格式,完成DSP對它的控制。它的基本命令格式是:DSP先向其中的命令地址寫入某一條命令,接著從它的數據地址寫入或者讀出一系列的數據。中斷處理子程序是判斷中斷的產生源,然后跳轉到相應的處理子程序。這些子程序不做過多的處理,而僅僅是將命令數據讀出然后置標志位,或者是將某些數據送出。

  最上層是主循環程序,以及對于USB1.1標準協議請求(這些請求主要是在USB1.1協議規范的第九章中定義的)和用戶自定義請求的處理程序。主循環的主要工作是檢查標志位。如果標志位被置位,則調用處理子程序,判斷是標準請求還是用戶自定義請求,然后調用相應的處理程序加以處理,完成請求。

  這樣分層的好處是:主循環程序在檢查標志位以外的時間可以進行其它工作,提高固件的運行效率。

  編程過程中,由于涉及了一些嚴格的接口時序配合問題,所以,整個固件的編寫工作全部采用DSP(TMS320C2XX)的匯編語言;用的是CC2000編程開發工具。

  2.2 PC機軟件的設計

  PC機的驅動程序由Philips公司提供。然后,用VC++6.0,通過調用API函數,編寫PC的應用程序。這樣即可實現PC機對DSP(TMS320C2XX)攝像系統的攝像控制以及圖像的傳輸。

  主要使用的API函數是DeviceIOControl()、ReadFile()、 WriteFile()。其中DeviceIOControl()用于PC(主機)向DSP圖像采集系統發送請求;ReadFile()和 WriteFile()分別用于從圖像采集系統中讀出數據以及向圖像采集系統中寫入數據。

  在設計過程中必須注意的問題是:由于USB接口是主-從方式的接口,它的一切傳輸過程都必須通過主機向外設發送請求后才可以開始,所以在使用ReadFile()、WriteFile()讀寫數據之前,必須先通過 DeviceIOControl()向圖像采集系統發送請求。

  3 結果及分析

  設計方案完成后,在最后的測試當中,通過USB1.1接口,PC機與DSP系統的通信速率最高達到了580KB/s(4.6Mb/s)以上。這個速率指的是有效數據傳輸速率,不包括數據傳輸聯絡的頭信息部分,所以這個速率還是比較令人滿意的。現在,傳輸一張幅面為352×288像素的黑白圖片(大小為99KB),耗時不到1s。如果實現動態的拍攝及顯示,那么,整個系統每秒可以拍攝并完成顯示 3~4幅不經壓縮的幅畫為352×288像素大小的黑白圖片。

  測試結果表明,該系統運行可靠(已將程序燒寫進片內Flash中),各項性能指標都已達到了最初的設計要求,能夠很好地實現圖像數據在PC機與DSP之間高速的雙向傳輸。并且,這套USB接口方案只采用了1片PDIUSBD12接口芯片和1片 74LS245,器件成本只有20元左右,這個成本是比較低的。同時,由于采用了DSP作為控制器,所以它的通信速率可以很高;因此,可以說本方案達到了低成本,高速率的USB1.1接口設計要求。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品丝袜xxxxxxx| 亚洲美女av在线播放| 欧美全黄视频| 欧美成人首页| 美女黄色成人网| 久久久水蜜桃av免费网站| 欧美一级久久久久久久大片| 亚洲综合日韩在线| 正在播放亚洲| 亚洲午夜精品视频| av成人毛片| 99精品欧美一区二区蜜桃免费| 亚洲欧洲日产国产综合网| 亚洲国产精品一区二区第四页av | 一区二区三区日韩精品| 日韩午夜剧场| 亚洲网站啪啪| 亚洲欧美激情四射在线日| 亚洲欧美久久| 久久本道综合色狠狠五月| 久久精品国产亚洲一区二区三区 | 欧美午夜欧美| 国产精品成人一区二区网站软件| 欧美亚洲成人免费| 国产精品免费小视频| 国产女人水真多18毛片18精品视频| 国产欧美一二三区| 国内精品久久久久久影视8| 国语精品中文字幕| 亚洲大胆女人| 日韩天堂在线视频| 亚洲宅男天堂在线观看无病毒| 亚洲欧美日韩精品一区二区 | 亚洲国内自拍| 99亚洲一区二区| 亚洲免费中文| 久久女同互慰一区二区三区| 欧美成人高清视频| 欧美视频在线观看| 国产免费亚洲高清| 国内成人精品一区| 亚洲国产福利在线| 日韩亚洲欧美成人| 亚洲男人的天堂在线aⅴ视频| 久久av二区| 99综合电影在线视频| 香蕉久久一区二区不卡无毒影院| 久久三级福利| 欧美日韩视频专区在线播放| 国产欧美日韩视频一区二区三区| 怡红院精品视频在线观看极品| 亚洲精选一区二区| 午夜国产精品影院在线观看| 最近中文字幕日韩精品 | 国产精品久久看| 韩国女主播一区| 亚洲伦理久久| 欧美一区二区精品在线| 亚洲伦理在线观看| 欧美在线视频不卡| 欧美精品一区二区三| 欧美日韩国产麻豆| 国产日韩一区二区三区| 在线精品亚洲| 中文av字幕一区| 久久精品国产96久久久香蕉| 一区二区高清视频在线观看| 久久精品1区| 欧美女同视频| 国产一区亚洲| 99视频精品免费观看| 久久国产综合精品| 亚洲午夜国产成人av电影男同| 久久偷看各类wc女厕嘘嘘偷窃| 欧美日韩亚洲一区二区三区在线 | 99视频精品全国免费| 久久精品人人爽| 欧美日韩亚洲激情| 影音先锋欧美精品| 亚洲欧美资源在线| 这里只有精品视频| 免费永久网站黄欧美| 国产乱码精品一区二区三| 亚洲人成网站在线播| 欧美专区中文字幕| 亚洲欧美日韩国产成人精品影院| 欧美黄色免费| 国内偷自视频区视频综合| 亚洲无限乱码一二三四麻| 亚洲精品社区| 久久综合成人精品亚洲另类欧美| 国产精品日韩专区| 99re66热这里只有精品3直播| 亚洲激情小视频| 久久久久久一区二区| 国产精品一区二区在线观看| 一本一本a久久| 亚洲美女在线观看| 老鸭窝毛片一区二区三区| 国产婷婷色一区二区三区在线 | 欧美日韩亚洲天堂| 亚洲国产精品一区二区三区| 久久精品av麻豆的观看方式| 欧美在线免费视频| 国产精品黄视频| 一区二区三区视频在线| 一区二区高清在线观看| 欧美电影在线观看| 伊人天天综合| 亚洲国产精选| 久久影视精品| 国语精品中文字幕| 欧美影院在线播放| 久久精品国产69国产精品亚洲| 亚洲麻豆国产自偷在线| 午夜精品久久久久久久99热浪潮 | 亚洲日本va在线观看| 亚洲人成在线播放| 欧美+亚洲+精品+三区| 尤妮丝一区二区裸体视频| 久久精品视频在线| 久久手机精品视频| 韩国三级电影久久久久久| 欧美在线www| 久久先锋资源| 1024成人网色www| 亚洲精品在线三区| 欧美激情一区| 日韩视频免费在线| 亚洲一区bb| 国产精品蜜臀在线观看| 亚洲欧美日韩国产综合| 久久av资源网站| 国产一区二区丝袜高跟鞋图片| 久久av一区二区三区| 久热精品视频在线观看一区| 136国产福利精品导航网址| 亚洲精品久久久久中文字幕欢迎你| 欧美电影免费观看高清| 日韩视频一区二区三区在线播放| 欧美成人蜜桃| 国产精品亚洲欧美| 一本色道久久综合狠狠躁的推荐| 99爱精品视频| 欧美视频在线一区| 亚洲婷婷在线| 久久精品国产99国产精品澳门| 国产一区在线播放| 亚洲在线电影| 久久精品99国产精品| 国产主播一区二区三区| 亚洲第一黄网| 欧美成人激情在线| 日韩天堂在线观看| 欧美一区二区三区精品电影| 国产一区二区电影在线观看| 亚洲国产欧美国产综合一区| 欧美高清你懂得| 99精品久久| 久久精品亚洲一区二区| 亚洲丶国产丶欧美一区二区三区| 一区二区三区久久| 国产精品青草综合久久久久99| 欧美一区二区久久久| 欧美极品一区| 亚洲综合欧美| 免费观看亚洲视频大全| 一区二区三区高清不卡| 久久精品亚洲一区二区| 亚洲黄色一区二区三区| 亚洲欧美日韩国产另类专区| 精品99视频| 正在播放亚洲一区| 国产一区二区三区黄| 一本色道久久综合亚洲精品按摩| 国产精品一区二区视频| 亚洲人成小说网站色在线| 国产精品成人一区二区网站软件 | 亚洲一区二区不卡免费| 久久天天综合| 一区二区三区福利| 久久综合婷婷| 亚洲视频网站在线观看| 久久在线免费观看| 中文欧美字幕免费| 免费亚洲电影| 午夜精品区一区二区三| 欧美高清在线视频观看不卡| 午夜欧美视频| 欧美视频在线观看| 亚洲国产精品久久久久久女王| 国产精品久久久久久久久久久久| 亚洲黄色成人| 国产精品一级久久久| 日韩亚洲在线| 黄色成人在线观看| 午夜伦欧美伦电影理论片| 亚洲精品乱码久久久久久久久 | 免费看黄裸体一级大秀欧美| 亚洲一区二区黄色|