DSP技术1 (2)(6)

2019-01-27 11:47

hello.c文件首先包含了std.h和log.h两个头文件。程序如果想使用DSP/BIOS API那它必须包含std.h文件以及程序中用到的模块的对应头文件。log.h头文件中定义了LOG_Obj结构以及LOG模块用的API函数的声明。std.h文件必须在其它的DSP/BIOS模块头文件之前声明。其它模块的头文件声明顺序不重要。

代码接下来要包含hellocfg.h头文件,这个文件在创建并保存DSP/BIOS配置的时候创建的。下一个步骤我们就来创建这个文件。这个文件包含了配置文件夹里面的DSP/BIOS objects的外部声明。 hellocfg.h文件也包含了配置文件里定义的DSP/BIOS模块的头文件。既然std.h和log.h文件都会被hellocfg.h文件引用,那么hello.c文件的头两行时间上是冗余的。但是这样也不会有任何问题。 调用LOG_printf的代码实际上是传递LOG object对象(&trace)和 hello world消息的地址。

最后main()函数返回,这个函数导致程序进入DSP/BIOS的Idle循环。在这个循环中,DSP/BIOS等待线程,例如软件中断和硬件中断发生。在该例中,没有其它线程发生,所以会一直处于IDLE状态。 第四步:创建DSP/BIOS的配置文件 选择File->New->DSP/BIOS Config。

选择一个目标模板,根据芯片选择,我们选c64xx.cdb,然后按OK。观察configuration窗口,左边窗口是模块的列表,可以通过点击模块的“+”号打开下级目录,也可以按右键新建一个对象或查看一个建立好的对象的属性。

点击Instrumentation目录左侧的+号,显示模块的列表。 邮局选择LOG—Event Log Mannger然后右击选择Insert LOG。这个步骤是创建一个LOG对象,名称为LOG0。

右键选中LOG0对象,然后右击选择Rename。把LOG对象改名为trace.

如果你在使用软件仿真器,需要设置RTDX模式为Simulator。

选择RTDX—Real-Time Data Exchange Settings,右键,选择属性,打开对话框:

将RTDX Mode设定为Simulator即可。如果有目标板,可以选择JTAG。 选择

File->Save。保存到当前目录(通常是

C:\\ti\\myprojects\\hellobios)命名为hello.cdb,保存这个配置后,会生成以下6个文件:

Hello.cdb 保存配置的内容 Hellocfg.cmd 链接command文件

Hellocfg.h 包括DSP/BIOS模块头文件和配置文件中用到的外部对象、变量的声明

Hellocfg.s62 DSP/BIOS设置的汇编语言源文件 Hellocfg.h62 Hellocfg.s62引用到的汇编语言源文件 Hellocfg_c.c Chip Support Library(CSL)代码结构和设置 第五步:添加DSP/BIOS文件到工程项目

选择Project->Add Files to Project,在Files of type栏目里选择Configuration File(*.cdb),选中hello.cdb文件后,点Open。注意添加后,hello.cdb出现在Porject View窗格下目录DSP/BIOS Config里。此外,CCS自动添加Hellocfg.s62和Hellocfg_c.c文件到生成的目录下。

输出文件名必须和.cdb文件一致。可以通过Project->Build Options打开Linker标签查看,确认Output Filename内容是.\\Debug\\hello.out,按OK确定。

再次选择Project->Add Files to Project,选对Linker Command File(*.cmd)在Files of type下拉菜单,选择hellocfg.cmd文件,然后按Open。

如果看到警告,按Yes。Hello.cmd文件被hellocfg.cmd文件替代,hellocfg.cmd文件是保存DSP/BIOS时生成的。 若没有警告,直接将hello.cmd文件从项目中删除。

你可以自己创建独立的cmd文件,但文件中必须引用DSP/BIOS的生成的配置cmd文件。如: -1 hellocfg.cmd Your Code ......

从项目中删除vectors.asm源文件。因为硬件中断可以通过DSP/BIOS设置,不需要单独的处理。

从项目中删除rts6400.lib文件。这个库已经被hellocfg.cmd自动引用了。

选择Project->Save保存对项目的更改。建议在编译和运行项目前,先保存修改。

选择Project->Rebuild All。 经过以上修改,项目变化为:

第六步:在CCS的Simulator环境下测试工程 选择File->Load Program,选中hello.out,确定。 选择DSP/BIOS->Message Log,出现窗口:

在Log窗口按右键,选择属性,把输出文件指定到hello.txt,用来保存结果,便于以后查看。

选择Debug->Go Main,然后F10,单步运行。观察Log窗口的输出。

在Log窗口,按右键选择close,关闭窗口。 重新Load程序,按F4。

运行程序,等待一会儿,再按结束,中止程序运行。

File->Open,然后在Debug目录中选择hello.txt,打开查看,内容和窗口的输出是一样的,都是hello world!

第七步:评估DSP/BIOS输出函数LOG_printf()的执行时间(周期数) 在这个步骤中,我们利用CCS的Profiling工具来评估LOG_printf()函数需要的指令周期数目,并且和printf()和put()函数对比。 选择File->Reload Program。


DSP技术1 (2)(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:语文教师实习报告

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: