DSP实验心得体会.docx
《DSP实验心得体会.docx》由会员分享,可在线阅读,更多相关《DSP实验心得体会.docx(11页珍藏版)》请在冰点文库上搜索。
DSP实验心得体会
篇一:
dsp实验报告心得体会
tms320f2812xdsp原理及应用技术实验心得体会
1.设置环境时分为软件设置和硬件设置,根据实验的需要设置,这次实验只是
软件仿真,可以不设置硬件,但是要为日后的实验做准备,还是要学习和熟悉硬件设置的过程。
2.在设置硬件时,不是按实验书上的型号选择,而是应该按照实验设备上的型
号去添加。
3.不管是硬件还是软件的设置,都应该将之前设置好的删去,重新添加。
设置好的配置中
只能有一项。
4.ccs可以工作在纯软件仿真环境中,就是由软件在pc机内存中构造一个虚拟的
dsp环境,可以调试、运行程序。
但是一般无法构造dsp中的外设,所以软件仿真通常用于调试纯软件算法和进行效率分析等。
5.这次实验采用软件仿真,不需要打开电源箱的电源。
6.在软件仿真工作时,无需连接板卡和仿真器等硬件。
7.执行write_buffer一行时。
如果按f10执行程序,则程序在mian主函数中运行,
如果按f11,则程序进入write_buffe函数内部的程序运行。
8.把str变量加到观察窗口中,点击变量左边的“+”,观察窗口可以展开结构变
量,就可以看到结构体变量中的每个元素了。
9.在实验时,显示图形出现问题,不能显示,后来在graphtitle把input的大写
改为input,在对volume进行编译执行后,就可以看到显示的正弦波图形了。
10.在修改了实验2-1的程序后,要重新编译、连接执行程序,并且必须对.out
文件进行重新加载,因为此时.out文件已经改变了。
如果不重新加载,那么修改执行程序后,其结果将不会改变。
11.再观察结果时,可将data和data1的窗口同时打开,这样可以便于比较,观察
结果。
12.通过这次实验,对tms320f2812xdsp软件仿真及调试有了初步的了解与认识,因为做
实验的时候都是按照实验指导书按部就班的,与真正的理解和掌握还是有些距离的。
但是这也为我们日后运用这些知识打下了基础,我觉得实验中遇到的问题,不要急于问老师或者同学,先自己想办法分析原因,想办法解决,这样对自身的提高更多吧。
通过做实验,把学习的知识利用起来,也对这门课程更加有兴趣了。
组员:
叶孝璐冯焕芬郑玮仪庞露露
2012年4月10号
篇二:
dsp实验报告+心得体会
龙岩学院
实验报告
班级07电本
(1)班学号姓名杨宝辉同组人独立实验日期2010-5-18室温大气压成绩
基础实验
一、实验目的
二、实验设备
三、实验原理
浮点数的表达和计算是进行数字信号处理的基本知识;产生正弦信号是数字信号处理1.一台装有ccs软件的计算机;实验箱的tms320f2812主控板;硬件仿真器。
1.掌握ccs实验环境的使用;2.掌握用c语言编写dsp程序的方法。
中经常用到的运算;c语言是现代数字信号处理表达的基础语言和通用语言。
写实现程序时需要注意两点:
(1)浮点数的范围及存储格式;
(2)dsp的c语言与ansic语言的区别。
四、实验步骤
1.打开ccs并熟悉其界面;
2.在ccs环境中打开本实验的工程(),编译并重建.out输出文件,然后通过仿真器把执行代码下载到dsp芯片中;
3.把x0,y0和z0添加到watch窗口中作为观察对象(选中变量名,单击鼠标右键,在弹出菜单中选择“addwatchwindow”命令);
4.选择view->graph->time/frequency…。
设置对话框中的参数:
其中“startaddress”
设为“sin_value”,“acquisitionbuffersize”和“displaydatasize”都设为“100”,并且把“dspdatatype”设为“32-bitfloatingpoint”,
设置好后观察信号序列的波形(sin函数,如图);
5.单击运行;
6.观察三个变量从初始化到运算结束整个过程中的变化;观察正弦波形从初始化到运算结束整个过程中的变化;
7.修改输入序列的长度或初始值,重复上述过程。
五、实验心得体会
通过本次实验,加深了我对dsp的认识,使我对dsp实验的操作有了更进一步的理解。
基本掌握了ccs实验环境的使用,并能够使用c语言进行简单的dsp程序设计。
从软件的安装到使用软件进行程序设计与仿真,锻炼了自己的动手能力,也遇到了不少的坎坷,例如芯片的选择,不能因为麻烦而省略该步骤,否则将会运行出错。
附录实验程序:
#
#
#definen100
#
floatsin_value[100];
floatx0,y0,z0;
voidmain(void)
{
inti;
for(i=0;i<n;i++)
sin_value[i]=0;
x0=;/**/
y0=;/**/
z0=x0*y0;/**/
for(i=0;i<n;i++)
sin_value[i]=100*(sin(2*pi*i/n));
}
龙岩学院
实验报告
班级07电本
(1)班学号姓名杨宝辉同组人独立实验日期2010-5-20室温大气压成绩
数码管控制实验
一、实验目的
1.熟悉2812的指令系统;熟悉74hc573的使用方法。
熟悉dsp的io操作使用方法。
二、实验设备
1.一台装有ccs2000软件的计算机;
2.插上2812主控板的dsp实验箱;硬件仿真器。
三、实验原理
此模块由数码管和四个锁存器组成。
数码管为共阴极型的。
数据由2812模块的低八位输入,锁存器的控制信号由2812模块输出,但经由cpld模块译码后再控制对应的八个
四、实验步骤
1.把2812模块小板插到大板上;
2.在ccs2000环境中打开本实验的工程编译,生成输出文件,通过仿真器把执行代码下载到dsp芯片;
3.运行程序;数码管会显示1~8的数字。
4.参考源代码自行修改程序改变显示样式。
五、实验心得体会
通过本次实验中,基本掌握了2812的指令系统的特点,并能够了解并熟悉74hc573的使用方法,进一步加深了对dsp的认识。
同时,通过实验操作dsp的io操作使用方法,对于dsp的io操作可以熟悉的运用,学到更多的知识。
程序见附录:
#includeincludevoiddelay_loop(void);
voidgpio_select(void);
initsysctrl();
ut);○
7在target域中,选择ccs配置的目标,并单击完成。
○
(5)向工程中添加文件
1从project/addfilestoproject,选择,单击open(或右○
击projectview图标,选择addfilestoproject);
2选择project/addfilestoproject,在filesoftype对话框中,选○
择asmsourcefiles(*.a*,*.s*)。
选择和,单击open;
3选择project/addfilestoproject,在filesoftype对话框中选○
4选择project/addfilestoproject,到编辑器库文件夹○
(c:
\ti\c5400\cgtools\lib),在filesoftype对话框中选择objectandlibraryfiles(*.o*,*.lib)。
选择文件,单击open。
这个库提供目标dsp运行时间支持(runtime-support);
5projectview窗口,右击,选择scanalldependencies,○
将出现在projectview窗中的libraries文件夹;
头文件不要手动添加,自动到:
当前目录(源文件所在)或预编译器的“includesearchpath(-i)”option所指定的位置。
显示头文件:
project—>showdependencies。
6单击上的+号,展开工程列表。
这个列表称为project○
view。
(6)查看源程序代码
双击projectview中文件,ccs窗口的右半窗中出现c源代码。
(7)编译与运行程序
1选择project/rebuildall或单击(rebuildall)菜单条按钮,ccs重○
新进行编辑、汇编、连接工程里的所有文件。
这个处理的有关信息在窗口低部一个小框里显示;
2默认时,.out文件编译到位于当前工程文件夹中的调试(debug),目录中○
也可以通过ccs工具条选择一个存储目录;
3选择file/loadprogram。
选中,并按open。
○
(c:
\ti\myprojects\volume1\debug\文件夹中。
)ccs将程序装载到目标dsp上,打开显示程序反汇编指令的disassembly窗口;
4选择view/mixedsource/asm.,这样可以同时查看c源程序和产生的汇○
编代码;
5在混合窗口单击汇编指令(单击有效指令,而不是指令的地址或指令所○
传递的区域),单击f1,ccs可以寻找此指令的帮助。
这是学习指令的很好的方法;
6选择debug/gomain,从主程序开始执行;○
7选择debug/run或单击(run)按钮;○
8选择debug/halt,退出程序运行。
○
(8)更改程序的选择、定位语法错误
1选择project/buildoptions;○
preprocessor,在definesymbols区域键入fileio,按tab键;3单击ok,保存新的选择设置;○
4选择project/rebuildall或单击(rebuildall)按钮。
只要工程选择○
更改,则必须重新编译所有的文件;
5编译信息显示,程序包含编辑错误。
单击build,你可以看见语法错误信○
息;
6双击描述语法错误位置的红色文字(第68行)○。
注意源程序已打开,且光标位于下面的行上:
processing(input,output);;7语法错误位于光标位置的上一行(丢了个分号)○,如:
puts(begin
processing);;
8注意:
edit窗口标题栏中的文件名附近出现星号(*)○,指示源程序已经被修改,文件保存后,星号消失;
9选择file/save,或按ctrl+s,将更改保存到;○
10选择project/build,或(incrementalbuild)单击工具条,ccs重新编○
译已经修改的文件;
11选择file/loadprogram,选中;○
12选择debug/gomain,从主函数开始执行。
由→执行可以暂停;○
13选择debug/run或(run)单击菜单条;○
14选择debug/halt,退出程序运行。
○
(9)使用断点(breakpoints)和观察窗口(watchwindow)程序执行时常常需要检查变量的值。
1file/reloadprogram;○
2双击projectview窗中的。
可以将窗口变大,看到更多的源○
代码;
3将光标放在dataio();○
4单击(togglebreakpoint)工具条,或按f9。
选择空白区指示断点已经设○
置(红色图标);
5选择view/watchwindow,在ccs窗口的右下角出现单个区域,同时,这○
个区域显示观察变量的值;
6如果不在主程序,选择debug/gomain;○
7选择debug/run,或按f5;○
8选择watch1;○
9单击name栏中表达式图标,键入要观察的变量名dataio;○
10单击观察窗口中的白色区域,保存更改。
这个值将立即出现在下面的例○
子中;
11单击(stepover)或按f10,跨过对dataio()的调用;○
12完成后,单击(removeallbreakpoints)。
○
(10)使用带结构的watchwindow
除了观察简单变量的值,也可以观察一个结构的元素的值。
1选择watch1;○
2单击name栏中的表达式图标,键入要观察表达式名称str;○
3单击观察窗口中的白色空间,保存更改。
数值将立即出现在下面的例子○
中;
4从reviewingthesourcecode调出中全局申明、并初始化的○
类型为parms的结构。
定义了parms的结构类型;
5单击str上的+号,ccs将结构中所有元素和元素值。
双击结构中元素的○
value,编辑元素的值;
6在watchwindow中value栏,更改变量的值。
注意:
watchwindow中○
数值的更改,数值也变为红色,表示已经手动修改;
7选择watchwindow中str变量,按delete键。
其他变量同理;○
8选择debug/breakpoints,在breakpoints中,单击deleteall,然后○
单击ok。
(11)添加探针probepoint(为了文件i/o)
可以添加探针(probepoint),从pc机中的文件读数据。
按照下面的步骤使用探针:
从主pc中传递输入数据,到算法所使用的目标的缓冲器中;
从目标的缓冲器中传递输出数据,到主pc中;
用数据修改窗口。
下面将学习如何使用probepoint,将pc文件中的内容,作为测试数据,传递到目标dsp中。
另外,也可以使用断点修改所有打开的窗口。
1选择file/loadprogram,选中,单击open;○
2双击projectview中的;○
3将光标放到主程序中dataio();○
4单击(toggleprobepoint)。
选择空白区域指示探针已经设置(兰色图○
标),如果废止
选择区,此行为兰色显亮;
5从file菜单,选择filei/o。
出现filei/o对话框,因此可以选择输○
入输出文件;
6在fileinput,单击addfile;○
7浏览volume1工程文件夹,选中,单击open。
文件是○
正弦波的十六进制数值,出现文件的控制窗口。
再后,当运行程序时,可以在数据文件中使用此窗口启动、停止、返回、或快进;8在filei/o对话框,更改address为inp_buffer,length为100,在○
wraparound中可以添加选中符号;
9单击addprobepoint。
出现break/probepoints对话框中的probe○
points;
10在probepoint列表中,显亮行为:
>no○
connection;
11在connectto区域中,单击下箭头,从列表中选中;○
12单击replace。
probepoint列表改向显示这个probepoint连接到○
文件;
13单击ok。
filei/o对话框显示文件现在连接到probepoint;○
14单击ok,关闭filei/o对话框。
○
(12)显示图形
在这个例子中,可以查看关于时间的信号图形。