QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1592|回复: 2

请教李老师几个问题

[复制链接]
发表于 2005-7-2 10:57:42 | 显示全部楼层 |阅读模式
做前面几个实验时,碰到几个问题,实在搞不明白,尤其是实验三存储器映射部分,感觉好困惑。问题如下:

1.实验二:
  leg_blink.s文件,如果我将最后一句"B loop"注释掉,生成的bin固化至flash,蜂鸣器会响,这是什么原因???
2.能不能这样说:只要程序用c语言编写,那么一定要有bootloader,因为涉及到函数参数入栈出栈等问题???
3.实验三:
1) startup.s中RomEndAddr           EQU     &20 语句中&表示什么意思???
2) ldr r0,=0x03FF5000和ldr r0,#0x03ff5000有什么区别?
3) 存储器重映射没看懂,另外,为什么要进行重映射?
4)
RemapMemory
; ++++++++++++++++++++++++++++++++       
        ldr        r1, =0x0002030                ; show led = 1110
        ldr        r0, =0x03FF5008
        str        r1, [r0]
; ++++++++++++++++++++++++++++++++

        adr        r0, RemapMemPara
        ldmia        r0, {r1-r11}
        ldr        r0, =ROMCON0
        stmia        r0, {r1-r11}
       ...
上述四句话应该是保存r1-r11吧,可是这与存储器空间映射有什么关系呢?
4.实验三:
RemapMemPara
        DCD        &12040060
        DCD        &10842060
        DCD        &10842060
        DCD        &10842060
        DCD        &10842060
        DCD        &10842060
        DCD        &10000398
        DCD        &10040398
        DCD        &10040398
        DCD        &10040398
        DCD        &ce2983fd       

这些内存单元的值为什么是这样?有什么依据要这样设置?

5.实验三:
ldr        lr,        GotoMain                                
        b        RemapMemory                                

        GBLS        MainEntry
MainEntry        SETS        "main"
        IMPORT        $MainEntry
       
GotoMain        DCD        $MainEntry

其中ldr lr,GotoMain语句是将GotoMain这个字内存单元地址赋给lr呢还是将GotoMain字内存单元中的值即$MainEntry赋给lr?

呵呵,不好意思,一口气问了这么多问题!

谢了先!
发表于 2005-7-3 09:28:59 | 显示全部楼层
1) 蜂鸣器响就是和 gpio16 的设置和输出有关,输出1就响,输出0就不响。
2) 程序调用函数的时候,会进行堆栈操作,需要保证sp可用就可以。你说的因果关系很牵强。bootloader 还有很多其他的作用,而且C语言也可以内嵌汇编。
3) 这几个汇编指令我也不太熟悉,回头查一下 ads 的文档再告诉你。
存储器重映射,主要就是让 0 地址在 ram 中,可以提高中断响应速度。
4) 内存配置寄存器的写法请看一下 s3c4510 的数据手册,每一位都有特定含义。
5) lr 指令执行的结果,你可以用 ARMulator 仿真运行一下就清楚了,看看 lr里面究竟是什么。  
回复

使用道具 举报

 楼主| 发表于 2005-7-3 10:07:57 | 显示全部楼层
谢谢李老师。
我的问题比较繁琐,主要是因为刚开始学,心里着急,一碰到问题自己不思考就想从别人那里知道答案,典型的拿来主义。
以后得改下,先自己琢磨一下。
我想问一下,你们正在做44b0板子吧,什么时候能出来?到时你能不能也编一个step by step啊?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-6-7 05:29 , Processed in 0.071799 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表