導航:首頁 > 教學教案 > dsp教學

dsp教學

發布時間:2020-12-17 10:42:41

❶ 有單片機基礎在學習DSP有多難,DSP很難么我本科畢業/

1. 接觸DSP

在參加過一次社會上多的盡乎到了泛濫地步的"DSPxxx"培訓班之後,我"自信"已經具備DSP工程師資格,便欣喜若狂跑道書店買了一本名為"DSP xxx應用"的書,作者叫xxx,並且是這個領域的牛人,這本書確實是很出色的書籍。但是當時,對於我這個對DSP一竅不通、剛剛入門的人來說卻建立了一個錯誤的概念——DSP是個很容易的領域,只要培訓一下,再稍微看看書,就可以成為專家。所以,現在看來,這些都是誤導,我認為學習DSP技術應該分為兩個階段,第一階段學習DSP技術基礎概念;第二階段學習DSP技術的行業應用。那本"DSP xxx應用"的書,它更適合書名應叫做「DSP中的數學或物理運用」...什麼的。

2. 購買DSP學習套件

有了興趣,就要去學習,於是我攛掇領導批准購買了DSP學習入門套件(DSK),許多公司均有銷售,如TI等,大概是需要3000-4000人民幣。買後不久,我就發現,這種套件對於我來說一點用處都沒有。因為我的基礎知識實在是太差了。這些套件對於我來說,只是另一種涵義的PC機及一些外圍設備,想要懂的這些東西,我就需要去讀更多的相關書籍,這時,很難沒有想要放棄的念頭,我開始有點畏懼DSP這種技術,門檻太高了。可是,我不能放棄,我已經投入了許多的金錢和時間,我不想丟掉這4000元錢,也不能對領導沒有交待。事實上,我沒有想到,我將付出更多的錢和時間去學習3. 再次參加培訓班,再次購買DSP書籍

在我就感到了無助,困惑之際。我又想到了放棄。雖然我的數學還算不錯,但其中遇到的一些問題在我思考後,還是無法解決,我越來越畏懼DSP了。於是,我開始在「google"上搜索DSP培訓相關的信息,終於發現聞亭公司「DSP培訓中心」的教程和內容正是我一直尋找的東西。

也許是DSP技術對我的有著巨大的誘惑力,也許是我的執著,我又一次勇敢的報名參加了培訓。32個課時之後,解決了我半年多來積累的很多粗淺的問題。再翻開培訓教材剛剛復讀了第一章時,我想如果這本教材是我讀到的第一本書,並且我沒有花4000元買那個可*的學習套件,我會毫不猶豫的投降,放棄學習DSP,但……。那個可*的xxx作者,他的書怎麼可以用作教學呀。他的書雖然讓我對DSP產生了濃厚的興趣,卻把我引到了一條艱難的路上,而且花了那麼多的冤枉錢...。既然事已如此,我只有慢慢的去讀這些書籍,在我讀到教材的後面章節以後,我開始明白前面章節的內容,所以當你讀書遇到不明白的時候,千萬不要氣餒。有時,一個內容,可能需要讀上幾遍,才能明白,這比一開始的感覺要好的多了。

4. 實驗——至關重要的一步

現在,從你的架子上取下那套DSK,去嘗試做一些小實驗,我的第一個實驗是「正弦發生器」,這個實驗比較簡單,但是它也花費了我幾周的時間去讀大量的關於串口、編碼、寄存器等的書並且進行大量的實驗。這個執行半小時的「正弦發生器」,讓我查閱了恨不得夠組建一個圖書館的書籍,而且這個東西沒有任何用途。我是用匯編語言在54x中執行,這個實驗讓我很好的理解了什麼是DSP,什麼是McBSP, DMA, 等。

當然問題也同步產生了,我就又不得不做了許多的實驗去驗證。我建議,在系統未定型之前,使用mathlab/simulink進行模擬,並且可以多實驗幾種晶元,這樣可以讓你明白更多的內容。我覺得我就要成為一個真正的DSP工程師了,我度過了最困難的時期。我覺得自己是個英雄,嘿嘿。

5. 去尋找一份與DSP相關的工作,去當個DSP工程師

我希望困難已經過去,但這種願望為時過早了。在DSP的研究中,我還遇到了很多的困難,由於篇幅有限,我就不在進行描述了。反正,如果想成為真正的DSP專家,就不要期望事情會變得容易。有些DSP開發人員並不知道什麼是真正的0和1,他們只會查閱各種參考書籍和參數表,我們並不提倡這種做法。因為這些人選擇了一種簡單的做法,但是他們並不是真正的DSP開發人員.他們只是編寫一些他們不理解的代碼,他們似乎在擔當著一台「編碼器」的角色.

6. 總結

這篇文章只是我的一點感慨,可能並不是很適用現在的DSP開發工程師,因為,市面上已經有了供你學習的DSP教學套件,搭配了多種實驗供你參考,輕松入門,如:聞亭公司的「大學實驗箱」什麼的。這個實驗箱提供了一個很好的實驗環境,並且為初學的你設計了多種實驗、教材,讓你由淺入深的學習。不會向我似的,繞一大圈才走到正確的路上。另外,你也可以向他們的工程師咨詢。

祝所有DSP的研究者早日成功!

❷ 淺談如何學習DSP軟體開發

對於學習DSP重要的是理清外設的工作 構架,相應的寄存器如何設置,沒有專必 要對寄存器花太多屬的時間去研究,用的 時候能找到(寄存器的名稱都是英文的 縮寫,很好理解的)。學習DSP,先找 本中文教材入個門,之後你會發現好多 地方、尤其是真正要用的,往往也是最 復雜的地方書上都找不到,更談不上做 什麼項目了,這時候就要開始深入研究 Data Sheet,以及官網的源代碼示例 有了之前的中文教材基礎看起來就快多 了;學習DSP重要的不是會編程,而是 演算法的研究(Matlab/Simulnk模擬就不

❸ 哪兒有DSP的視頻教學資料

這種問題要去專業論壇 ,或專業網站去問哈 ,微電子業應該是:電子圈---電子行業的人脈平台。這裡面這個行業的人比較多一點,回答可能更專業。

❹ 汽車音響功放,dsp,怎麼接線

汽車音響功放dsp接線方法如下:

1、首先看看功放和音響的後面,音頻線是否齊全;如果沒有,就回要先到五金店中答購買一段,不必太長,否則也會盤起來放在後面。


❺ 求類似這樣一個教程:從入門到精通《手把手教你學dsp-基於TMS320F28335》

hellodspcom

❻ 誰有顧衛剛dsp hellodsp的 教程 若有 奉獻一下 非常感謝

我有 http://dl.vmall.com/c0cd8b29di

❼ dsp視頻教程下載。

暫時沒有找到針對DM642的視頻教程。電子科大彭啟綜教授的那個視頻好像是針對C5000系列DSP教程,個人回認為對學習答DM642沒有什麼幫助。一個是C6000平台,一個是C5000平台。內核架構上相差太遠。C6000平台下也有一些視頻教程,比如TI工程師主講的 《TI DSP C64+網路視頻教程》,網路下你就可以找到。只不過是針對C6455來講的,C64+內核,有些特性DM642可能不具備。個人認為這個視頻學習DM642有一定的幫助。學習DM642更多是要通過多看資料,多看代碼,多自己寫代碼。

❽ 求DSP學習建議

有些資料可供你參考:
DSP的特點
對於沒有使用過DSP的初學者來說,第一個困惑就是DSP其他的嵌入式處理器究竟有什麼不同,它和單片機,ARM有什麼區別.事實上,DSP也是一種嵌入式處理器,它完全可以完成單片機的功能.
唯一的重要的區別在於DSP支持單時鍾周期的"乘-加"運算.這幾乎是所有廠家的DSP晶元的一個共有特徵.幾乎所有的DSP處理器的指令集中都會有一條MAC指令,這條指令可以把兩個操作數從RAM中取出相乘,然後加到一個累加器中,所有這些操作都在一個時鍾周期內完成.擁有這樣一條指令的處理器就具備了
DSP功能.
具有這條指令就稱之為數字信號處理器的原因在於,所有的數字信號處理演算法中最為常見的算術操作就是"乘-加".這是因為數字信號處理中大量使用了內積,或稱"點積"的運算.無論是FIR濾波,FFT,信號相關,數字混頻,下變頻.所有這些數字信號處理的運算經常是將輸入信號與一個系數表或者與一個本地參考信號相乘然後積分(累加),這就表現為將兩個向量(或稱序列)進行點積,在編程上就變成將輸入的采樣放在一個循環buffer里,本地的系數表或參考信號也放在一個buffer里,然後使用兩個指針指向這兩個buffer.這樣就可以在一個loop裡面使用一個MAC指令將二者進行點積運算.這樣的點積運算對與處理器來說是最快的,因為僅需一個始終周期就可以完成一次乘加.

了解DSP的這一特點後,當我們設計一個嵌入式系統時,首先要考慮處理器所實現的演算法中是否有點積運算
,即是否要經常進行兩個數組的乘加,(記住數字濾波,相關等都表現為兩個數組的點積)如果有的話,每秒要做多少次,這樣就能夠決定是否採用DSP,採用多高性能的DSP了.
浮點與定點
浮點與定點也是經常是初學者困惑的問題,在選擇DSP器件的時候,是採用浮點還是採用定點,如果用定點是16位還是32位?其實這個問題和你的演算法所要求的信號的動態范圍有關.
定點的計算不過是把一個數據當作整數來處理,通常AD采樣來的都是整數,這個數相對於真實的模擬信號有一個刻度因子,大家都知道用一個16位的AD去采樣一個0到5V的信號,那麼AD輸出的整數除以2^16再乘以5V就是對應的電壓.在定點DSP中是直接對這個16位的采樣進行處理,並不將它轉換成以小數表示的電壓,因為定點DSP無法以足夠的精度表示一個小數,它只能對整數進行計算.
而浮點DSP的優勢在於它可以把這個采樣得到的整數轉換成小數表示的電壓,並不損失精度(這個小數用科學記數法來表示),原因在於科學記數法可以表示很大的動態范圍的一個信號,以IEEE754浮點數為例,
單精度浮點格式: [31] 1位符號 [30-23]8位指數 [22-00]23位小數
這樣的能表示的最小的數是+-2^-149,最大的數是+-(2-2^23)*2^127.動態范圍為20*log(最大的數/最小的數)=1667.6dB 這樣大的動態范圍使得我們在編程的時候幾乎不必考慮乘法和累加的溢出,而如果使用定點處理器編程,對計算結果進行舍入和移位則是家常便飯,這在一定程度上會損失是精度.原因在於定點處理處理的信號的動態范圍有限,比如16位定點DSP,可以表示整數范圍為1-65536,其動態范圍為20*log(65536/1)=96dB.對於32定點DSP,動態范圍為20*log(2^32/1)=192dB,遠小於32位ieee浮點數的1667.6dB,但是,實際上192dB對絕大多數應用所處理的信號已經足夠了.

由於AD轉換器的位數限制,一般輸入信號的動態范圍都比較小,但在DSP的信號處理中,由於點積運算會使中間節點信號的動態范圍增加,所以主要考慮信號處理流程中中間結果的動態范圍,以及演算法對中間結果的精度要求,來選擇相應的DSP.另外就是浮點的DSP更易於編程,定點DSP編程中程序員要不斷調整中間結果的P,Q值,實際就是不斷對中間結果進行移位調整和舍入.
DSP與RTOS
TI的CCS提供BIOS,ADI的VDSP提供VDK,都是基於各自DSP的嵌入式多任務內核.DSP編程可以用單用C,也可以用匯編,或者二者結合,一般軟體編譯工具都提供了很好的支持.我不想在這里多說BIOS,VDK怎麼用這在相應的文檔里說的很詳細.我想給初學者說說DSP的RTOS原理.用短短幾段話說這個復雜的東西也是挑戰!^_^
其實DSP的RTOS和基於其他處理器的通用RTOS沒什麼大的區別,現在幾乎人人皆知的uCOSii也很容易移植到DSP上來,只要把寄存器保存與恢復部分和堆棧部分改改就可以.一般在用BIOS和VDK之前,先看看操作系統原理的書比較好.uCOS那本書也不錯.
BIOS和VDK其實是一個RTOS內核函數集,DSP的應用程序會和這些函數連接成一個可執行文件.其實實現一個簡單的多任務內核並不復雜,首先定義好內核的各種數據結構,然後寫一個scheler函數,功能是從所有就緒任務中(通過查找就緒任務隊列或就緒任務表)找出優先順序最高的任務,並恢復其執行.然後在此基礎上寫幾個用於任務間通信的函數就可以了,比如event,message box,等等.

RTOS一般採用搶先式的任務調度方式,舉例說當任務A等待的資源available的時候,DSP會執行一個任務調度函數scheler,這個函數會檢查當前任務是否比任務A優先順序低,如果是的話,就會把它當前掛起,然後把任務A保存在堆棧里寄存器值全部pop到DSP處理器中(這就是所謂的任務現場恢復).接著scheler還會把從堆棧中取出任務A掛起時的程序執行的地址,pop到PC,使任務A繼續執行.這樣當前任務就被任務A搶先了.
使用RTOS之後,每個任務都會有一個主函數,這個函數的起始地址就是該任務的入口.一般每個任務的主函數里有一個死循環,這個循環使該任務周期地執行,完成一部分演算法模塊的功能,其實這個函數跟普通函數沒任何區別,類似於C語言中的main函數.一個任務創建的時候,RTOS會把這個函數入口地址壓入任務的堆棧中,好象這個函數(任務)剛發生過一次中斷一樣.一旦這個新創建任務的優先順序在就緒隊列中是最高的,RTOS就會從其堆棧中彈出其入口地址開始執行.
有一個疑問是,不使用RTOS,而是簡單使用一個主循環在程序中調用各個函數模塊,一樣可以實現軟體的調度執行.那麼,這種常用的方法與使用RTOS相比有什麼區別呢?其實,使用主循環的方法不過是一種沒有優先順序的順序執行的調度策略而已.這種方法的缺點在於,主循環中調用的各個函數是順序執行的,那麼,即使是一個無關緊要的函數(比如閃爍一個LED),只要他不主動返回,也會一直執行直到結束,這時,如果發生一個重要的事件(比如DMA buffer full 中斷),就會得不到及時的響應和處理,只能等到那個閃爍LED的函數執行完畢.這樣就使整個DSP處理的優先次序十分不合理.而在使用了RTOS之後,當一個重要的事件發生時,中斷處理會進入RTOS,並調用scheler,這時scheler 會讓處理這一事件的任務搶佔DSP處理器(因為它的優先順序高).而哪個閃爍LED任務即使晚執行幾毫秒都沒任何影響.這樣整個DSP的調度策略就十分合理.
RTOS要說的內容太多,我只能講一下自己的一點體會吧
DSP與正(余)弦波
在DSP的應用中,我們經常要用到三角函數,或者合成一個正(余)弦波.這是因為我們喜歡把信號通過傅立葉變換映射到三角函數空間來理解信號的頻率特性.信號處理的一些計算技巧都需要在DSP軟體中進行三角函數計算.然而三角函數計算是非線性的計算,DSP並沒有專門的指令來求一個數的正弦或餘弦.於是我們需要用線性方法來近似求解.
一個直接的想法是用多項式擬合,這也正是大多數DSP C編譯器提供正餘弦庫函數所採用的方法.其原理是把三角函數向函數空間{1,x,x^2,x^3....}上投影,從而獲得一系列的系數,用這些系數就可以擬合出三角函數.比如,我們在[0,pi/2]區間上擬合sin,只需在matlab中輸入以下命令:
x=0:0.05:pi/2;
p=polyfit(x,sin(x),5)
就得到5階的多項式系數:
p =
0.00581052047605 0.00580963216172 -0.17193865685360
0.00209002716293 0.99969270087312 0.00000809543448
於是在[0,pi/2]區間上:
sin(x)= 0.00000809543448+0.99969270087312*x+ 0.00209002716293*x^2-0.17193865685360*x^3+
0.00580963216172*x^4+0.00581052047605*x^5
於是在DSP程序中,我們可以通過用乘加(MAC)指令計算這個多項式來近似求得sin(x)

當然如果用定點DSP還要把P這個多項式系數表用一定的Q值來改寫成定點數.
這樣的三角函數計算一般都需要幾十個cycle 的開銷.這對於某些場合是不能容忍的
另一種更快的方法是藉助於查表,比如,我們將[0,pi/2]分成32個區間,每個區間長度就為pi/64,在每個區間上我們使用直線段擬合sin曲線,每個區間線段起點的正弦值和線段斜率事先算好,存在RAM里,這樣就需要在在RAM里存儲64個
常數:
32個起點的精確的正弦值(事先算好): s[32]={0,sin(pi/64),sin(pi/32),sin(pi/16)....}
32個線段的斜率: f[32]={0.049,.....}
對於輸入的每一個x,先根據其大小找到所在區間i,通常x用定點表示,一般取其高幾位就是系數i了,然 後通過下式即可求出sin(x):
sin(x)= s*f
這樣一般只需幾個CYCLE就可以算出正弦值,如果需要更高的精度,可以將區間分得更細,當然,也就需 要更多的RAM去存儲常數表.
事實上,不僅三角函數,其他的各種非線性函數都是這樣近似計算的.
1. 接觸DSP
在參加過一次社會上多的盡乎到了泛濫地步的"DSPxxx"培訓班之後,我"自信"已經具備DSP工師資格,便欣喜若狂跑道書店買了一本名為"DSP xxx應用"的書,作者叫xxx,並且是這個領域的牛人,這本書確實是很出色的書籍.但是當時,對於我這個對DSP一竅不通、剛剛入門的人來說卻建立了一個錯誤的概念——DSP是個很容易的領域,只要培訓一下,再稍微看看書,就可以成為專家.所以,現在看來,這些都是誤導,我認為學習DSP技術應該分為兩個階段,第一階段學習DSP技術基礎概念;第二階段學習DSP技術的行業應用.那本"DSP xxx應用"的書,它更適合書名應叫做"DSP中的數學或物理運用"...什麼的.

2. 購買DSP學習套件
有了興趣,就要去學習,於是我攛掇領導批准購買了DSP學習入門套件(DSK),許多公司均有銷售,如TI等,大概是需要3000-4000人民幣.買後不久,我就發現,這種套件對於我來說一點用處都沒有.因為我的基礎知識實在是太差了.這些套件對於我來說,只是另一種涵義的PC機及一些外圍設備,想要懂的這些東西,我就需要去讀更多的相關書籍,這時,很難沒有想要放棄的念頭,我開始有點畏懼DSP這種技術,門檻太高了.可是,我不能放棄,我已經投入了許多的金錢和時間,我不想丟掉這4000元錢,也不能對領導沒有交待.事實上,我沒有想到,我將付出更多的錢和時間去學習.
3. 再次參加培訓班,再次購買DSP書籍
在我就感到了無助,困惑之際.我又想到了放棄.雖然我的數學還算不錯,但其中遇到的一些問題在我思考後,還是無法解決,我越來越畏懼DSP了.於是,我開始在"google"上搜索DSP培訓相關的信息,終於發現聞亭公司"DSP培訓中心"的教程和內容正是我一直尋找的東西.也許是DSP技術對我的有著巨大的誘惑力,也許是我的之直著,我又一次勇敢的報名參加了培訓.32個課時之後,解決了我半年多來積累的很多粗淺的問題.再翻開培訓教材剛剛復讀了第一章時,我想如果這本教材是我讀到的第一本書,並且我沒有花4000元買那個可*的學習套件,我會毫不猶豫的投降,放棄學習DSP,但.......那個可*的xxx作者,他的書怎麼可以用作教學呀.他的書雖然讓我對DSP產生了濃厚的興趣,卻把我引到了一條艱難的路上,而且花了那麼多的冤枉錢....既然事已如此,我只有慢慢的去讀這些書籍,在我讀到教材的後面章節以後,我開始明白前面章節的內容,所以當你讀書遇到不明白的時候,千萬不要氣餒.有時,一個內容,可能需要讀上幾遍,才能明白,這比一開始的感覺要好的多了.
4. 實驗——至關重要的一步
現在,從你的架子上取下那套DSK,去嘗試做一些小實驗,我的第一個實驗是"正弦發生器",這個實驗比較簡單,但是它也花費了我幾周的時間去讀大量的關於串口、編碼、寄存器等的書並且進行大量的實驗.這個執行半小時的"正弦發生器",讓我查閱了恨不得夠組建一個圖書館的書籍,而且這個東西沒有任何用途.我是用匯編語言在54x中執行,這個實驗讓我很好的理解了什麼是DSP,什麼是McBSP, DMA, 等.當然問題也同步產生了,我就又不得不做了許多的實驗去驗證.我建議,在系統未定型之前,使用mathlab/simulink進行模擬,並且可以多實驗幾種晶元,這樣可以讓你明白更多的內容.我覺得我就要成為一個真正的DSP工程師了,我度過了最困難的時期.我覺得自己是個英雄,嘿嘿.
5. 去尋找一份與DSP相關的工作,去當個DSP工程師
我希望困難已經過去,但這種願望為時過早了.在DSP的研究中,我還遇到了很多的困難,由於篇幅有限,我就不在進行描述了.反正,如果想成為真正的DSP專家,就不要期望事情會變得容易.有些DSP開發人員並不知道什麼是真正的0和1,他們只會查閱各種參考書籍和參數表,我們並不提倡這種做法.因為這些人選擇了一種簡單的做法,但是他們並不是真正的DSP開發人員.他們只是編寫一些他們不理解的代碼,他們似乎在擔當著一台"編碼器"的角色.
6. 總結
這篇文章只是我的一點感慨,可能並不是很適用現在的DSP開發工程師,因為,市面上已經有了供你學習的DSP教學套件,搭配了多種實驗供你參考,輕松入門,如:聞亭公司的"大學實驗箱"什麼的.這個實驗箱提供了一個很好的實驗環境,並且為初學的你設計了多種實驗、教材,讓你由淺入深的學習.不會向我似的,繞一大圈才走到正確的路上.另外,你也可以向他們的工程師咨詢.

❾ 哪裡有DSP教程資料可以下載啊

EDA365的DSP論壇就可以,下載資料都是免費的,數量也比較多。

❿ DSP街舞團體的一對一授課老師即課程名單

普開: locking . hiphop
伊夏: hiphopnewstyle ,poping, house
吐爾洪江: hiphop poping locking
帕爾哈提專 poping house
阿伊努爾 hiphop jazz
百合屬 locking

閱讀全文

與dsp教學相關的資料

熱點內容
北京高中作文耐心 瀏覽:59
變作文600字初中 瀏覽:660
2011台州中考語文 瀏覽:250
識字一的教案 瀏覽:85
語文作業本凡卡答案 瀏覽:619
300書信作文大全 瀏覽:227
蘇教版五年級語文下冊補充成語ppt 瀏覽:891
愛的方式作文開頭結尾 瀏覽:694
端午節的作文600字初中 瀏覽:70
3年級上冊語文作業本答案 瀏覽:265
高考語文與小學的聯系 瀏覽:965
2015北京語文中考答案 瀏覽:979
雙分點地步法教學 瀏覽:714
小學二年級作文輔導課 瀏覽:693
關於成功條件的作文素材 瀏覽:848
建軍節作文的結尾 瀏覽:88
五年級下冊語文mp3在線收聽 瀏覽:696
ie教案6 瀏覽:907
三年級語文培優補差計劃 瀏覽:679
二胡獨奏一枝花教學 瀏覽:525