查看: 5797|回复: 4

[其他] 关于DZ60的Bootloader的中断向量重定位问题

[复制链接]

该用户从未签到

2

主题

3

帖子

0

新手上路

Rank: 1

积分
26
最后登录
2017-2-7
发表于 2017-1-20 09:24:34 | 显示全部楼层 |阅读模式
问题点:
现在做的是MC9S08DZ60的Bootloader,打算使用CAN中断接收S19文件,所以0xFFC0-0xFFFF的中断向量要留给Bootlaoder使用;因此打算将中断向量重定位到0xF3C0-0xF3FF中。
解决思路:
根据DZ60在datasheet中介绍,将@0xFFBF写02 and @0xFFBD写0xFD设置0xF400-0xFFFF保护;因此打算在用户程序中添加这两个操作,进行中断向量重定向操作。生产的中断向量也重定向到了0xF3C0-0xF3FF,但是生成的S19文件最后有关于中断向量和FLASH保护寄存器即地址为@0xFFBF和@0xFFBD的操作,但是通过在Bootlaoder中对着@0xFFBF和@0xFFBD两个寄存器用FLASH写入的方法无法写入数据02和FD数据,导致最后用户程序无法进入中断。
请教有没有大神能帮忙解答一下?
在此先谢过


这是S19最后几行关于中断向量数据

这是S19最后几行关于中断向量数据

这是最后S19文件关于中断向量的数据,看样子是中断向量已经重定位,但是@0xFFBF和@0xFFBD两个寄存器写入有困难。
我知道答案 目前已有4人回答
回复

使用道具 举报

该用户从未签到

0

主题

3

帖子

0

新手上路

Rank: 1

积分
18
最后登录
2017-7-20
发表于 2017-1-21 10:13:01 | 显示全部楼层
关于中断向量的重新定位问题,请问能告诉我是怎么重新定位的吗?
我试了很多次都没有成功。
我认为截图中只有f3c6与f3cc两个地址是做了中断向量偏移,ffbd往下的中断地址是原始地址。
并且,你的bootloader是否定位在f000以后的区域?若是,请问你的bootloader区大小是否合适,地址为f3c6是否会改变bootloader的数据?

并且你已经设置了保护区怎么能修改里面的内容呢?
回复 支持 反对

使用道具 举报

该用户从未签到

2

主题

3

帖子

0

新手上路

Rank: 1

积分
26
最后登录
2017-2-7
 楼主| 发表于 2017-2-6 11:15:07 | 显示全部楼层
中断向量重定位你可以详细看下数据手册,简单点就是对NVOPT寄存器写入0x02,对NVPROT寄存器写入0xFD,保护 0XF400-0XFFFF区域。
我的向量重定位应该是成功了,就是通过Bootlaoder下载完用户程序后再跳转到用户程序时中断没起作用,进不了中断。
回复 支持 反对

使用道具 举报

该用户从未签到

2

主题

5

帖子

0

新手上路

Rank: 1

积分
20
最后登录
2017-12-18
发表于 2017-12-18 21:26:59 | 显示全部楼层
我的也是进不了中断,不知道你是怎么解决的
回复 支持 反对

使用道具 举报

该用户从未签到

0

主题

3

帖子

0

新手上路

Rank: 1

积分
12
最后登录
2018-7-18
发表于 2018-7-17 08:25:25 | 显示全部楼层
问题解决了吗?0xF400-0xFFFF保护后,APP程序的中断向量也在这段地址内,如何进行写操作的?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-9-11 10:03 , Processed in 0.103224 second(s), 26 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表