DSP

如何在CCS3.3下建立基于DSP-BIOS和XDC的工程详解

2019-07-13 12:36发布

    基于XDC工具建立的工程终于成功了,回想起当初看见类似的工程的时候简直就是一头雾水,真不知道从何下手,文件又多,类型又复杂。自己一直想亲手建立一个这样的工程,但是,一直没有成功,总是有这样或那样的错误。在网上找类似的资料还没有,自己只能是在开发板带的例程上做自己的改动,很是烦人。开始的时候没有建立成功,我放弃了,昨天晚上突然间我又有了建立一个XDC工程的念头,整整一个晚上,到了十二点半左右的时候我终于把这个工程建立好了。来之不易的工程呀,我把整个工程的建立过程记录了下来。       首先我们要先配置一下XDC工具链,什么叫做配置呢,实际上就是要让这条工具链写入到系统的注册表中间去,下面是整个工具链的配置过程:       1、运行windows命令行工具。                         2、进入到XDC工具目录                           3、运行命令:cd packages/xdc/tools/configuro/ccs                     4、运行命令regsvr32 btiXdc                             如果成功的话,会弹出一个对话框出来:             这样XDC工具链就在系统中注册好了,接下来就可以建立整个工程了,步骤如下:      1、首先建立一个CCS3.3工程                    2、建立.cfg配置文件,并加入到工程中,我是直接copy的自带例程中video-black-white例程,内容如下:          
/* set up OSAL */
var osalGlobal = xdc.useModule('ti.sdo.ce.osal.Global');
osalGlobal.runtimeEnv = osalGlobal.DSPBIOS;
osalGlobal.defaultMemSegId = "DDR2";
Program.main = Program.system = null;
/* get various codec modules; i.e., implementation of codecs */ /*
 *  ======== Engine Configuration ========
 */
var Engine = xdc.useModule('ti.sdo.ce.Engine');
/* Include DSKT2 and DMAN3 configuration common to DVSDK examples:  */
xdc.includeFile('dskt2_dman3.cfg');  // This is in examples/common/evmDM6437/
       3、建立一个main.c文件,加入空main函数:            void main()                  {                    }        4、加入xdpaths.dat文件,包含dvsdk的各种文件路径        // include top-level XDC paths definition
        load( "../../xdcpaths_evmDM6437.dat" );
        5、建立一个DSPBIOS配置文件,模板为evmDM6437,并将生成的tcf文件加入到工程中去。                    6、修改build option选项                         打开compiler选项卡,配置如下:            -g -@"=$(Proj_dir)/xdcconfig/compiler.opt" -pdr -fr"$(Proj_dir)/Debug" -i"$(Proj_dir)" -i"." -i"%BIOSDVSDK_INSTALL_DIR%/examples/common/evmDM6437" -i"%BSL_EVMDM6437_INSTALLDIR%/include" -i"%BIOSDVSDK_INSTALL_DIR%/psp_1_00_02_00/pspdrivers/inc" -i"%BIOSDVSDK_INSTALL_DIR%/psp_1_00_02_00/pspdrivers/drivers/inc" -i"%BIOSDVSDK_INSTALL_DIR%/psp_1_00_02_00/pspdrivers/soc/dm6437/dsp/inc" -i"%BIOSDVSDK_INSTALL_DIR%/psp_1_00_02_00/edma3/inc" -d"_DEBUG" -mv6400+             打开linker选项卡,配置如下:              -a -c -m"./Debug/BIOS_XDC_Project_Test.map" -o"./Debug/BIOS_XDC_Project_Test.out" -w -x -i"%BIOS_INSTALL_DIR%/packages/ti/rtdx/lib/c6000" -l"%BIOSDVSDK_INSTALL_DIR%/psp_1_00_02_00/pspdrivers/lib/DM6437/Debug/i2c_bios_drv.lib" -l"%BIOSDVSDK_INSTALL_DIR%/psp_1_00_02_00/pspdrivers/lib/DM6437/Debug/palos_bios.lib" -l"%BIOSDVSDK_INSTALL_DIR%/psp_1_00_02_00/pspdrivers/lib/DM6437/Debug/prev_bios_drv.lib" -l"%BIOSDVSDK_INSTALL_DIR%/psp_1_00_02_00/pspdrivers/lib/DM6437/Debug/video_bios_drv.lib" -l"%BIOSDVSDK_INSTALL_DIR%/psp_1_00_02_00/pspdrivers/lib/DM6437/Debug/vpbe_bios_drv.lib" -l"%BIOSDVSDK_INSTALL_DIR%/psp_1_00_02_00/pspdrivers/lib/DM6437/Debug/vpfe_bios_drv.lib"             打开dspbiosbulider选项卡,配置如下: -Dconfig.importPath="C:/CCStudio_v3.3/bios_5_31_02/packages;"             打开XDC选项卡,配置如下: --xdcpathsfile="xdcpaths.dat" -tti.targets.C64P -pti.platforms.evmDM6437 -Dconfig.importPath=".../%BIOSDVSDK_INSTALL_DIR%/examples/common/evmDM6437" --tcf             以上配置我也是直接copy那个例程的配置,当然这里面的配置可以按照自己的需要进行相应的修改以适应自己的工程需求               7、修改DSPBIOS的memory配置需求,因为至少要有一个堆heap(否则会编译出错的),所以我们首先要建立一个堆,DSPBIOS默认的配置中是没有的                                                                           8、修改DSPBIOS编译配置                              9、编译整个工程                                 如果建立成功的话就会有上面所示的提示信息,呵呵~~~~~      这样一个完整的基于XDC工具的DSPBIOS工程就建立好了。      这是你打开你的工程目录就会看到你十分想念的xdcconfig目录了     里面就包含了cfg.c文件、linker.cmd文件等,在此基础上你就可以随心所欲的在自己建立的工程之中加入自己的代码了