摘要:本文介绍了基于TI公司DSP/BIOS实现实时数据调试和交换的方法
----数字信号处理技术已成为目前最广泛的应用技术之一,TI公司在不断推出各种新型高速低功耗DSP的基础上,提出了基于DSP的微型实时操作系统BIOS的概念.
----DSP所面临的系统越来越复杂,诸如多任务处理,烦琐的硬件设备管理,实时数据处理及传送等等,传统的DSP编程越来越难以胜任.
----TI公司推出的BIOS可以支持以上功能,它提供了众多的模块及面向用户的API接口,包括多优先级多任务系统调度,内存管理,硬件DRIVER抽象,以及数字信号处理所独特的实时数据调试及交换的支持.
----先介绍一下BIOS中的图形化管理界面:DSP/BIOS CONFIGURATION TOOLS。在 CCS 集成 开发环境中打开FILE
-> NEW -> DSP/BIOS CONFIGURATION,就可以看到DSP/CONFIGURATION TOOLS,
在这里用图形化的界面集中管理所有的BIOS模块,包括硬中断,软中断,任务,时钟,管道等,在每个模块下都可以添加新的对象以及编辑它的属性,添加完对象会在工程中自动生成相应的代码,用户程序中只需声明此对象,然后调用它的API函数就可以了。
----下面主要介绍数字信号处理所独特的实时数据调试及交换
----在通常的软件调试中如何去观察变量?很简单,我们会单步运行或者设置断点,然后在WATCH窗口中观察变量的值.这种经典的调试方法在数字信号处理中捉荆见拙,因为我们面对的是实时任务,程序的停顿会使我们面对的系统面目全非.DSP/BIOS的解决方案是提供LOG模块,
在目标DSP内,LOG对象将要监控的信息实时的捕捉存放在DSP的特定缓冲LOG
BUFFER中,在DSP进入空闲的时刻通过JTAG接口传回主机,主机端的CCS集成环境将接受数据并显示在打开的LOG观察窗口中,从而不打断正常的程序运行情况下,获取必要的调试信息。
----下面介绍如何使用LOG模块。在现有的工程中打开DSP/BIOS CONFIGURATION TOOL
,在LOG模块上单击右键选择INSERT LOG,然后修改新添加的对象名为 LogTarget. 在程序里添加以下代码
#include
#include
extern far LOG_Obj logTarget; //声明为外部对象
func()
{
LOG_printf( &logTarget, … );
} |