远程升级两个工程的合并

[复制链接]
 楼主| 21ID 发表于 2012-12-20 13:35 | 显示全部楼层 |阅读模式
现在手上有一个常规的程序和一个远程升级用小程序。用的是KEIL编译器。请问一下,我怎么把这两个工程,有两个main函数合并为一个工程。
比如256k的Rom,常规程序在烧写的时候占200k,而升级用的小程序占56K。
jack821119 发表于 2012-12-20 18:53 | 显示全部楼层
在常规程序中使用函数指针指向升级程序.
song19881218 发表于 2012-12-20 20:18 | 显示全部楼层
把两个程序都用Jlink写进去,然后用jlink或者ISP再读出来就行了
 楼主| 21ID 发表于 2012-12-21 08:17 | 显示全部楼层
jack821119 发表于 2012-12-20 18:53
在常规程序中使用函数指针指向升级程序.

关键一点是用KEIL写程序或者用烧写文件写程序的时候怎么分配ROM空间,升级程序是不能在升级的时候被擦掉的
 楼主| 21ID 发表于 2012-12-21 08:18 | 显示全部楼层
song19881218 发表于 2012-12-20 20:18
把两个程序都用Jlink写进去,然后用jlink或者ISP再读出来就行了

可以用仿真器把两个程序都写进去,但是读出来干嘛呢?如果分两个工程的话,是可以指定ROM起始地址的。
lxyppc 发表于 2012-12-21 09:15 | 显示全部楼层
修改链接脚本,更改程序的地址空间
 楼主| 21ID 发表于 2012-12-21 16:46 | 显示全部楼层
lxyppc 发表于 2012-12-21 09:15
修改链接脚本,更改程序的地址空间

我是想在同一个工程下,把放置现在的两个程序,然后在烧写的时候直接烧写到指定的ROM中。
jack821119 发表于 2012-12-26 19:30 | 显示全部楼层
在keil c设置里面直接分配好rom的区间就可以了,或者在M51文件里面改也可以
您需要登录后才可以回帖 登录 | 注册

本版积分规则

157

主题

912

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部

157

主题

912

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部