資料介紹
引 言
DSP(數(shù)字信號處理器)憑借其高速數(shù)字信號處理功能、實(shí)時(shí)性強(qiáng)、低功耗、高集成度等嵌入式微計(jì)算機(jī)的特點(diǎn),已在通信、航空航天、工業(yè)控制、醫(yī)療、國防、汽車等領(lǐng)域得到了廣泛的應(yīng)用。TMS320LF240xA DSP(以下簡稱LF240xA)是美國TI公司推出的高性能16位數(shù)字信號處理器,它具有運(yùn)算速度快,在片集成的外設(shè)豐富等特點(diǎn),故又稱其為DSP控制器。應(yīng)用領(lǐng)域主要針對工業(yè)測控、電機(jī)控制、家用電器和消費(fèi)電子等場合。
LF240xA的軟件開發(fā)過程,既可以使用匯編語言,也可以使用C語言。匯編語言的代碼執(zhí)行效率高、運(yùn)行速度快,可以直接對寄存器進(jìn)行操作,充分發(fā)揮了DSP控制器的硬件性能;但其開發(fā)的工作量大,程序可讀性、移植性差。與匯編語言不同的是,C語言可讀性強(qiáng)、編程簡單、調(diào)試方便,適合編寫結(jié)構(gòu)和算法比較復(fù)雜的程序。然而,對于控制來說,用C語言開發(fā)程序也有其明顯的缺點(diǎn):首先,C語言代碼有冗余,降低了執(zhí)行效率,對于實(shí)時(shí)性要求很高的某些控制領(lǐng)域來說不符合要求;其次,C語言無法實(shí)現(xiàn)某些底層的操作。
在具體軟件開發(fā)過程中,可以將匯編語言和C語言結(jié)合起來編程,發(fā)揮各自的優(yōu)點(diǎn)。這樣既能滿足實(shí)時(shí)性要求又能實(shí)現(xiàn)所需的功能,同時(shí)兼顧程序的可讀性和編程效率。為此,了解及掌握C語言和匯編語言的混合編程技術(shù)對于DSP的軟件開發(fā)具有重要的意義。
1 準(zhǔn)備工作
在進(jìn)行混合編程之前,首先要?jiǎng)?chuàng)造一個(gè)運(yùn)行的基本環(huán)境。這個(gè)基本環(huán)境包括存儲空間的分配、DSP寄存器映射地址的定義以及中斷向量的定義等方面。
(1)存儲空間的分配
命令文件(*.cmd)用來實(shí)現(xiàn)對程序存儲器和數(shù)據(jù)存儲器空間的分配。一是目標(biāo)存儲器定義(由MEMORY命令定義),二是各段的定位(由SECTIONS命令定義)。
?。?)寄存器映射地址的定義
頭文件(*.h)用來定義所用到的DSP控制器內(nèi)部寄存器的映射地址,以及用戶自定義的常量、寄存器等。通常,頭文件在主程序的開始,使用匯編指示符“.include”和“.copy”對其調(diào)用。頭文件的定義有2種方式。第1種是以指針變量的形式定義各種寄存器,即采用如下形式:
volatile unsigned int T1CMPR Ox7402第2種則是用宏定義的方式定義各種寄存器的名稱:
# define T1CMPR Ox7402
?。?)中斷向量的定義
LF240xA內(nèi)部提供了多個(gè)中斷,如INTl~I(xiàn)NT6、TRAP等。復(fù)位中斷向量(c_intO)是在實(shí)時(shí)運(yùn)行支持庫(rts2xx.1ib)中定義的一種特殊的中斷,它的作用是先進(jìn)行軟件堆棧操作,然后初始化全局變量,最后調(diào)用主程序main()。所以當(dāng)復(fù)位(Reset)時(shí),程序跳轉(zhuǎn)到c_int0進(jìn)行相應(yīng)的處理。中斷向量表則是將主程序中用到的中斷子程序和相應(yīng)中斷級別類型連接起來的一個(gè)簡單的跳轉(zhuǎn)指令表。表中每個(gè)中斷向量占2個(gè)字,在命令文件中將其聲明到程序存儲器空間的0000h~003Fh。
DSP(數(shù)字信號處理器)憑借其高速數(shù)字信號處理功能、實(shí)時(shí)性強(qiáng)、低功耗、高集成度等嵌入式微計(jì)算機(jī)的特點(diǎn),已在通信、航空航天、工業(yè)控制、醫(yī)療、國防、汽車等領(lǐng)域得到了廣泛的應(yīng)用。TMS320LF240xA DSP(以下簡稱LF240xA)是美國TI公司推出的高性能16位數(shù)字信號處理器,它具有運(yùn)算速度快,在片集成的外設(shè)豐富等特點(diǎn),故又稱其為DSP控制器。應(yīng)用領(lǐng)域主要針對工業(yè)測控、電機(jī)控制、家用電器和消費(fèi)電子等場合。
LF240xA的軟件開發(fā)過程,既可以使用匯編語言,也可以使用C語言。匯編語言的代碼執(zhí)行效率高、運(yùn)行速度快,可以直接對寄存器進(jìn)行操作,充分發(fā)揮了DSP控制器的硬件性能;但其開發(fā)的工作量大,程序可讀性、移植性差。與匯編語言不同的是,C語言可讀性強(qiáng)、編程簡單、調(diào)試方便,適合編寫結(jié)構(gòu)和算法比較復(fù)雜的程序。然而,對于控制來說,用C語言開發(fā)程序也有其明顯的缺點(diǎn):首先,C語言代碼有冗余,降低了執(zhí)行效率,對于實(shí)時(shí)性要求很高的某些控制領(lǐng)域來說不符合要求;其次,C語言無法實(shí)現(xiàn)某些底層的操作。
在具體軟件開發(fā)過程中,可以將匯編語言和C語言結(jié)合起來編程,發(fā)揮各自的優(yōu)點(diǎn)。這樣既能滿足實(shí)時(shí)性要求又能實(shí)現(xiàn)所需的功能,同時(shí)兼顧程序的可讀性和編程效率。為此,了解及掌握C語言和匯編語言的混合編程技術(shù)對于DSP的軟件開發(fā)具有重要的意義。
1 準(zhǔn)備工作
在進(jìn)行混合編程之前,首先要?jiǎng)?chuàng)造一個(gè)運(yùn)行的基本環(huán)境。這個(gè)基本環(huán)境包括存儲空間的分配、DSP寄存器映射地址的定義以及中斷向量的定義等方面。
(1)存儲空間的分配
命令文件(*.cmd)用來實(shí)現(xiàn)對程序存儲器和數(shù)據(jù)存儲器空間的分配。一是目標(biāo)存儲器定義(由MEMORY命令定義),二是各段的定位(由SECTIONS命令定義)。
?。?)寄存器映射地址的定義
頭文件(*.h)用來定義所用到的DSP控制器內(nèi)部寄存器的映射地址,以及用戶自定義的常量、寄存器等。通常,頭文件在主程序的開始,使用匯編指示符“.include”和“.copy”對其調(diào)用。頭文件的定義有2種方式。第1種是以指針變量的形式定義各種寄存器,即采用如下形式:
volatile unsigned int T1CMPR Ox7402第2種則是用宏定義的方式定義各種寄存器的名稱:
# define T1CMPR Ox7402
?。?)中斷向量的定義
LF240xA內(nèi)部提供了多個(gè)中斷,如INTl~I(xiàn)NT6、TRAP等。復(fù)位中斷向量(c_intO)是在實(shí)時(shí)運(yùn)行支持庫(rts2xx.1ib)中定義的一種特殊的中斷,它的作用是先進(jìn)行軟件堆棧操作,然后初始化全局變量,最后調(diào)用主程序main()。所以當(dāng)復(fù)位(Reset)時(shí),程序跳轉(zhuǎn)到c_int0進(jìn)行相應(yīng)的處理。中斷向量表則是將主程序中用到的中斷子程序和相應(yīng)中斷級別類型連接起來的一個(gè)簡單的跳轉(zhuǎn)指令表。表中每個(gè)中斷向量占2個(gè)字,在命令文件中將其聲明到程序存儲器空間的0000h~003Fh。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- matlab vsFortran混合編程工具 0次下載
- 單片機(jī)C語言和匯編語言混合編程實(shí)例詳解 227次下載
- 基于NVM和DRAN的混合內(nèi)存系統(tǒng)設(shè)計(jì)方案 12次下載
- 如何實(shí)現(xiàn)VisualC++與MATLAB接口進(jìn)行混合編程詳細(xì)方法說明 20次下載
- 基于matlab GUI的彩色圖像處理技術(shù)設(shè)計(jì)方案資料下載 29次下載
- ARM Bootloader 的實(shí)現(xiàn)C 和 ASM 混合編程 15次下載
- 基于DSP的混合編程關(guān)鍵技術(shù)探究 0次下載
- 基于Matlab和VC混合編程的DSP數(shù)據(jù)采集系統(tǒng) 4次下載
- Qt與Matlab混合編程 0次下載
- DSP集成開發(fā)環(huán)境中的混合編程及FFT算法的實(shí)現(xiàn) 16次下載
- DSP6748與FPGA混合編程-StarterWare 27次下載
- Matlab與C混合編程匯總 0次下載
- Matlab和VC混合編程的DSP數(shù)據(jù)采集系統(tǒng)
- 基于flash MX和authorware的混合編程軟件小助
- TMS320F24x 的混合編程方法
- 儲能BMS的關(guān)鍵技術(shù)是什么 810次閱讀
- 光伏逆變器拓?fù)涓攀黾?b class="flag-6" style="color: red">關(guān)鍵技術(shù) 903次閱讀
- C與C++混合編程是什么 1744次閱讀
- 混合編程中的模塊命名與管理 992次閱讀
- WCDMA系統(tǒng)中關(guān)鍵技術(shù)的分析及應(yīng)用解決方案 3444次閱讀
- 芯片的未來靠哪些關(guān)鍵技術(shù)? 5202次閱讀
- 變電站機(jī)器人智能巡檢系統(tǒng)設(shè)計(jì)方案和關(guān)鍵技術(shù) 2w次閱讀
- ptn技術(shù)要素及關(guān)鍵技術(shù) 6044次閱讀
- 本田i-MMD混動(dòng)系統(tǒng)關(guān)鍵技術(shù)分析 3.9w次閱讀
- ofdm關(guān)鍵技術(shù)及應(yīng)用 2w次閱讀
- 基于LabVIEW和Matlab混合編程的小波降噪方法 1w次閱讀
- LTE關(guān)鍵技術(shù)與方案精華集錦 2539次閱讀
- 基于DSP的恒流充電電源設(shè)計(jì)方案 2898次閱讀
- DSP編程的關(guān)鍵問題分析 1721次閱讀
- TPMS外置編碼存儲器式輪胎定位技術(shù)設(shè)計(jì)方案 1061次閱讀
下載排行
本周
- 1DC電源插座圖紙
- 0.67 MB | 2次下載 | 免費(fèi)
- 2AN158 GD32VW553 Wi-Fi開發(fā)指南
- 1.51MB | 2次下載 | 免費(fèi)
- 3AN148 GD32VW553射頻硬件開發(fā)指南
- 2.07MB | 1次下載 | 免費(fèi)
- 4AN111-LTC3219用戶指南
- 84.32KB | 次下載 | 免費(fèi)
- 5AN153-用于電源系統(tǒng)管理的Linduino
- 1.38MB | 次下載 | 免費(fèi)
- 6AN-283: Σ-Δ型ADC和DAC[中文版]
- 677.86KB | 次下載 | 免費(fèi)
- 7SM2018E 支持可控硅調(diào)光線性恒流控制芯片
- 402.24 KB | 次下載 | 免費(fèi)
- 8AN-1308: 電流檢測放大器共模階躍響應(yīng)
- 545.42KB | 次下載 | 免費(fèi)
本月
- 1ADI高性能電源管理解決方案
- 2.43 MB | 450次下載 | 免費(fèi)
- 2免費(fèi)開源CC3D飛控資料(電路圖&PCB源文件、BOM、
- 5.67 MB | 138次下載 | 1 積分
- 3基于STM32單片機(jī)智能手環(huán)心率計(jì)步器體溫顯示設(shè)計(jì)
- 0.10 MB | 130次下載 | 免費(fèi)
- 4使用單片機(jī)實(shí)現(xiàn)七人表決器的程序和仿真資料免費(fèi)下載
- 2.96 MB | 44次下載 | 免費(fèi)
- 53314A函數(shù)發(fā)生器維修手冊
- 16.30 MB | 31次下載 | 免費(fèi)
- 6美的電磁爐維修手冊大全
- 1.56 MB | 24次下載 | 5 積分
- 7如何正確測試電源的紋波
- 0.36 MB | 17次下載 | 免費(fèi)
- 8感應(yīng)筆電路圖
- 0.06 MB | 10次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935121次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420062次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233088次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191367次下載 | 10 積分
- 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183335次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73810次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
電子發(fā)燒友App






創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論