• 十、CSR8670的DFU功能[补充]


    前一篇转载的博文很清楚,全面的介绍了DFU功能的实现步骤。关于DFU功能,你还需要知道以下信息:

    一、image.fs,firmware,loader,psr之间的关系

    图1-1 image.fs示意图

    图1-2 image.fs,stack,loader示意图

     从图1-1可以看出,image.fs主要有VM application和DSP程序构成,以及promots等组成;

    通过VMBuilder,将VM app与firmware(loader和stack)merge到一块,形成最终的可烧录固件。xxx.xpv/xdv都可以单独烧录和下载。

    psr文件时存储在flash中的配置参数,merge.xpv/merge.xdv并不包括psr配置参数。

    二、DFU类型

     DFU主要是功能是便于通过诸如USB,UART,RADIO(OTA)等方式升级应用程序(不是loader)而设计的,如果你的设备依然保留着USB-SPI接口,我想也没有多大必要使用DFU功能吧。一般而言,DFU功能分为两个阶段:

    1、初次下载程序升级包。

    对于新的设备,你需要准备:

    loader.xpv/xdv;

    stack.xpv/xdv;

    image.fs(vm.app, prompts, *.kap,etc);

    app.psr;

    如果希望固件被加密,还需要对loader,stack,image.fs,app.psr进行加密。

    对上述资源进行整合后,通过BlueFlashCmd.exe工具下载(可能必须通过USB-SPI接口)到设备中去,此后设计即具备DFU功能。如果需要更新loader,需要再次重复该过程;

    2、通过DFU功能升级VM application或者stack firmware。

    对于已经具备DFU功能(loader.xpv/xdv已经下载),可以通过USB,UART,RADIO等接口升级vm application, stack,psr配置文件。你只需准备:

    image.fs;

    stack.xpv/xdv(可选);

    app.psr(可选);

    对于USB,UART传输介质,你需要准备通过dfubuild.exe生成xxx.dfu文件即可。

    对于RADIO传输介质,可能需要多做几步操作,生成的xxx.dfu需要进一步转化为xxx.bin文件,具体请参考:CS-328884-UG.pdf

  • 相关阅读:
    VBS修改本机的账号密码
    验证是否为全局编录服务器
    通过CMD命令设置网络参数
    VBS映射网络驱动器 映射网络驱动器
    命令提示符映射网络驱动器
    获得域内包括工作组内的所有计算机及其信息
    VirtualBox安装Redhat9.0
    启动和停止Oracle服务bat脚本
    Vim常用命令
    使用为知笔记客户端发布博客到【博客园】
  • 原文地址:https://www.cnblogs.com/fbli/p/8724377.html
Copyright © 2020-2023  润新知