MC9S08做bootloader升级时的配置方法

MC9S08做bootloader升级时的配置方法

使用MC9S08DZ60芯片举例:

bootloader程序的配置:

总共分两个步骤:

  1. 配置FFBD和FFBF寄存器。

在*.c文件中,加入如下语句:

const byte NVPROT_INIT @0x0000FFBD = 0xFB;
const byte NVOPT_INIT @0x0000FFBF = 0x3C;

NVPROT寄存器如下:

这里配置的是:0xE800-0xFFFF保护,这里作为bootloader区域。
这个可以任意配置。

NVOPT寄存器如下:

这里是要把FNORED打开,即向量重定向打开。如果不打开这个,那么跳到主程序时,中断函数无法使用。

修改完这一步,编译后,s19文件就会多出对这两个寄存器的配置。
(左边是原s19文件,右边是重新编译后的s19文件)

有的时候,会发现编译后,FFBD这个寄存器,还是0xFF的数值,没有修改。那么原因可能如下:

在“hcs08_eeprom_api.c”文件中,会有FFBD这个寄存器的写入操作。(当初这个问题让我迷惑了好一阵,最后还是查project.map文件,才找到这个定义的。)如下:

把它屏蔽了,然后编译,就可以了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值