打印
[工具和软件]

IAR环境下Flash loader工作原理

[复制链接]
899|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
vigous1|  楼主 | 2015-3-28 11:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

  先说说Flash Loader这个小程序,IAR调试器C-SPY默认是通过它来完成数据传输、Flash 擦除和烧写等任务,当然前提是得选中Options->Debugger->Download选项下的“Use Flash Loader”,如下图:

下面我们说说Flashloader的工作原理,其实Flashloader是IAR为C-SPY调试器开发的一个可执行小程序(有点类似Bootloader),IAR在调用调试器的时候需要先将Flashloader可执行文件下载到目标芯片的RAM中

图1

然后再将要下载的文件也放到RAM缓存中

图2

之后C-SPY通过指令启动Flashloader程序,它读取编程数据再将其写入到目标芯片的Flash之中去,完成目标芯片Flash的擦写和编程

图3

最后清除释放RAM区Flashloader程序和编程数据,启动新的程序运行。

图4

    如上所示即为Flash loader的工作原理,其实仔细分析过来你会得到一个惊天秘密,即大多数在线下载工具在烧写目标芯片的flash时都是通过这种方式的,可能通过表象看到的是二进制文件是直接下载到flash中去了(无论是片上还是片外flash),但是真正的下载过程往往不是表面看上去那么简单。所以今天说说这个的一个原因除了发泄自己的兴奋之情外也是希望通过这么一个例子告诉大家深究某些东西原理的重要性。


相关帖子

沙发
598330983| | 2015-3-29 00:09 | 只看该作者
所以今天说说这个的一个原因除了发泄自己的兴奋之情外也是希望通过这么一个例子告诉大家深究某些东西原理的重要性。

使用特权

评论回复
板凳
598330983| | 2015-3-29 00:10 | 只看该作者
最后一句亮点

使用特权

评论回复
地板
FSL_TICS_ZJJ| | 2015-4-2 11:40 | 只看该作者
非常感谢你关于IDE的经验分享 !

使用特权

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

本版积分规则

88

主题

427

帖子

15

粉丝