Ads1.2工程文件成功移至到keil中

在装有keil4.72的基础上,安装了ADS1.2,然后上网查找asd工程怎么可以转到keil下运行。网上搜索了好多资料里,内容讲的都差不多。但按照说的方法试了之后,仍出现许多乱七八糟的错误,很是郁闷!

一、遇到的其中一个头疼的错误是:

Warning:L6310W: Unable to find ARM libraries

Error: L6411E:No compatible library exists with a definition of startup symbol __main.
Target not created

问题原因是MDK与ADS冲突了,

解决方法如下

卸载ADS1.2,同时,重新安装keil:

把ADS1.2的环境变量删除。我的电脑->属性->高级-环境变量-path里面把C:\Program Files\ARM\ADSv1_2等相似的5个变量给删除了。

重新安装keil。

在我的电脑->属性->高级-环境变量-path里面增加一个变量:
增加环境变量: ARMCC5LIB
变量值:..\Keil\ARM\ARMCC\lib

二、Keil关于S3C2440的关键配置信息:

1.

 

2. keil中如何生成bin文件:

在user属性框中 run#1中输入

fromelf.exe--bin -o "$L@L.bin" "#L"

 

 

3.打开2440init.s作以下修改:

 

注释掉

IMPORT |Image$$RO$$Base| ; Base of ROM code 

 

IMPORT |Image$$RO$$Limit|  End of ROM code (=start of ROM data) 

 

IMPORT |Image$$RW$$Base|  Base of RAM to initialise 

 

IMPORT |Image$$ZI$$Base|  Base and limit of area 

 

IMPORT |Image$$ZI$$Limit|  to zero initialise 

 

 

添加

IMPORT |Image$$ER_ROM1$$RO$$Base| ; Base of ROM code 

 

IMPORT |Image$$ER_ROM1$$RO$$Limit|  End of ROM code (=start of ROM data) 

 

IMPORT |Image$$RW_RAM1$$RW$$Base|  Base of RAM to initialise 

 

IMPORT |Image$$RW_RAM1$$ZI$$Base|  Base and limit of area 

 

IMPORT |Image$$RW_RAM1$$ZI$$Limit|  to zero initialise 

 

 

注释掉

BaseOfROM DCD |Image$$RO$$Base| 

 

TopOfROM  DCD |Image$$RO$$Limit| 

 

BaseOfBSS DCD |Image$$RW$$Base| 

 

BaseOfZero DCD |Image$$ZI$$Base| 

 

EndOfBSS DCD |Image$$ZI$$Limit| 

 

 

添加

BaseOfROM DCD |Image$$ER_ROM1$$RO$$Base| 

 

TopOfROM DCD |Image$$ER_ROM1$$RO$$Limit| 

 

BaseOfBSS DCD |Image$$RW_RAM1$$RW$$Base| 

 

BaseOfZero DCD |Image$$RW_RAM1$$ZI$$Base| 

 

EndOfBSS DCD |Image$$RW_RAM1$$ZI$$Limit| 

 

 

AREA Init,CODE,READONLY

这行前将上

PRESERVE8

 

4.成功例子:

TQ2440测试文件由ads1.2转到keil中

Keil工程文件在下面网址可以获取http://www.pudn.com/downloads625/sourcecode/windows/vxd/detail2541556.html

http://download.csdn.net/detail/xiaoyue1800/7351593

 

三、说明一下.bin 文件和.hex文件的区别:

转自http://blog.sina.com.cn/s/blog_60cf05130101eddp.html

.hex文件是单片机程序编辑完之后常见的文件格式,是内容是ASCLL码,也就是0x00-0xff的字符格式。比如'1'对应的是0x31。任何字符都是有对应的0xXXASCLL码。也就是最常见的text格式。

比如一个hex格式文件的内容为:

30 31 3233 

表示文本格式的字符“0123”

然而bin文件的格式只有一个字节0-f:一般来讲是机器代码,汇编语言编译后的结果。也就是binary格式的缩写。比如一个bin格式的内容为:

10000000F863002065010008250A0008DD090008E2

10001000210A0008BF070008CB18000800000000F4

10002000000000000000000000000000990F000820

 

有上面这两者格式的存储方式可以知道,hex文件转变为bin文件后,占用空间会大大降低。

 

AXFARM芯片使用的文件格式,它包含bin代码外,还包括了调试信息。常见于手机软件编译生成的文件中。与AXF文件相似,经常会用到的是HEX文件,HEX文件包括地址信息,可直接用于烧写或下载HEX文件。

 



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值