DSPTMS320C5509A之初始化(一)

2021-09-10 02:49:48 字數 1628 閱讀 9474

dsp其實本質上講和arm差不多,只不過乘法運算能力和浮點運算能力強,

在相同的主頻下,有很高的mips(每秒百萬指令集)運算能力,得益於

dsp的哈佛架構和設計上的優化處理,特別適合做數**算。

但是dsp的 外設不太友好,除錯複雜尤其是ti的dsp晶元手冊不適合新手入門,

且gpio口特別少。

以tmsc5509a開始介紹,初始化程式如下:

#include #include #include #include #include "stdio.h"

#include "inc\dma.h"

#include "inc\i2c.h"

#include "inc\globe.h"

#include "inc\dac.h"

#include "inc\dds.h"

#include "inc\timer0.h"

/*鎖相環的設定*/

pll_config mypllcfg =

;void delay(uint32 k)

int old_intm;

extern void vecstart(void);

extern timer_handle mhtimer1;

int main();

csl_init();

//設定系統的執行速度為200mhz

pll_config(&mypllcfg);

chip_fset(sysr,clkdiv,4); //clkout = 200m/8 = 25m

irq_setvecs((uint32)(&vecstart));

old_intm = irq_globaldisable(); //temporarily disable interrupts and clear any peding

//初始化dma

inidma_ch0(); //adc max121

// inidma_ch1(); //audio dac8830

// inidma_ch2();

inidmapara();

//初始化mcbsp

iniadc();

iniaudiodac();

inidac8164d();

sendtodac8164(dac_porta,agc.curoutdata);

irq_globalenable(); //enable all maskable interrupts

//irq_globalrestore(old_intm); //restore status of global interrupt enable flag

iniglobevalue(); //初始化全域性變數

initimer0(); //初始化定時器0,為adc的const提供取樣間隔時鐘

TMS320C5509A學習筆記 學前注意事項

a 安裝正確的 器驅動,我採用的是合眾達的xds510 usb2.0 器,成功安裝驅動後開啟 裝置管理器後 看到的效果如圖,b jtag介面不能插反,如果jtag插反,電路板中的u10會發熱。複習一下jtag介面吧 jtag joint test action group 聯合測試行動小組 是一種國...

TMS320C5509A自帶ADC配置引數計算

tms320c5509a自帶adc使用起來比較方便,但是確定引數比較麻煩。作者嘗試使用程式計算出來,方便dsp自帶adc的使用。設計的程式可 直接計算出tms320c5509a自帶adc配置引數,以十六進製制形式輸出結果,方便可用。另外作者發現,ti的tms320vc5509 dsp analog ...

DSP TMS320F2812的SPI使用總結

1.spi速率不能超過15m,超過後會出現嚴重誤碼 2.如果接收方式為中斷接收,spiccr字元長度控制位決定了中斷的字長。如字長為8,中斷等級為1,則每接收乙個位元組產生一次中斷。如字長為16,中斷等級為1,則每接收2個位元組產生一次中斷。3.注意主模式和從模式的極性一定要相同。主模式為上公升沿取...