最近做stm32f0远程升级, 升级方案是IAP(8000000-8004000) + APP1(4000-9000) + APP2(9000-E000)+预留flag区域, 1 IAP 负责通过flash的flag去判断启动app1 还是app2 2 app1和app2 中通过串口收数据去互相更新,比如,当前运行的是app1上就去更新app2,并且设置相应flag,最后软件重启跳到IAP判断flag启动哪一个的app 问题, bin文件是一个rom配置下生成的,在app1中更新app2是成功,app2中用ymode下载bin的时候,程序异常跑飞(使用同一个bin文件升级,用ymode模式下载),但是分别编译不同rom设置的bin文件,根据实际地址下载的话,不会有异常, 疑问, bin文件是纯二进制文件,keill设置的rom地址生成的bin必须烧录到flash对应的真实地址上吗? 比如keill设置的是app1的rom地址,就一定要烧录到flash 4000地址上吗? 有大神给指点下吗,纠结了好久,附上keill配置图片 1 iap配置图片 2 app1配置图片 3 app2配置图片,和app1是同一工程,只是配置不一样 |
【STM32F0开发日志/评测/笔记】+互补PWM波的产生
STM32F030 PB14和PB15无法输出PWM求助
【STM32F030探索套件】序列之五 外部中断
【STM32F0开发日志---二】+ucosii.2.92移植在STM32F030
上传个STM32F0+5110+内部温度传感器的菜鸟实例
【STM32F030探索套件使用问题】STM32F030 SPI方式驱动ST7565LCD失败
求一份STM32F051 I2C驱动LCD 12864的例程
STM32F0 M0 向结构体赋值进入HardFault异常
STM32F0 ADC-DMA方式采集2路数据时出现问题
STM32F030C8T6,TIM16定时慢很多问题?
å ³äºSTM32IAPæ»ç».rar
2017-1-20 17:48 上传
点击文件名下载附件
下载积分: ST金币 -180.99 KB, 下载次数: 494, 下载积分: ST金币 -1
IAP
评分
查看全部评分
bin文件是不包含起始地址信息的,下载的时候需要正确指定起始地址。
可以编译成位置无关代码。在C/C++选项卡内。
评分
查看全部评分
我把这两项都勾选了,编译出错
多谢了 我看下
评分
查看全部评分
可以编译成位置无关代码。在C/C++选项卡内。
在哪里能配置成无相关代码
在C/C++选项卡内
Read-Only Position Independent:指令编译成位置无关
Read-Write Position Independent:数据编译成位置无关
你用__at关键字强制定位PDTTable,这个就没法按位置无关编译了。
你可以只编译成代码位置无关啊