CCSV5.5使用说明
1.CCS 总体说明
在相机开发过程中使用3种功效
1烧录芯片第一次下载uboot
2调试相机内部程序如ubootdsp m3 等
3算法开发:在CCS中开发算法封装成库或源代码拷贝到相机中
Ccs版本:CCS5.5.0.00077_win32.zip
VLIB版本:vlib_c674x_obj_3_0_1_0_Win32.exe
SEEDXDS560v2 驱动:SEED-XDS560v2Driver.exe
下面具体说明以上3种功效:
2.算法开发:
1、打开软件
2、选择工作区域单击OK
3、建立简单CCS工程
4、配置工程信息(编译成lib文件)
注意假如只是选择EmptyProjects 就是直接点击Finish结束,选择SYS/BIOS话会有next
需要选择SYS/BIOS,SYS/BIOS能够自己添加相机内部sys/bios(拷贝相机内部sys/bios
到CCS安装目录下)
选择Typical或Typical(with··)
配置工程信息(编译成out文件) 注意”Connection”选择对应仿真器
5、继续配置
6、界面介绍:
Viewprojectexplorer 出现工程界面
7、为了能够在DSP上面仿真需要以下配置
频率修改为25526932,针对DM8127修改,以后进行Ctrl+s进行保留;修改频率为系统提
醒给出
上图为修改程序heap空间
8、输出文件为静态库和可实施文件工程区分
9、编译lib文件或out文件时需要设置输出格式为ELF格式。工程–》properties出现
以下:
9、编译
在使用CCS开发算法仿真调试时 不需要再相机内部设置等候状态;
调试相机内部原有代码时需要使用断点
在CCS下编译功效性程序:
编译成功后,相机正常运行,就能够仿真此程序
在CCS下编译成lib文件
在工程中添加以下头文件
编译好后拷贝出:
相机内部对应修改:
编译好lib库和对应头文件拷贝到相机内部;
Lib放在:/ipnc_mcfw/mcfw/src_bios6/links_c6xdsp/alg/dmva/lib
需要修改\ipnc_mcfw\makerules\rules_c674.mk LIB_PATHS 中添加:
$(MCFW_ROOT_PATH)/mcfw/src_bios6/links_c6xdsp/alg/dmva/lib/LIB2.lib
头文件放在:/ipnc_mcfw/mcfw/src_bios6/links_c6xdsp/VA
在va中调用相关实现lib
| 在CCS 中调用VLIB 库开发算法: |
1、ccs 建立工程调试关键问题在怎样加载和输出文件(图像文件过大,利用正常C 函数fopen |
fread之类效率太低)就是利用ccs探针功效将文件加载和输出,ccs对于文件加载和输出格式有以下要求;
因为在相机中dsp处理为YUV420SPNV12,所以需要把YUV转换为CCS能够加载DAT文件;
-
a. | 后缀名为.dat | 0 地方需要相对应填0 即可 |
b. | 文件头 |
把YUV420YUV422格式转化为CCS能够加载DAT文件Create_CCS_DAT_File工程CCS处理完成后也是输出DAT文件;需要把此dat文件在转换到YUV图像,转换方法:Change_CCS_file_To_YUV工程(第一步先要提取出处理前YUV图像UV数据,然后再转换dat文件)
详见《相关windows下针对CCS仿真所做格式转换软件说明.docx》
c. | 在文件准备好前提下,在ccs 下写好代码进行编译,调试,以下为调试界面仅供参 |
考
断点位置为进入函数分析数据前添加如在VLIB_dilate_bin_square函数前后设置
断点:断点要在debug模式下添加
出现红框中符号,在右上角框中有下图窗口若没有从菜单栏中veiw中选择
Breakpoint
e. | 在 | Breakpoints 框 | 中 | 选 | 择 | 刚 | 刚 | 生 | 成 | 断 | 点 | , | 右 | 击 | 图 |
选择BreakpointProperties进入下图界面
数据输出到文件操作类似具体选项以下:
注意:调试时候需要将*.cfg中heapsize参数需要修改大一点不然算法中malloc函数申请空
调试编写程序:view–》
出现:
CCS添加VLIB库:
工程文件==》右键属性出现上图
添加头文件:
假如把调用VLIB算法移植到相机需要在相机中移植VLIB库:
仿真器驱动安装;
在安装仿真器驱动时需要把驱动安装到CCS安装目录:C:\ti\ccsv5\ccs_base下;
参考《SEED-XDS560v2PLUS仿真器安装、使用指南(Rev.B).pdf》License注册:
点击“launchlicense setup ”进入界面第1项,会进入到TI官网登陆后填写序列号(SEED
提供);后会发送CCSv5_License.lic文件到邮箱;然后再点击“launchlicense setup ”第2项,
加载license文件;到此加载成功
以上算法开发总结完成
3.CCS调试相机内部代码
调试配置完成界面以下:
1.在Rules.make文件里面修改为debug模式编译应用程序。 APP_BUILD_CFG :=debug
#APP_BUILD_CFG :=release
2.在需要调试代码部分添加条件变量判定循环语句,:
Eg调试swosd部分功效:
在swosdlink_tsk.c swosdlink_init()函数中添加以下图部分gDEBUG为在文件头定义全局变量在CCS中对它进行修改
Fun为调试函数
3编译相机内部程序,并开启能够经过串口看到在移植打印“osd---------------”4在CCS端操作步骤请参考:
《怎样使用CCSv5调试DM81XXM3代码.pdf》
调试结果以下:
到此调试相机内部程序总结完成
4.第一次烧录uboot
具体过程请参考《IPNC_RDK_InstallGuide.pdf》1.6 Flashing NAND Flash
在烧录过程中需要:
IPNC_A8_DDR3.gel
MergeFlash.out