打印
[应用相关]

请问版主:IAP程序一定小于8K吗?

[复制链接]
2794|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
bolin1981|  楼主 | 2008-11-17 19:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
IAP程序一定要小于8K吗?
最近我在做程序升级,IAP程序大于8K,做程序升级时老是出错,不知道是不是因为程序大于8K的原因???
沙发
香水城| | 2008-11-17 21:10 | 只看该作者

IAP程序的大小没有限制

多大都没有问题,100K、200K、500K都可以。

使用特权

评论回复
板凳
bolin1981|  楼主 | 2008-11-18 08:58 | 只看该作者

我现在把一些功能删除了,程序代码小于8K

我现在把一些功能删除了,程序代码小于8K,IAP升级代码程序不变,进行升级成功,之前为什么不行?
没真正弄清楚!

使用特权

评论回复
地板
ST_ARM| | 2008-11-18 11:06 | 只看该作者

如果你使用的ST的源代码

你的IAP的大小需要小于8K,如果你编译ST的代码超过8K,那你需要通过软件对代码进行优化。
为何代码要小于8K见下图:

使用特权

评论回复
5
winloop| | 2008-11-18 11:34 | 只看该作者

IAP程序你搞那么大干吗?

使用特权

评论回复
6
bolin1981|  楼主 | 2008-11-18 14:28 | 只看该作者

功能多一点

我把USB本地程序下载更新放在IAP程序中.

使用特权

评论回复
7
bolin1981|  楼主 | 2008-11-18 14:44 | 只看该作者

需要怎样修改向量表才可以使IAP代码大于8K?

ST_ARM:
你好,我看明白了你写的.
能否通过修改向量表来满足iap代码大于8k时也能升级程序?
如何修改?
能否相告?

使用特权

评论回复
8
香水城| | 2008-11-18 14:48 | 只看该作者

只需把你的程序代码定位到较高的地址即可

我说的程序代码是你要通过IAP下载的那段代码。

使用特权

评论回复
9
ST_ARM| | 2008-11-18 16:07 | 只看该作者

可以修改IAR的*.xcl来改变8K的大小

在使用IAR软件进行开发时,用户的代码使用的*.xcl如下(部分):
/*************** (C) COPYRIGHT 2007 STMicroelectronics *************
;* File Name     : lnkarm_flash.xcl
;* Author        : MCD Application Team
;* Version       : V1.0
;* Date          : 10/08/2007
;* Description   :  XLINK command file template for EWARM/ICCARM
;* Usage         : xlink  -f lnkarm  <your_object_file(s)>
;*               :-s <program start label>  <C/C++ runtime library>
;*******************************************************************/

// Code memory in FLASH
-DROMSTART=0x8002000  <----- 这里指示用户的代码的起始地址,当前值位于8K的起始地址,用户只需改变该值即可使IAP的代码超过8K。
-DROMEND=0x801FFFF

// Data in RAM
-DRAMSTART=0x20000000
-DRAMEND=0x20004FFF

使用特权

评论回复
10
walnutcy| | 2008-11-18 16:56 | 只看该作者

同楼上,另外注意vector的设置,要匹配

使用特权

评论回复
11
Miltonliu2010| | 2013-1-28 14:39 | 只看该作者
香水城 发表于 2008-11-17 21:10
多大都没有问题,100K、200K、500K都可以。

版主  你能看看我的帖子吗?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

44

帖子

0

粉丝