官网教程
新建调试工程
输入以下源码:
#include <stdio.h>
#include <c6x.h>
volatile short output[16];
void main(void)
{
unsigned int counter = 0;
const short A = 0x7e66;
short y[3]={0,0x1209,0};
for(;;)
{
y[0]=(((A*y[1])>>15)+((A*y[1])>>15))-y[2];
y[2]=y[1];
y[1]=y[0];
output[counter]=y[2];
if((counter%16)==15)
{
counter = 0;
}
else
{
counter++;
}
}
}
查看变量、表达式和寄存器
Variables 窗口可以用来查看变量的值:
Expression窗口中点击 “Add new expression”可以在输入变量名称或者表达式名称即可查看相关信息,在Variables窗口右键变量选择“Watch”也可以查看观测信息:
Register窗口允许查看核心上和外围的寄存器信息:
查看汇编窗口
汇编窗口是一个源码和汇编代码混合的一个窗口:
内存查看
可以选择不同的内存查看形式,可以使用预定义的值填充内存,可以保存/加载文件在PC上。所有的变量和函数都可以查看。每个内存位置都有一个上下文敏感的信息框:
断点管理
设置断点的方式很简单,只需要在源码或者是汇编代码区的左边栏双击即可设置。
断点的类型有软件断点和硬件断点。
软件断点可以设置成非条件断点和条件断点两种形式。
软件断点的功能也不仅限于中断程序:
通过Breakpoints窗口可以查看断点的相关属性:
配置断点的属性,可以在断点上右键->Breakpoint Properties,也可以在断点监视器中选择断点右键->Breakpoint Properties。
Action:设置断点行为,保持停止,更新一个或者所有的调试监控器,读写数据到文件,激活或者停用组断点。
Skip Count:断点被击中之前执行的次数。
Group:对于高级控制能够允许组断点。
数据可视化
CCS V5提供数据可视化的高级功能,数组数据可以通过图形的形式进行展示并且具有多种形式。
添加一个图形显示,在菜单栏Tools-> Graph,选择一种形式:
基于时域:单时,双时
基于频域:所有FFT的选项
以本程序为例:
在源码counter = 0;这一行上打一个断点,并且设置断点属性:
这样程序运行到断点的时候,不是发生程序暂停而是更新所有窗口。
在菜单栏:Tools -> Graph -> Single Time,设置属性:
在屏幕右下角就会出现图形形式窗口:
点击:Run->Resume,可以看到图形输出窗口输出了正弦波图像: