国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

DSP56311EVM的教學實驗平臺設計

發(fā)布時間:2010-8-6 15:49    發(fā)布者:lavida
針對DSP56311評估板及其開發(fā)工具的特點、教學實驗和應用開發(fā)的需要進行了平臺的研制。系統(tǒng)的軟件部分主要包括用C++Builer制作的軟件平臺和編寫的支持C語言的DSP硬件驅(qū)動程序庫文件系統(tǒng)。  

硬件部分包括DSP開發(fā)和實驗所必需的信號發(fā)生電路LCD顯示接口電路和外接鍵盤。建立一個能處理多任務的主程序架構,把原單獨運行的信號處理程序模塊化為C語言的子程序,可在系統(tǒng)中隨時調(diào)用執(zhí)行。

1設計思想

本系統(tǒng)是一種教學、課程實驗及技術開發(fā)的平臺,主要應用于DSP原理及應用、數(shù)字信號處理等相關課程的實驗教學。它是以DSP56311EVM為核心,對系統(tǒng)進行的擴展,包括軟件和硬件兩個部分。軟什部分使用C++Builder制作了“DSP56311實驗平臺”的平臺環(huán)境,實現(xiàn)的用匯編語言編寫的DSP硬件驅(qū)動程序能夠為C語言調(diào)用;硬件部分有效利用了芯片的資源,增強了應用于教學的功能,并留出了進一步擴展的接口。
  
2 系統(tǒng)結構

2.1 硬件部分

硬件平臺的核心是M0torola公司提供的DSP56311評估板。DSP56311EVM可外接24根數(shù)據(jù)線、18根地址線和4根地址特征狀態(tài)線,對可擴展資源提供了接口;但這些接口一般不能直接與外部的設備連接,需要進行相應的擴展。硬件平臺的外部電路包含:±5V、±15V、+6V的直流電源,正弦波、三角波、方波的波形發(fā)生電路模塊,MIC信號放大電路,LCD顯示模塊等。

圖1為系統(tǒng)硬件平臺內(nèi)部結構,圖中左側(cè)為外部電路模塊,右側(cè)為DSP563llEVM評估板。這些電路模塊可以產(chǎn)生實驗測試所必需的信號,并反映程序執(zhí)行情況,為DSP的程序開發(fā)和調(diào)試提供方便的硬件環(huán)境。  
  
硬件部分解決的問題:

①DSP的端口通過寄存器設置可以作為通用輸入/輸出端口(GPI0)或?qū)S枚丝凇M獠侩娐放cDSP連接時,可以有多種實現(xiàn)方案。在資源緊張的情況下,調(diào)配資源,實現(xiàn)最優(yōu)。

②時序問題。DSP563ll的處理速度高達150 MIPS,1個指令周期大約7ns。解決時序問題,加快外圍的接口芯片工作速度。LCD相對于DSP來說,是種“反應”很慢的外部設備。本課題采用定時器模塊(時間中斷)來控制LCD動態(tài)圖形顯示的刷新頻率,如把LCD的刷新頻率設定為2幀/s,即每0.5s向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)硬件原理框圖。  

  
2.2 軟件部分

軟件分兩部分:用C++Builder制作的DSP56311軟件實驗平臺;用匯編語言編寫的DSP硬件驅(qū)動程序。

2.2.1 DSP56311實驗平臺

圖3為DSP56311實驗平臺界面。打包好的平臺可以隨意安裝在個人電腦上,平臺包括實驗說明、程序編制、程序編譯、參考結果、體驗實驗等內(nèi)容。此平臺可以作為實驗的指導軟件,也可作為開發(fā)軟件直接在平臺上編寫程序、編譯和仿真。  

  
2.2.2 C語言與匯編語言混合編程

本設計用匯編語言編寫DSP周邊外設的驅(qū)動程序和一些數(shù)字信號處理算法的子程序。用C語言編寫主控程序,調(diào)用匯編語言編寫的子程序完成硬件操作和信號處理工作。

(1)插入式C與匯編混合編程


使用__asm()指令在C語言程序中插入?yún)R編指令的混合編程方式主要應用在以下情況:需要插入的匯編程序代碼較少(如一些簡單的直接操作硬件指令);在用C語言的環(huán)境中,用插入式編寫的匯編子程序可以避免內(nèi)存分配、寄存器使用和保護,以及參數(shù)傳遞和返回等方面的問題。  
關鍵字_ _asm()的基本語句格式:  


①“asm_instrution”是指匯編語言的指令名,如move、mpy等。
②“=”用來區(qū)分足輸入還是輸出參數(shù),表示操作數(shù)Oper0的值將傳輸給C語言的變量CptrO;沒有“=”,表示該操作數(shù)是輸入操作數(shù),即操作數(shù)Operl的值來自C語言變量Cptrl。
③“M”(operande modifier)用來指定操作數(shù)的類別,例如%e用來指定操作數(shù)為累加器的MSB,即a1或bl。
④Oper0、Operl用來指定操作數(shù)是寄存器或內(nèi)存,如“A”表示該操作數(shù)被限定為地址寄存器r0~r7,即要求編譯器為該操作數(shù)指定一個空閑的地址寄存器。
  
(2)C程序與匯編程序混合編程

C程序與匯編程序混合編程就是將用C語言編寫的和用匯編語言編寫的源程序分開編輯、編譯,生成各自的目標文件,然后再鏈接到一起。其中,主程序在C語言環(huán)境中編寫,匯編語言編寫的子程序可以被調(diào)用。C程序與匯編程序混合編程由C程序編譯器g563c來完成。

C編譯器g563c的命令格式為:     


  
在混合編程時,需要注意以下幾點:

①C程序與匯編程序混合編程的特點是,匯編語句是在匯編語言環(huán)境中編寫的;而使用_asm()指令在C語言程序中插入?yún)R編指令的混合編程方式,匯編程序的編寫要遵循C語言的規(guī)則。

②為了確保在匯編環(huán)境中編寫的匯編子程序在C語言環(huán)境中可靠地被調(diào)用執(zhí)行,匯編程序需要做出如下處理:引導部分,把程序返回地址保存到堆棧,接受程序入口參數(shù)的傳遞;保存匯編程序?qū)⒁褂玫募拇嫫鞯闹担粎R編程序的主體;恢復第二步所保存的寄存器的值,把保存到堆棧中的寄存器的值按順序從堆棧中取出并賦給原來的寄存器,使這些寄存器恢復到本匯編子程序被調(diào)用前的狀態(tài);結尾部分,處理程序的返回值和返回地址,c語言子程序調(diào)用可以用return命令返回一個數(shù)值,混合編程的匯編程序也可以在C環(huán)境中被調(diào)用后返回一個值。在匯編源程序中,最后把需要返回的數(shù)值存放到累加器a中,然后用匯編指令tst把參數(shù)傳遞給c環(huán)境。

③C語言調(diào)用匯編源文件中的匯編子程序。首先在一個匯編源文件(如source,asm)中編寫一個匯編子程序。一般在匯編環(huán)境中子程序的寫法如下:  

若在C語言源文件(如proj.c)中調(diào)用匯編子程序Ftest,則可以在C語言中重新定義匯編子程序的標號。即在C語言文件頭部(或調(diào)用該匯編子程序的C函數(shù)之前)定義:  
extern void ReName()__asm(“FTest”);
然后在C語言環(huán)境中調(diào)用ReName()子程序即可。

如果在編寫匯編子程序時,在子程序的名稱前加上一個大寫的“F”,則在C環(huán)境中可以省略重新定義匯編子程序標號的步驟,這樣C語言默認的匯編子程序的名稱為去掉“F”以后的程序名。如上面的例子,在C環(huán)境中調(diào)用test()子程序,即調(diào)用source.a(chǎn)sm中Ftest子程序。

④中斷程序的C語言寫法。編寫C語言的中斷程序,首先要修改crt0.a(chǎn)sm中的中斷向量表,即在中斷向量表中找到某中斷向量的位置,并在此處調(diào)用程序員所編寫的中斷響應程序。

如把增強型同步串口0(ESSI0)設定工作在中斷方式,數(shù)據(jù)的接收、發(fā)送都采用中斷來執(zhí)行。程序員編寫的增強串口數(shù)據(jù)接收中斷服務子程序為Fssi_rx_isr。增強串口O數(shù)據(jù)接收的中斷向量的地址為p:$30(p代表程序存儲區(qū)),則對crt0.a(chǎn)sm中的中斷向量表修改如下:  



⑤C語言使用匯編源文件中定義的變量

因C語言定義的變量都是映射在內(nèi)存的Y區(qū)的,故C語言可以讀寫的在匯編源程序中定義的變量也必須是定義在Y區(qū)的。例如,在匯編程序source.a(chǎn)sm中定義內(nèi)存:  

  
則C變量c_var與匯編變量test_var映射的是同一個內(nèi)存物理地址。這是一種C語言與匯編語言之間數(shù)據(jù)的有效傳遞方式。

g563c的局限性在于,對于g563c編譯規(guī)則不十分熟悉的使用者,會常常因為匯編語言與C語言程序使用DSP資源的沖突而發(fā)生異常的錯誤,導致C語言程序無法可靠運行。本課題的目的也在于減少使用者在C語言環(huán)境下大量使用匯編語言的需要,從而增強了系統(tǒng)的可靠性。
  
3 主要實驗項目

嵌入式系統(tǒng)目前主要是作為本科和研究生的實驗平臺,在設計上包括硬件基礎實驗和軟件算法實驗兩部分。

硬件實驗部分包括:

①串行通信實驗。
②數(shù)據(jù)存儲實驗。編程控制A端口對外部SRAM存儲器以及外圍的Flash存儲器特定區(qū)域進行存取操作。
③語音采集存儲實驗。設置適當采樣率,編程實現(xiàn)語音信號的采集。
④語音錄放實驗。
⑤A/D實驗(簡易示渡)。
⑥D(zhuǎn)/A實驗(函數(shù)信號發(fā)生器)。

軟件實驗部分包括:

①基本數(shù)學運算實驗。
②FFT快速傅里葉變換。
③FIR有限沖激響應濾波器

對給定時域信號進行操作,并與Matlab運算結果進行分析比較。

下面以串行通信實驗為例簡述實驗:

實驗內(nèi)容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內(nèi)部模塊鎖相環(huán)時鐘分頻器和串行通信接口(SCI)。實驗內(nèi)容:DSP通過串行接口(RS232)與PC機進行雙向通信。DSP把從鍵盤輸入的字符通過串口發(fā)送給PC機,并且可以接收PC機發(fā)送的字符。

實驗結果圖4為發(fā)送圖片的LCD顯示結果。    
4 結論

本課題實現(xiàn)了基于DSP563llEVM教學實驗平臺的研制。編寫了支持C語言的DSP硬件驅(qū)動程序庫文件系統(tǒng),沒計了DSP開發(fā)和實驗所必需的信號發(fā)生電路和方便結果顯示的LCD顯示接口電路;建立了能夠處理多個任務的主程序架構。把單獨運行的信號處理程序模塊化為C語言的子程序,可以在系統(tǒng)中隨時調(diào)用執(zhí)行,充分體現(xiàn)了DSP強大的計算能力和軟件編程的靈活性。
本文地址:http://m.qingdxww.cn/thread-19889-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內(nèi)容、版權和其它問題,我們將根據(jù)著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 使用SAM-IoT Wx v2開發(fā)板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發(fā)培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿(mào)澤電子(Mouser)專區(qū)

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日本在线观看免费高清 | 亚洲艹 | 日本精品久久久一区二区三区 | 欧美成a人免费观看 | 国产在线播放网址 | 999小视频| 欧美日韩国产一区三区 | 国产精品成人久久久久久久 | 日本特交大片免费观看 | 欧美在线观看视频网站 | 一级特黄a视频 | 18美女福利视频网站免费观看 | 欧美成人精品手机在线观看 | 精品视频在线观看一区二区三区 | 成人免费视频在线看 | 台湾黄三级高清在线观看播放 | 91天堂素人精品系列全集亚洲 | 久久这里只有精品66re99 | 亚洲青青青网伊人精品 | 啊用力太猛了啊好深视频免费 | 狠狠操社区 | 李宗全集集在线播放 | 免费看va| 91在线视频免费 | 国内精品久久久久久久 | 日韩区在线观看 | 久热这里只有精 | 九九热在线免费 | 4虎永免费最新永久免费地址 | 色视频在线免费 | 成人福利在线看 | 午夜性生活视频 | 99re热视频这里只精品 | 日本欧美一区二区三区高清 | 国产一区二区三区欧美精品 | 欧美图片自拍偷拍 | 欧美性视频在线播放 | 99精品国产成人a∨免费看 | 国产区一区二区三区 | 日本免费高清在线观看播放 | 黄视频网站免费 |