你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

keil编写的BootLoader 可以跳转到 GCC编写的APP里吗?

[复制链接]
呢称可以改吗 提问时间:2019-7-23 16:18 /
keil编写的BootLoader 可以跳转到 GCC编写的APP里吗?
收藏 评论10 发布时间:2019-7-23 16:18

举报

10个回答
奏奏奏 回答时间:2019-7-23 16:25:46
可以。
要在编译器工具GCC设置好APP的开始地址,中断向量表偏移地址。
Angel_YY_ST 回答时间:2019-7-23 16:35:29
提示: 作者被禁止或删除 内容自动屏蔽
橡皮筋儿 回答时间:2019-7-24 09:59:46
提示: 作者被禁止或删除 内容自动屏蔽
byronsong 回答时间:2019-7-24 10:40:55
可以
cj_miner_lover 回答时间:2019-7-24 11:48:16
No problem,我的几个单片机无os产品都支持在线升级功能。
跳转,跟编译器关系貌似不大,只与地址有关。
实现思路是:
bootloader中关全局中断后执行跳转指令至app.bin的存储首地址。

我们用的KEIL  IAR都可以。
七哥 回答时间:2019-7-24 12:53:17
BootLoader、App生成的都是可执行机器代码,跟用什么编译器没有关系。
只要能有相匹配的跳转首地址、中断向量地址、内存初始化等操作。
weiwei4 回答时间:2019-7-24 14:43:04
可以的
编译时设置好各自的起始地址,中断向量表,内存初始化等,由Bootloader跳转到正确的App起始地址就可以
maxtch 回答时间:2019-7-24 16:32:39
可以。GCC 和 Keil 都遵循了 ARM SysV EABI,Keil 也能单向兼容 GCC 输出的 ELF 文件,因此可以直接连接到一起。
butterflyspring 回答时间:2019-7-24 17:29:45
这个跟编译器没什么关系,理论上只要架构合理,跳转地址正确就可以了。很多用户都有类似经历的
AI++ 回答时间:2019-7-25 08:34:59
理论是可以,但是你用GCC编写的APP 需要修改编译地址,一般默认从0x80000000开始,
你要改这个值,Boot 也要跟着变,另外如果用os 更复杂一些

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版