当前位置:首页 >> 信息与通信 >>

转换 ADS 工程到keil


Team MCUZONE

转换 ADS 工程到 keil
Team MCUZONE
从 44b0 开始关注和学习 ARM 的人对 ADS 肯定很熟悉,而现在从单片机过渡而来开 始学习 ARM 的人也不少, 而且目前内置 flash 的 ARM 器件也大量出现, 也方便了应用和学 习. ADS 作为官方的编译工具,其效率自不待言,keil

作为 c51 时代的经典,其对外设的模 拟能力值得称道.随着 keil 推出 keil for ARM,使用 ARM7 的用户也可以象 51 一样进行直 观的开发,而没有 ADS 中繁琐的设置,而且使用 keil 的 ulink 还能使得 debug 变得更轻松. 现在 keil 被 ARM 收购,成为了正规军,在 keil 中调用 ADS 的工具链完成具体的编译,连 接等工作,将使得开发变得简单,同时获得高的代码效率. 由于 keil 里面是调用 ADS 的工具链,所以工程文件的本身不需要修改,只需要重新建 立个工程,改些设置即可.罗嗦了这么多,下面切入正题,讲解如何将现成的用于 ADS 的 工程转换到 keil 中. 首先需要保证电脑上安装有 keil for ARM IDE,最新的是 3.00a(20060524)最好安装 有 ADS1.2 或者 RV2.2. 这里以 x256 的 tc 代码为例,原来的 ADS 工程文件夹如下图:

浏览一下文件夹就会发现: Include:包含了相应的头文件 Sam7x-tc:包含了工程文件 Src:应用的代码 Startup:汇编和 c 的启动代码 首先到工程文件夹下,打开 ADS 的工程,

www.mcuzone.com

-1-

Team MCUZONE

这就是本工程所用到的一些资源文件,然后编译一下,看看能不能通过. 建议将这些文件复制出来放到另外一个 keil 专用的工程文件夹里,比如

也可以象 ADS 中一样建立不同的文件夹来存放,但是这里工程文件比较小,就放到一 起了.注意其中的.h 文件,这是根据那些.c 文件中的信息添加的. 打开 keil,建立一个工程,注意选择正确的目标器件的名字,然后为工程取个名字,加 入这些资源文件:

上图中可以看到每个.c 文件包含了哪些.c 文件, 这是编译了一次之后, 产生的引用信息. keil 下面要选择编译所使用工具链.打开 projectàcomponents, environment and books

www.mcuzone.com

-2-

Team MCUZONE

选择使用 ARM 的工具链,这里选择的是 ADS1.2 的,也可以选择 RV2.2,当然也可以选择 keil 中带的 RV3.0 的(默认) ,这个效率也是最高的,只是其产生的 axf 文件无法用 AXD 调 试,甚至是 RV2.2 的也无效. 确定之后,就要设置工程的一些属性: 这个是和器件有关的,出于定时考虑,建议频率填真实值

Output 中有不少需要注意的地方

www.mcuzone.com

-3-

Team MCUZONE

其中的 select folder for objects 可以指定一个文件夹用于存放输出的文件, 建议在工程文件夹 下新建一个文件夹(这里没有指定) ,然后指向这里,就会将输出文件置于此处,否则就会 放到工程文件夹下,和资源文件混到一起.右侧可以改变输出的文件名,由于默认的情况下 编译后只生成 axf 文件,为了得到用于最终烧写的 bin 文件,还要在编译完成后运行一下 fromelf 来转换一下.注意其中的命令行,这是输出文件也在当前目录下,也就是没有指定 输出文件夹的情况, 如果指定了输出文件夹, 那么 axf 文件的路径要指定. 参数—bin 是 RV2.2 所带的 fromelf 的要求. Listing 选项卡中可以选择输出一些有用的输出文件的信息,比如 map 文件,这里也可以指 定一个文件夹来存放,建议就直接指向前面那个输出文件夹. C/C++选项卡中可以选择优化的等级,要注意就是 include paths,如果一些头文件放到另外 的地方,可以在这里指定,而.c 文件中只用 include "???.h"即可,而不用指明头文件 的路径. Asm 选项卡与这个类似.

www.mcuzone.com

-4-

Team MCUZONE

主要的可能就是这个 linker 的选项

RO,RW 的 base 可以到 ADS 工程查询,比如这个工程的 ADS 设置如下

www.mcuzone.com

-5-

Team MCUZONE

所以设置 keil 中的为那样的值(ro 在 flash 中的地址就是 0x100000) ,如果 ADS 的工程使用 的 scatter file,那可以直接在 keil 中选择那个 scatter file,也可以研究后指定 ro 与 rw.余下 的 misc controls 要指定 image 的 entry point,语法与 ADS 中一样,也可以到 ADS 中看看

Debug 选现可以选择调试的方式,如果使用 ulink 可以参考本站关于 ulink 调试的文章
使用 ULINK 进行 FLASH 调试,下载的设置

到这里,工程设置基本完成,然后就可以选择编译.可能会报一些头文件找不到的错误,这 个时候就要到原来的 ADS 工程下去找到,添加进来即可.

www.mcuzone.com

-6-

Team MCUZONE

以上大体介绍了下从 ADS 工程转向 keil 工程的步骤,希望能对大家的学习有所帮助. 如果有不妥的地方,欢迎讨论. hotislandn@hotmail.com 请访问 www.mcuzone.com 获取最新的更新 Team MCUZONE 2006.05.24

www.mcuzone.com

-7-

相关文章:
ADS1.2和MDK兼容解决方法
2、删除 ADS 下的环境变量,两种环境只能使用一个! 3 、还有就是在 keil 的 LINker 下加入条件“--libpath=C:\Keil\ARM\ARMCC\lib”,每个工程都要添加,麻烦...
IAR与Keil工程之间的转换
IAR与Keil工程之间的转换_理学_高等教育_教育专区。IAR 与 Keil 工程之间的转换...转换ADS 工程到keil 7页 1下载券 STM32 keil uvision3 MD... 3页 免费 Kei...
ADS到keil4.12移植,使用Ulink2 下载调试
ADS1.2 到 keil4.12 移植,使用 Ulink2 下载调试总结: 1、 如下图 LPC2000 的下载接口电路可兼容 ADS1.2 Jlink 和 keil 4.12 ulink2 的下载调试。 V CC ...
ads+jlink和keil+jlink调试环境配置 .
ads+jlink和keil+jlink调试环境配置 ._计算机软件及应用_IT/计算机_专业资料。...那就找到到 ads 工程源码中的这个文件,点击打开 点击打开之后,应该就可以出现以下...
...+MDK+jlink裸机程序设计和在线仿真+ads移植到keil4 ...
KEIL4+MDK+jlink裸机程序设计和在线仿真+ads移植到keil4 MDK_计算机软件及应用_...KEIL4 + MDK + JLIN 程序设计及在线仿真 1.建立一个工程,在提示是否加载自带...
从ADS到RealView MDK
Keil 是业界最受欢迎的 51 单片机开发工具之一,它拥有流畅的用户界面与强大的...用户将老的、遗留 的 ADS 工程转化成在 RealView MDK 中进行开发调试的工程。...
MDK4.7与ADS1.2不兼容解决办法
1 打开环境变量界面 2 在系统变量下点击新建,新建如下变量 ARMCC5LIB C:\Keil\ARM\ARMCC\lib 3 重启电脑、设置生效 ©2014 Baidu 使用百度前必读 | 文库...
移植TX2440A的ADS项目到MDK4
移植TX2440A的ADS项目到MDK4_计算机软件及应用_IT/计算机_专业资料。移植 TX2440...ADSkeil4移植 2页 免费 SMARTARM2200 ADS工程在... 7页 免费 SMARTARM220...
KEIL4+MDK+jlink裸机程序调试+ads移植keil4_MDK
KEIL4+MDK+jlink裸机程序调试+ads移植keil4_MDK_电子/电路_工程科技_专业资料。KEIL4 + MDK + JLIN 程序设计及在线仿真 1. 建立一个工程,在提示是否加载自带...
C8051f020的AD转换在keil4仿真
C8051f020的AD转换keil4仿真_信息与通信_工程科技_专业资料。在keil4软件下完成C8051f020的AD转换,此程序设置ADc0的0通道转换模拟量在keil4仿真时能看到转换结果...
更多相关标签:
ads keil | keil ads冲突 | ads移植到keil | ads转keil | ads和keil | ads和keil的兼容问题 | ads1.2和keil | ads与keil冲突 |