打印
[ARM入门]

RVDS编译时出错,求助

[复制链接]
1537|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xyyujn|  楼主 | 2014-1-11 10:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用的是ARM11的板子,我用RVDS写了一段裸板的LED全亮的程序,最后编译时出错,求大神指教。启动代码和C函数都是我自己写的
启动代码:
        IMPORT main
        AREA Example,CODE,READWRITE
        ENTRY
        CODE32
START
        ldr r0,=0x70000000
        orr r0,r0,#0x13
        mcr p15,0,r0,c15,c2,4

        ldr r0,=0x7E004000
        mov r1,#0
        str r1,[r0]

        ldr sp, =8*1024
        bl main
       
halt b halt
        END
C函数:
int main(void)
{
        volatile unsigned long *gpkcon0 = (volatile unsigned long*)0x7F008800;
        volatile unsigned long *gpkdat = (volatile unsigned long*)0x7F008808;
        *gpkcon0 = (*gpkcon0 & 0xffff) | 0x11110000;
        while(1)
        {
                *gpkdat = *gpkdat | 0x0111;
        }
}
最后编译时出这个错,不知道为什么。是不是我代码有问题,还是进行链接配置时,没配置对?
错误:
    Error:object file for file:one led .o could not be retrieved.Recompile file

相关帖子

沙发
阿南| | 2014-1-11 16:20 | 只看该作者
需要led.o,应该是没有编译正确,或者设置有问题。建议先用官方的例程编译,以确定编译环境是正确的

使用特权

评论回复
板凳
xyyujn|  楼主 | 2014-1-12 09:17 | 只看该作者
阿南 发表于 2014-1-11 16:20
需要led.o,应该是没有编译正确,或者设置有问题。建议先用官方的例程编译,以确定编译环境是正确的 ...

版主,我找到错误了。原来是我把启动代码和C函数文件设置了相同的名字的原因

使用特权

评论回复
地板
xyyujn|  楼主 | 2014-1-12 09:21 | 只看该作者
阿南 发表于 2014-1-11 16:20
需要led.o,应该是没有编译正确,或者设置有问题。建议先用官方的例程编译,以确定编译环境是正确的 ...

版主,能帮忙看一下启动代码吗?这个代码是从韦东山的教程上改过来的,但是下载到板子上没有效果。我把启动代码改成官方提供的就没问题。我用的下载方式是SD卡启动,用超级终端和DNW传到板子上的

使用特权

评论回复
5
阿南| | 2014-1-13 12:26 | 只看该作者
最好以官方的为主,在那上边改,而且启动代码基本不用改的

使用特权

评论回复
6
xyyujn|  楼主 | 2014-1-13 14:54 | 只看该作者
阿南 发表于 2014-1-13 12:26
最好以官方的为主,在那上边改,而且启动代码基本不用改的

新手学习,需要学会自己写启动代码吗?

使用特权

评论回复
7
阿南| | 2014-1-14 18:58 | 只看该作者
不需要,但最好去分析理解清楚

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

13

帖子

0

粉丝