2018.4.10日拿到创龙EVM-DM3730开发板,按照操作手册进行SD卡程序启动操作,基本上没有问题。
由于项目需要,在DM3730上开发裸机程序,完成对外围器件的功能测试,因此尝试使用下载器对DM3730进行直接下载,以下是操作方法:
(1)安装CCS6.2,这个不需要说明,TI官网有在线安装程序,安装后也不需要破解,可以直接使用;
(2)XDS100V2的驱动程序貌似CCS6.2直接自带,反正我插上XDS100V2直接可以识别;
(3)新建一个CCS工程,这里需要注意,由于DM3730是DSP+ARM双核,因此创建工程需要选择是基于ARM核还是DSP核,这里基于ARM核开发,如下图
需要注意,器件选择EVMDM3730而非DM3730,这样CCS6.2会自动加载EVDM3730.CCXML,不需要手动更改GEL文件设置。
(4)新建好工程之后编译“build project”,会提示报错:
"../DM3730.cmd", line 29: error #10264: DDR0 memory range overlaps existing memory range CS0_SDRAM
"../DM3730.cmd", line 29: error #10264: DDR0 memory range overlaps existing memory range CS1_SDRAM
双击,可以定位到DM3730.CMD文件中的
DDR0: o = 0x80000000 l = 0x40000000 /* 1GB external DDR Bank 0 */
将此行注释,则编译不再报错,具体会导致什么影响需要后续研究;
(5)开发板上电,连接JTAG,点击DEBUG,提示如下,则表示ARM核连接成功;
(6)新建基于DSP核的工程,如下图:
运行DEBUG,会提示如下错误,尝试手选GEL文件,错误依然存在,暂时未找到解决方法。
总结:
(1)DEBUG时,偶尔会出现No source available for "0x14000错误,程序无法正常执行,可能与更改了.cmd 文件有关;
(2)基于DSP核建立的工程不能实现DEBUG,具体原因未知,还需要进一步分析。
/////////////////////////////
关于第二个问题,已经找到解决方法,DM3730中ARM作为主设备,DSP作为从设备,必须在ARM正常工作之后才可以尝试访问DSP,因此直接进行对DSP的DEBUG会出错,解决方法如下:
(1)运行基于ARM的Project,然后进入DEBUG,然后开启DSP内核,方法如下图
选择ARM核,Scripts-IVA2200_Startup-IVA22_GEM_startup;
选择DSP核,右击选择Connect Target,此时DSP核可以开始工作;
不断电,重新DEBUG刚才的DSP Project,可正常工作;
重新断电上电,则又不可以工作,证明推断正确。