首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[求助]通过CAN口在线对Flash编程问题

[求助]通过CAN口在线对Flash编程问题

我的方法是这样:当CAN接收到编程指令时,就将执行编程的函数拷贝到RAM中执行。

但问题是:原本在ROM中的程序复制到RAM中运行,它调用其他函数时会跳回ROM中执行,但这些函数已经也拷贝到RAM中(例如CAN的接收和发送函数)。

由于在编程时在ROM中运行的话会很不稳定,所以要到RAM中运行。

请问这个问题如何解决啊??
我用的芯片是
DZ32
其实我本来也是只将擦除和烧写的程序拷到RAM中执行,但我的老大要求将所有烧写的程序(包括CAN的收发程序)一起制作为一个bootloader代码。以后烧写就将bootloader拷贝到RAM中执行烧写,与不使用ROM的代码。
但是bootloader代码中包含的ROM地址的CAN程序,调用CAN程序是就会跳回ROM中,如何才能让bootloader的代码只在RAM中执行啊?
返回列表