在CCES环境下将程序烧录到flash主要有两种方式。
1.通过命令窗口
首先在对项目编译产生文件的属性设置为Release。
在编译完成后,找到每个CORE单独生成的DXE文件:
文件通常位于项目目录下每个core的Release文件中。
安装SC589评估板的驱动(ADSP-SC5xx_EZ-KIT_Lite-Rel2.0.0.exe)后,在安装目录下可以找到SPI FLASH芯片的驱动程序(sc589_w25q128fv_dpia_Core1.dxe):
把文件copy到CCES 的目录下
由于SC58x处理器的特殊性,同时要把ARM上的一个预加载文件(ezkitSC589_initcode_core0_v10)也copy到CCES 的目录下:
将CCES中三个core单独生成的DXE文件,ARM预加载文件和SPI FLASH芯片的驱动程序都拷贝到CCES 的目录下。
在PC机的命令行窗口下,进入CCES的命令行目录:
Tips:在Windows相应的目录下,按住(Shift+鼠标右键),会找到一个如下的菜单:
在CCES 的命令行目录下,输入下面的生成单一LDR文件的命令行:(关键是要加入-NoFinalTag参数,以保证多个Core的程序都能合成一个LDR并加载)
elfloader.exe -proc ADSP-SC589 -init ezkitSC589_initcode_core0_v10 -core0=timer_Core0 -core1=timer_Core1.dxe -core2=timer_Core2.dxe -NoFinalTag=timer_Core0 -NoFinalTag=timer_Core1.dxe -b SPI -f BINARY -Width 8 -bcode 0x1 -verbose -o LED_Blink_SC589.ldr
将对应core文件的名字修改为自己的就可以了
执行以上命令行后,将在该目录下自动生成多Core的LDR文件(LED_Blink_SC589.ldr)
继续执行烧录指令,输入下面的命令行,将前面生成的LDR文件写入评估板的SPI FLASH芯片中 (烧写过程需要1分钟以上的时间):
根据仿真器的不同,也需要对命令行进行修改。
ICE 2000:cldp.exe -proc ADSP-SC589 -core 1 -emu ICE-2000 -driver sc589_w25q128fv_dpia_Core1.dxe -cmd prog -erase affected -format bin -file LED_Blink_SC589.ldr
ICE 1000:cldp.exe -proc ADSP-SC589 -core 1 -emu ICE-1000 -driver sc589_w25q128fv_dpia_Core1.dxe -cmd prog -erase affected -format bin -file LED_Blink_SC589.ldr
最后,设置SC589板子的相应BootMode的开关(SW1),Boot Mode设置为SPI MASTER(SW1 = 1),即可自动运行新烧写的代码。
注意:下载完程序后,程序不一定能够成功的自启动,有时需要下载多次才能成功。
2.通过相应软件
这种方法配置起来相对麻烦,但是优点在于一次配置后可以多次重复使用。
附上链接:https://wiki.analog.com/resources/tools-software/sharc-audio-module/baremetal/flashing?s[]=flash