新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于引言DSP平臺的USB接口設(shè)計

基于引言DSP平臺的USB接口設(shè)計

作者: 時間:2010-12-22 來源:網(wǎng)絡(luò) 收藏

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

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

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

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

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

2.2 PC機軟件的

PC機的驅(qū)動程序由Philips公司提供。然后,用VC++6.0,通過調(diào)用API函數(shù),編寫PC的應(yīng)用程序。這樣即可實現(xiàn)PC機對DSP(TMS320C2XX)攝像系統(tǒng)的攝像控制以及圖像的傳輸。

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

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

3 結(jié)果及分析

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

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


上一頁 1 2 3 下一頁

評論


相關(guān)推薦

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

關(guān)閉