四:第二次启动实验(点亮LED,点灯程序放到DDR内)
这次实验也是通过点灯实验进行测试的,但是这一次是将点灯的程序放到DDR内,这次实验需要注意的几个问题:
1:将点灯段的代码放到DDR内,通过 #pragmaCODE_SECTION(test, "DDR");实现。
2:由于点灯的程序存放在DDR内,但是DSP在启动时只能把片内的程序自动的进行导入,所以DDR内的程序的导入需要手动的写在第一段存放在片内的程序中。所以这个实验会有2个bin文件的导入,第一个是在DSP上电后自动从FLSAH导入到片内的,第二个是需要手动的导入的。
3:程序中要初始化PLL,DDR,Pinmux。由于点灯段的代码是存放在DDR上的,所以程序开始时要配置DDR主频,并且进行初始化,而且要在Pinmux中配置SPI,SPI初始化,然后将存放在flash中的点灯程序导入到DDR中,既可以执行点灯程序。
4:bin文件的生成,由于启动的代码存放在片内,但是点灯的程序存放在DDR中,所以就不能用第一次实验的方法进行bin文件的生成,下面提供另外的两种方法:
a:通过CCS中的save memory 功能根据.map文件中的 片内和DDR中的两段2进制代码的首地址和大小直接导出,另存为两个bin文件。
b:先转为hex文件,然后将片内,DDR上对应代码的hex分为2个文件,然后利用hex2bin工具转为2个bin文件。