CCS V5 使用教程三:程序调试

官网教程

新建调试工程

输入以下源码:

#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,可以看到图形输出窗口输出了正弦波图像:

 

posted @ 2018-03-26 17:48  刘-皇叔  阅读(7774)  评论(0编辑  收藏  举报