首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 嵌入开发 >

ADS工程转IAR工程解决方案

2012-12-14 
ADS工程转IAR工程本帖最后由 jiyingyijiye 于 2012-04-28 10:31:46 编辑一:ADS中的设置过程:1)我的目的:针

ADS工程转IAR工程
本帖最后由 jiyingyijiye 于 2012-04-28 10:31:46 编辑 一:ADS中的设置过程:
1)我的目的:针对我的开发板(arm7,系统uc/os-ii),用ADS开发一个在开发板上运行的应用程序。
2)过程:
      2-0)new->ARM Executable Image, 工程名:armtest.
      2-1) 我 建立了我的main函数(test.c)、启动函数(boot.s)和我自定义的库。
test.c 代码如下:
#include "ndlib.h"

int main(void)
{  
Sysinit();  // ndlib库中的函数
MessageBox("M73Test", "Hello,Simon", MSG_OK|MSG_CANCEL);// ndlib库中的函数
return 0;


boot.s  代码如下:
    IMPORT|Image$$RO$$Limit|
    IMPORT|Image$$RW$$Base|
    IMPORT|Image$$ZI$$Base|
    IMPORT|Image$$ZI$$Limit|

;The imported labels         

    IMPORT  main                          ;The entry point to the main function  
    
    

    CODE32

    AREA    Ramdisk,CODE,READONLY
        ENTRY

RamdiskInit


                                     LDRR0,=|Image$$RO$$Limit|
LDRR1,=|Image$$RW$$Base|
LDRR3,=|Image$$ZI$$Base|

CMPR0,R1
BEQLOOP1


LOOP0    CMPR1,R3
LDRCCR2,[R0],#4
STRCCR2,[R1],#4
BCCLOOP0


LOOP1    LDRR1,=|Image$$ZI$$Limit|
MOVR2,#0

 
LOOP2    CMPR3,R1
STRCCR2,[R3],#4
BCCLOOP2

        
RamDiskStacks
        B      main



 END

   工程添加的文件如下:
 ndlib.a (这个是我封装的库)
 test.c (我的main函数)
 boot.s (启动代码)
      2-2)工程的设置:
TarGet Settings:
        Linker: ARM Linker
        Post-linker: ARM fromELF
linker:
ARM Linker:
       Output: Linktype: Simple; Simple image:RO Base:0x81064000;RW Base:(为空)
       Options: Image entry point: 0x81064000
       Layout: Object/Symbol: boot.o   ;   Section: RamDisk ;   
整个Equipment Command line:
-info totals -entry 0x81064000 -ro-base 0x81064000 -first boot.o(RamDisk)

如上做之后,在ADS中就可以编译生成我想要的image喇。

二:在IAR中的设置:我是要在IAR5.4中开发一个类似这样的工程的。
三:我的疑问:
    在IAR中如何设置:比如:如何设置程序的入口点:是0x81064000,等等,
    在ADS中可以写一个启动代码boot.s来设置RO、RW、放在什么地方,但是在IAR中该如何设置呢?还是根本就不用boot.s啦,用其他的方式实现?
   如果要在IAR中实现一样的效果的话,我应该如何修改boot.s文件呢??
   如果转到IAR开发环境的话,boot.s中的实现,在IAR开发环境中如果实现呢(或者如何修改呢)???
四:我想要得到的效果:
   把上面这个ADS的工程在,IAR中实现。



五:希望高手提点一下,最好可以把在IAR中我这个工程的实现过程说一下啦~~  希望可以有高手帮帮忙啦!!!
[解决办法]
直接在IAR软件里面写代码 不考虑ADS
[解决办法]
但是你要进行环境的设置啊!!,因为只是工程的移植,一般代码改动不到吧,再说了,我的测试代码很简单呢,,我只是不理解在IAR中如何把RO、RW,的地址设置好呢(在ADS中:在Output: Linktype: Simple; Simple image:RO Base:0x81064000;RW Base:(为空)设置就可以了,,但是IAR的就不知道怎么样了??)

热点排行