[S3C2440] 为什么我用ADS编译出的BIN文件下载到开发板上裸机运行不了

[复制链接]
1722|7
 楼主| ljn562483069 发表于 2013-12-22 12:58 | 显示全部楼层 |阅读模式
主要是编译出的 Image component sizes里的code尺寸20496就运行不了,我把程序里删除几条指令直到code尺寸为20476就一切正常,程序里我有把Nand flash里的程序搬运到SDRAM里,而且搬移足够大的空间,这是怎么回事呢?还请大侠们指教!为什么我用ADS编译出的BIN文件下载到开发板上裸机运行不了
阿南 发表于 2013-12-22 18:17 | 显示全部楼层
20496 刚超出20K,仔细分析下搬运的那段代码
 楼主| ljn562483069 发表于 2013-12-22 19:01 | 显示全部楼层
void RdNF2SDRAM( )
{
        unsigned char buff[5];
        U32 i;
        U32 start_addr =1024;
        unsigned char * to = (unsigned char *)0x30000000;
        U32 size = 0x100000;
        rNF_Init();
        nf_readid(buff);
        switch(buff[1])
        {
                case 0x76:
                        for(i = (start_addr >> 9); size > 0; )
                        {
                                rSB_ReadPage(i, to);
                                size -= 512;
                                to += 512;
                                i ++;
                        }
                        break;
                case 0xf1:
                case 0xda:
                case 0xdc:
                case 0xd3:
                        for(i = (start_addr >> 11); size > 0; )
                        {
                                nf_readpage(i/64,i%64,to);
                                size -= 2048;
                                to += 2048;
                                i ++;
                        }
                        break;
        }
}               
在我看来似乎没什么错误
阿南 发表于 2013-12-23 12:18 | 显示全部楼层
进到反汇编那里去,对着寄存器和地址一步步调才有可能找到。C编译器经常会有些优化
leilei03 发表于 2013-12-23 22:16 | 显示全部楼层
ssssssssssssssssssssssssssssssssssssssssssssssss
 楼主| ljn562483069 发表于 2013-12-24 09:57 来自手机 | 显示全部楼层
ljn562483069 发表于 2013-12-23 22:14
"C编译器经常会有些优化"?会怎么优化,能具体点么,我是菜鸟,还请多多帮忙啊。就算用别人的nand flash搬 ...

编译出的list.txt里有这么一句“no section assigned to this execution region”是说没有分配RW的空间
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

7

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部