打印
[PIC®/AVR®/dsPIC®产品]

bootloader相关的问题

[复制链接]
440|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
gongche|  楼主 | 2022-10-16 14:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
有一个boot程序和一个app程序,
app程序偏移了0x1000,把两个hex文件稍微合并了下,
程序也能够正常跳转。

那如果app程序里有中断,是不是需要对中断向量表做一些处理啊?

使用特权

评论回复
沙发
renyaq| | 2022-10-16 14:59 | 只看该作者
app程序单独跑呢

使用特权

评论回复
板凳
gongche|  楼主 | 2022-10-16 15:01 | 只看该作者
app程序单独跑没有问题,加了上述的boot之后没有正常工作。。。

使用特权

评论回复
地板
gongche|  楼主 | 2022-10-16 15:04 | 只看该作者
注:芯片是PIC16F系列的,IDE用的MPLAB + HI-TECH C

使用特权

评论回复
5
gongche|  楼主 | 2022-10-16 15:06 | 只看该作者
解决了,看其他大神boot源码看到的一种思路
; ********************************
_V_INT_LOW CODE 0x0018
  bra 0x0218     ;Re-map Interrupt vector
; ********************************

因为boot程序没有用到中断,所以在boot程序的中断里直接跳到app程序中断函数地址开始执行。

使用特权

评论回复
6
heweibig| | 2022-10-16 15:08 | 只看该作者
没看懂啥意思

使用特权

评论回复
7
gongche|  楼主 | 2022-10-16 15:10 | 只看该作者
这样如果app程序产生了中断,会先调用boot程序的中断处理函数,然后跳转到app程序中断函数进行处理。

使用特权

评论回复
8
chenho| | 2022-10-16 15:14 | 只看该作者
汇编BOOTLOADER,网上就有现成的可用;

使用特权

评论回复
9
huanghuac| | 2022-10-16 15:15 | 只看该作者
C语言需要自己动手写了,不难搞定

使用特权

评论回复
10
gongche|  楼主 | 2022-10-16 15:18 | 只看该作者

microchip。com/forums/m424874。aspx
可以参考下(。换.),我也是按照源码思路改的。。。

使用特权

评论回复
11
dengdc| | 2022-10-16 15:19 | 只看该作者
如果没有向量重新映射功能,需要从BOOT中断向量处跳转到APP的中断向量

使用特权

评论回复
12
jiaxw| | 2022-10-16 15:21 | 只看该作者

有冲突的话就处理一下

使用特权

评论回复
13
stly| | 2022-10-20 19:25 | 只看该作者
C语言需要自己动手写了

使用特权

评论回复
14
tian111| | 2022-10-20 19:28 | 只看该作者
还有一个优先的问题

使用特权

评论回复
15
supernan| | 2022-10-20 19:31 | 只看该作者
存储空间的地位也不相同

使用特权

评论回复
16
chenho| | 2022-10-20 19:33 | 只看该作者
没有遇到过这个问题啊

使用特权

评论回复
17
zwll| | 2022-10-20 19:38 | 只看该作者
楼主用的是什么单片机呢?

使用特权

评论回复
18
Bowclad| | 2022-11-2 20:19 | 只看该作者
有现成的汇编BOOTLOADER

使用特权

评论回复
19
Jacquetry| | 2022-11-4 20:06 | 只看该作者
用的是什么单片机呢?

使用特权

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

本版积分规则

768

主题

9410

帖子

2

粉丝