我想用CCS4.0向DM368开发板烧写应用程序,模仿了烧写uboot的步骤:
1、在CCS里运行NANDWriter_DM36x.out;
2、输入UBL的路径:输入UBL_DM36x_NAND.bin的路径;
3、输入u-boot或者应用程序路径:输入video_loopback.bin路径;
4、输入入口点地址和load地址:输入0x81080000;
我生成video_loopback.bin的方法:hex470.exe ubl2bin.cmd
这里就有两个问题:
问题一:我生成video_loopback.bin文件的时候,有以下警告:
Translating to Binary format...
"video_loopback.out" ==> .text
warning: section video_loopback.out(.text) at 080h falls in unconfigured memory
(skipped)
"video_loopback.out" ==> .cinit
warning: section video_loopback.out(.cinit) at 087000ce8h falls in unconfigured
memory (skipped)
"video_loopback.out" ==> .const
warning: section video_loopback.out(.const) at 087000e98h falls in unconfigured
memory (skipped)
我用ultraedit打开生成的video_loopback.bin,发现里面内容全是0 。
ubl2bin.cmd文件内容如下:
video_loopback.out
-b
-image
/*-zero
-memwidth 8
-linkerfill
-fill 0x00000000
*/
-map video_loopback.map
ROMS
{
FLASH: org = 0x02000000, len=0x100000, romwidth=8, files={video_loopback.bin}
}
我的工程的cmd文件内容如下:
/*
* Copyright 2005 by Spectrum Digital Incorporated.
* All rights reserved. Property of Spectrum Digital Incorporated.
*/
/*
* Linker command file
*
*/
-l rts32e.lib
-l F:\QXD_DEMO\lib\evmdm365bsl.lib
-stack 0x00000800 /* Stack Size */
-heap 0x00000800 /* Heap Size */
EMIFStart = 0x02000000;
EMIFSize = 0x02000000;
IRAMStart = 0x00000000;
IRAMSize = 0x00008000;
DRAMStart = 0x00010000;
DRAMSize = 0x00008000;
DDRStart = 0x80000000;
DDRSize = 0x10000000;
STACKStart = DRAMStart + DRAMSize;
MEMORY
{
VECS: o = 0x00000000 l = 0x00000080
IRAM: o = 0x00000080 l = 0x00007f80
DRAM: o = 0x00008000 l = 0x00004000
DDR2: o = 0x87000000 l = 0x01000000
}
SECTIONS
{
.bss > DDR2
.cinit > DDR2
.cio > DDR2
.const > DDR2
.stack > IRAM
.sysmem > DDR2
.text > IRAM
.ddr2 > DDR2
}
问题二:我用上面的方法用仿真器连接ccs和DM368开发板烧写程序,脱机运行是否可行?