DSP56311EVM的教學實驗平臺設計_第1頁
免費預覽已結束,剩余6頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、dsp56311evm的教學實驗平臺設計針對56311評估板及其開發(fā)工具的特點、教學試驗和應用開發(fā)的需要舉行了平臺的研制。系統(tǒng)的軟件部分主要包括用c+builer制作的軟件平臺和編寫的支持的dsp硬件驅動程序庫文件系統(tǒng)。硬件部分包括dsp開發(fā)和試驗所必須的信號發(fā)生、顯示接口電路和外接鍵盤。建立一個能處理多任務的主程序架構,把原單獨運行的信號處理程序模塊化為c語言的子程序,可在系統(tǒng)中隨時調用執(zhí)行。設計思想本系統(tǒng)是一種教學、課程試驗及技術開發(fā)的平臺,主要應用于dsp原理及應用、數(shù)字信號處理等相關課程的試驗教學。它是以dsp56311evm為核心,對系統(tǒng)舉行的擴展,包括軟件和硬件兩個部分。軟什部分用

2、法c+builder制作了“dsp56311試驗平臺”的平臺環(huán)境,實現(xiàn)的用匯編語言編寫的dsp硬件驅動程序能夠為c語言調用;硬件部分有效利用了芯片的資源,增加了應用于教學的功能,并留出了進一步擴展的接口。2 系統(tǒng)結構21 硬件部分硬件平臺的核心是m0torola公司提供的dsp56311評估板。dsp56311evm可外接24根數(shù)據(jù)線、18根地址線和4根地址特征狀態(tài)線,對可擴展資源提供了接口;但這些接口普通不能挺直與外部的設備銜接,需要舉行相應的擴展。硬件平臺的外部電路包含:±5v、±15v、+6v的直流電源,正弦波、三角波、方波的波形發(fā)生電路模塊,mic信號放大電路,lc

3、d顯示模塊等。圖1為系統(tǒng)硬件平臺內部結構,圖中左側為外部電路模塊,右側為dsp563llevm評估板。這些電路模塊可以產(chǎn)生試驗測試所必須的信號,并反映程序執(zhí)行狀況,為dsp的程序開發(fā)和調試提供便利的硬件環(huán)境。硬件部分解決的問題:dsp的端口通過寄存器設置可以作為通用輸入輸出端口(gpi0)或專用端口。外部電路與dsp銜接時,可以有多種實現(xiàn)計劃。在資源緊急的狀況下,調配資源,實現(xiàn)最優(yōu)。時序問題。dsp563ll的處理速度高達150 ,1個命令周期大約7ns。解決時序問題,加快外圍的接口芯片工作速度。lcd相對于dsp來說,是種“反應”很慢的外部設備。本課題采納定時器模塊(時光中斷)來控制lcd動

4、態(tài)圖形顯示的刷新頻率,如把lcd的刷新頻率設定為2幀s,即每05s向lcd傳送1屏圖形的數(shù)據(jù)。另外,dsp與lcd通信接口的實現(xiàn)是對dsp的gpio編程,使gpio引腳的信號符合lcd數(shù)據(jù)傳輸?shù)臅r序要求。因為dsp的工作頻率很高,dsp與lcd間數(shù)據(jù)傳輸不僅要注重控制引腳上電平的凹凸和先后次序,而且還要插入須要的等待時光,維持信號線上的電平,使lcd可以牢靠地讀到控制引腳上的信號。圖2為系統(tǒng)硬件原理框圖。22 軟件部分軟件分兩部分:用c+builder制作的dsp56311軟件試驗平臺;用匯編語言編寫的dsp硬件驅動程序。22.1 dsp56311試驗平臺圖3為dsp56311試驗平臺界面。打

5、包好的平臺可以任意安裝在個人電腦上,平臺包括試驗解釋、程序編制、程序編譯、參考結果、體驗試驗等內容。此平臺可以作為試驗的指導軟件,也可作為開發(fā)軟件挺直在平臺上編寫程序、編譯和。2.2.2 c語言與匯編語言混合編程本設計用匯編語言編寫dsp周邊外設的驅動程序和一些數(shù)字信號處理算法的子程序。用c語言編寫主控程序,調用匯編語言編寫的子程序完成硬件操作和信號處理工作。(1)插入式c與匯編混合編程用法_asm()命令在c語言程序中插入?yún)R編命令的混合編程方式主要應用在以下狀況:需要插入的匯編程序代碼較少(如一些容易的挺直操作硬件命令);在用c語言的環(huán)境中,用插入式編寫的匯編子程序可以避開內存分配、寄存器用

6、法和庇護,以及參數(shù)傳遞和返回等方面的問題。關鍵字_ _asm()的基本語句格式:“asm_instrution”是指匯編語言的命令名,如move、mpy等?!?”用來區(qū)別足輸入還是輸出參數(shù),表示操作數(shù)oper0的值將傳輸給c語言的變量cptro;沒有“=”,表示該操作數(shù)是輸入操作數(shù),即操作數(shù)operl的值來自c語言變量cptrl?!癿”(operande modifier)用來指定操作數(shù)的類別,例如e用來指定操作數(shù)為累加器的msb,即a1或bl。oper0、operl用來指定操作數(shù)是寄存器或內存,如“a”表示該操作數(shù)被限定為地址寄存器r0r7,即要求編譯器為該操作數(shù)指定一個空閑的地址寄存器。(

7、2)c程序與匯編程序混合編程c程序與匯編程序混合編程就是將用c語言編寫的和用匯編語言編寫的源程序分開編輯、編譯,生成各自的目標文件,然后再鏈接到一起。其中,主程序在c語言環(huán)境中編寫,匯編語言編寫的子程序可以被調用。c程序與匯編程序混合編程由c程序編譯器g563c來完成。c編譯器g563c的指令格式為:在混合編程時,需要注重以下幾點:c程序與匯編程序混合編程的特點是,匯編語句是在匯編語言環(huán)境中編寫的;而用法_asm()命令在c語言程序中插入?yún)R編命令的混合編程方式,匯編程序的編寫要遵循c語言的規(guī)章。為了確保在匯編環(huán)境中編寫的匯編子程序在c語言環(huán)境中牢靠地被調用執(zhí)行,匯編程序需要做出如下處理:引導部

8、分,把程序返回地址保存到堆棧,接受程序入口參數(shù)的傳遞;保存匯編程序將要用法的寄存器的值;匯編程序的主體;復原其次步所保存的寄存器的值,把保存到堆棧中的寄存器的值按挨次從堆棧中取出并賦給本來的寄存器,使這些寄存器復原到本匯編子程序被調用前的狀態(tài);結尾部分,處理程序的返回值和返回地址,c語言子程序調用可以用return指令返回一個數(shù)值,混合編程的匯編程序也可以在c環(huán)境中被調用后返回一個值。在匯編源程序中,最后把需要返回的數(shù)值存放到累加器a中,然后用匯編命令tst把參數(shù)傳遞給c環(huán)境。c語言調用匯編源文件中的匯編子程序。首先在一個匯編源文件(如source,asm)中編寫一個匯編子程序。普通在匯編環(huán)境

9、中子程序的寫法如下:若在c語言源文件(如proj.c)中調用匯編子程序ftest,則可以在c語言中重新定義匯編子程序的標號。即在c語言文件頭部(或調用該匯編子程序的c函數(shù)之前)定義:extern void rename()_asm(“ftest”);然后在c語言環(huán)境中調用rename()子程序即可。假如在編寫匯編子程序時,在子程序的名稱前加上一個大寫的“f”,則在c環(huán)境中可以省略重新定義匯編子程序標號的步驟,這樣c語言默認的匯編子程序的名稱為去掉“f”以后的程序名。如上面的例子,在c環(huán)境中調用test()子程序,即調用sourceasm中ftest子程序。中斷程序的c語言寫法。編寫c語言的中斷

10、程序,首先要修改crt0asm中的中斷向量表,即在中斷向量表中找到某中斷向量的位置,并在此處調用程序員所編寫的中斷響應程序。如把增加型同步串口0(essi0)設定工作在中斷方式,數(shù)據(jù)的接收、發(fā)送都采納中斷來執(zhí)行。程序員編寫的增加串口數(shù)據(jù)接收中斷服務子程序為fssi_rx_isr。增加串口o數(shù)據(jù)接收的中斷向量的地址為p:$30(p代表程序存儲區(qū)),則對crt0asm中的中斷向量表修改如下:c語言用法匯編源文件中定義的變量因c語言定義的變量都是映射在內存的y區(qū)的,故c語言可以讀寫的在匯編源程序中定義的變量也必需是定義在y區(qū)的。例如,在匯編程序sourceasm中定義內存:則c變量c_var與匯編變

11、量test_var映射的是同一個內存物理地址。這是一種c語言與匯編語言之間數(shù)據(jù)的有效傳遞方式。g563c的局限性在于,對于g563c編譯規(guī)章不非常認識的用法者,會經(jīng)常由于匯編語言與c語言程序用法dsp資源的矛盾而發(fā)生異樣的錯誤,導致c語言程序無法牢靠運行。本課題的目的也在于削減用法者在c語言環(huán)境下大量用法匯編語言的需要,從而增加了系統(tǒng)的牢靠性。3 主要試驗項目本系統(tǒng)目前主要是作為本科和討論生的試驗平臺,在設計上包括硬件基礎試驗和軟件算法試驗兩部分。硬件試驗部分包括:串行通信試驗。數(shù)據(jù)存儲試驗。編程控制a端口對外部sram存儲器以及外圍的flash存儲器特定區(qū)域舉行存取操作。語音采集存儲試驗。設

12、置適當采樣率,編程實現(xiàn)語音信號的采集。語音錄放試驗。ad試驗(簡易示渡)。da試驗(函數(shù))。軟件試驗部分包括:基本數(shù)學運算試驗。fft迅速傅里葉變換。fir有限沖激響應。對給定時域信號舉行操作,并與matlab運算結果舉行分析比較。下面以串行通信試驗為例簡述試驗:試驗內容dsp通過串行接口(rs232)與pc機舉行雙向通信。把從鍵盤輸入的字符通過串口發(fā)送給pc機,并且接收pc機發(fā)送的字符。lcd工作在文字顯示模式;鎖相環(huán)時鐘分頻器和串行通信控制器設定串行通信的波特率。由pc機通過串口把一幅黑白傳輸給dsp并且通過lcd顯示出來。lcd工作在圖形顯示模式。試驗原理 利用對56311的sci(serial communica-tion interface)編程,實現(xiàn)dsp與上位機舉行多種波特率的串行通信。試驗用法的外部設備標準102鍵盤和lcd。試驗用法的dsp內部模塊鎖相環(huán)時鐘分頻器和串行通信接口(sci)。試驗內容:dsp通過串行接口(rs232)與pc機舉行雙向通信。dsp把從鍵盤輸入的字符通過串口發(fā)送給pc機,并且可以接收pc機發(fā)送的字符。試驗結果圖4

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論