CCS从3.3改版为5.X之后,CCS 变化很大.DaVinci芯片中DSP的调试步骤也不同了.这里介绍下在CCS里如何调试DaVinci的DSP核心

1. 创建CCS V5版本的project

本人使用的CCS版本是Version:5.4.0.00091,调试器是SEED的SEED-XDS560PLUS.这里调试的是DM6467中的C64X核,用来检验算法的正确性.

1.1 创建一个project

在菜单栏中点击 File -> New -> CCSProject.

在Project name中输入项目名称 "emcv_test". Output type中选择 Executable, project会编译一个.out文件,在C64x中运行.Family中选择C6000系列,DaVinci DM646x.运行时库选择rts64plus.lib

在Project templates and examples中选择 Empty Project(with main.c). 最后点击 Finish.

这样,一个最简单的DSP工程就建立出来了.

接下来参考"移植EMCV到DM6467"文章,我来添加源文件.直接将emcv的cv和cxcore两个目录复制到我们上面创建的emcv_test工程目录里即可.如下:

这样刷新CCS工程就会看到

将emcv的cv和cxcore目录包含进工程

剩下的步骤不详细列出,因为"移植EMCV到DM6467"文中都会讲到.最后我们的emcv_test工程如下:

1.2 编译project

在project上右键单击选择Build Project选项,这里编译出错

本着一颗虔诚的心,我又锲而不舍的找到了这个函数的定义处

果然,有八个参数,可是我们main函数里调用这个函数的时候只给了7个参数,这符合C++语法,但是不符合C语言语法.那么这个问题可以有两种解决方式.

方法一:将main函数中的调用

cvRectangle(img, point1, point2, color, CV_AA, 0);

改为

cvRectangle(img, point1, point2, color, CV_AA, 8, 0);

方法二:将源文件main.c改为C++类型,即改为main.cpp即可

CCS支持C++类型,因此一般的工程修改这两种方法都可以,但是我后期要做的是DVSDK上的DSP算法移植,大概流程为:使用CCS插件 -> 生成代码框架 -->  修改算法接口 -->  填充完善算法框架 -->  (适当优化、测试,处理) --> 放在Linux下的DVSDK中 -->  配置XDC环境 -->  编译CODEC -->  编译CODEC SERVER --> 编译APP

可能在Linux的DVSDK编译中会对C++的支持不好,所以建议最好选择同意将C++类型的语句都用C语言语法形式来实现.

编译.最后会生成一个.out文件.这个文件运行在C64x核上.

2. 调试程序

这一章主要介绍如何创建target configuration以及在CCS5中如何进行调试C64x

2.1 添加gel,设置JTAG调试器

2.2 启动debugger

启动configuration配置.在菜单中点击view->Target Configurations.

右键单击目标target选择Launch Selected Configuration.

之后debugger就会被启动了.右键单击master核即ARM926核然后选择Connect Target

我们看到console上打印出来的其实就是之前我们加载的ARM端的gel文件的内容

ARM926核心连接好以后,选中A8核心,点击菜单栏中的Scripts -> DaVinci HD1080P DSP -> DSP_Boot_from_DDR2,加载slave核即C64x核的GEL文件

右键单击C64x核然后选择Connect Target

这样,C64x核心连接到调试器,可以下一步的调试了

2.3 加载程序

步骤如下:点击菜单run -> Load-> Load Program.选中生成的.out文件,点击OK, 程序加载完成

到这里,就可以像VS2008那样跟踪调试代码了

转载于:https://www.cnblogs.com/jason-lu/p/3472834.html

CCS5连接调试C64X系列DSP核相关推荐

  1. 基于AM5728 DSP JTAG连接调试方法

    1 适用性说明 本例程主要演示使用仿真器通过 JTAG 接口连接 DSP 核.例程演示基于信迈XM138-IDK-V3 AM5728开发板进行. 2 Debug 模式下仿真器连接 DSP 实验步骤: ...

  2. openOCD的使用1: 应用openOCD和Jlink仿真器连接Freescale K60系列 MCU

    openOCD的使用1: 应用openOCD和Jlink仿真器连接Freescale K60系列 MCU   OpenOCD是一款功能强大的开源调试软件,支持多种调试器,例如Jlink.STlink. ...

  3. TI公司三大系列DSP内部结构之比较

    一引言 DSP有两种解释:一种是数字信号处理器(Digital SignalProcessor),也称数字信号芯片:另一种是数字信号处理技术(Digital Signal Processing).我们 ...

  4. 学习素材之USART篇——通过使用STM32与ESP8266(esp-01s)连接阿里云系列操作来了解USART协议和寄存器操作

    内容 通过使用STM32与ESP8266(esp-01s)连接阿里云系列操作来了解USART协议和寄存器操作 目录 USART详解 一.串口通讯协议简介 串口通讯的物理层 串口通讯的协议层 二.STM ...

  5. OMAP4之DSP核(Tesla)软件开发学习(一)

    目的: 目前手上正在OMAP4上做东西,由于涉及到大量运算,交给arm A9双核发现运算速度很慢,不能满足需求.故考虑将大量运算任务(比如FIR.FFT.卷积.图像处理.向量运算等)交给OMAP4内部 ...

  6. 达芬奇系列DSP——CCS_V5安装技术文档

    达芬奇系列DSP --CCS_V5安装技术文档 Tanspring 20121101 1. 在TI官方网站下载(www.ti.com)CCS软件的安装文件(CCS5.2.1.00018_win32). ...

  7. 【DSP开发】C6000非多核非KeyStone系列DSP中断系统

    C6000系列DSP的中断系统 上一篇介绍了C6455的GPIO系统,最后把GPIO4配置成了中断/事件模式,本文将介绍C6455的中断系统,介绍完基本概念后,给出把GPIO4映射到INT4的代码. ...

  8. linux的静态编译elf无法调试,[翻译]自己动手编写一个Linux调试器系列之4 ELF文件格式与DWARF调试格式 by lantie@15PB...

    自己动手编写一个Linux调试器系列之4 ELF文件格式与DWARF调试格式 by lantie@15PB 在上一节中,你已经听说了DWARF调试格式,它是程序的调试信息,是一种可以更好理解源码的方式 ...

  9. vscode编译、调试stm32F4系列mcu的程序

    捣腾很长时间了,用vscode编译.调试stm32F4系列mcu的程序.记录下. launch.json @TOC // AUTOMATICALLY GENERATED FILE. PLEASE DO ...

最新文章

  1. R语言ggplot2可视化使用ggridges包可视化山脊图(Ridgeline Plots):山脊图(Ridgeline Plots)应用场景、受试者口服茶碱的之后观察茶碱的浓度变化的山脊图
  2. Can't create table './store/#sql-b2c_1a.frm' (errno: 150)解决方法
  3. FAT32转换NTFS格式的命令
  4. STM32 基础系列教程 32 – Ethnet+Lwip
  5. Zero Copy 简介
  6. UITextField详解
  7. C++ Opengl 多重纹理源码
  8. shell编程题(三)
  9. 销售探讨_让我们一起探讨编程资源的领域
  10. TypeError: ufunc ‘multiply‘ did not contain a loop with signature matching types dtype(‘S32‘) dtype(
  11. 华为ipop使用教程_华为ipop下载|
  12. 防qq页面多边形html5,高仿QQ Xplan的H5页面
  13. wps合并所有sheet页_别找了,你要的Excel多表合并都在这里了
  14. 3D建模软件:犀牛Rhino 7.16.22067.13002
  15. doubango TURN Data Indication报文代码
  16. matlab鲍威尔算法,鲍威尔法matlab程序
  17. 总结了几款好用的思维导图软件
  18. windows server 2008 R2 补丁下载地址
  19. HBuilderX 打包 vue 项目生成 apk
  20. 使用Vulkan画三角形

热门文章

  1. Linux——进程控制(总结)
  2. 有关数组的运算 (sizeof)(strlen)
  3. oracle as 不可以省略,Oracle:存储过程,存储函数
  4. 2018创投圈风云再起,企服征途百家争鸣,寻找中国创业最强音!
  5. 神策数据林美天于大数据与人工智能分享沙龙分享
  6. SQL ALTER TABLE 语句
  7. 一个不经意的问题引发的小思考
  8. 补第一阶段冲刺站立会议1(应发表日期5月13日)
  9. 海蜘蛛路由弹窗广告破解
  10. js如何往div里写div