DSP实验心得体会Word格式文档下载.docx
《DSP实验心得体会Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《DSP实验心得体会Word格式文档下载.docx(11页珍藏版)》请在冰点文库上搜索。
![DSP实验心得体会Word格式文档下载.docx](https://file1.bingdoc.com/fileroot1/2023-5/4/84736ca3-d660-4f60-8c50-87a70c47693d/84736ca3-d660-4f60-8c50-87a70c47693d1.gif)
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-&
gt;
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&
lt;
n;
i++)
sin_value[i]=0;
x0=;
/**/
y0=;
z0=x0*y0;
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。
\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)显示图形
在这个例子中,可以查看关于时间的信号图形。