打印
[资料分享与下载]

飞思卡尔 Kinetis Flashloader 由浅入深(1)

[复制链接]
1098|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
cowboy2014|  楼主 | 2015-12-14 18:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
        在嵌入式开发中,经常要用到Flashloader功能,今天我们就来开始以飞思卡尔Kinetis的Flashloader为例来讲讲,大概需要4~5节,内容比较多,每天掌握一点,不要贪多。今天先简单介绍下Kinetis的Flashloader。
       
        简介
       
        飞思卡尔kenetis设备的flashloader的主要任务就是装载用户固件镜像到Flash,镜像分为两部分:flashloader_loader和flashloader, 在设备复位后,flashloader_loader首先执行, flashloader_loader程序将flaoder镜像从flash拷贝到内存RAM中,此后设备将会从RAM中开始执行flashloader程序。对于飞思卡尔kinetis设备可以通过UART, CAN, I2C, SPI等外设接口以从模式与主机进行交流通信和响应主机的命令,我们常用的固件下载升级就是一个典型应用。Kinetis设备的flashloader总是用命令协议和主机进行通信,主机应用可以查询可用的命令集。
       
        特性
       
        Kinetis Flashloader的主要特性如下:
  •                 支持UART, CAN, I2C, SPI外设接口
  •                 自动检测激活的外设
  •                 UART和CAN外设支持自动波特率设置识别
  •                 所有外设的通用打包协议
  •                 打包错误检测和重发功能
  •                 运行中被flashloader使用的RAM是被保护的
  •                 提供读取设备属性的命令,例如Flash和RAM的大小
       
        支持的命令如下
       
       
        功能描述
       
        内存映射
        Kinetis Flashloader 执行时使用RAM内存映射分布如下
       
       
        需要注意的一点是Kinetis Flashloader 需要的最小内存RAM是16KB,所以片上RAM小于16KB的器件Flashloader将不可用。必须保证RAM大于16KB。
       
        启动过程
       
        Kinetis Flashloader执行时操作过程如下:
  •                 初始化.data和.bss段
  •                 初始化支持的外设
  •                 等待一个外设的开始通信
  •                 对激活外设没有超时退出检测过程
  •                 如果通信被检测到,那么非激活外设将被关闭,然后进入命令阶段。
       
        流程图如下:
       
                                                                                                                                                                                                    


                    

相关帖子

沙发
310116281| | 2017-1-17 12:16 | 只看该作者
我去  有个毛用

使用特权

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

本版积分规则

78

主题

821

帖子

5

粉丝