找回密码
 立即注册

使用微信账号登录

只需一步,快速开始

CSR8670的source程序如何进行DFU

2020-5-14 18:59| 发布者: wechat| 查看: 1614| 评论: 1|来自: 微信公众号

摘要: 本文主要讲解在ADK_CSR867x.WIN4.4.0.17下,验证CSR8670 source程序的DFU功能,用的是DFUWizard。第一步先要修改默认的source程序,以便能够使其触发进入DFU模式。进入DFU的模式有多种,可以通过HID命令的方式,也可 ...

本文主要讲解在ADK_CSR867x.WIN4.4.0.17下,验证CSR8670 source程序的DFU功能,用的是DFUWizard

第一步先要修改默认的source程序,以便能够使其触发进入DFU模式。进入DFU的模式有多种,可以通过HID命令的方式,也可以以按键触发的方式,其函数就是BootSetMode(0),如以下就是在默认source基础上,通过长按PIO11两秒使其进入DFU模式的代码(借用了进pairing模式的事件,仅供测试用,实际使用中不可取):

接下去擦除CSR8670FLASH,然后用IDE把程序下载到CSR8670中。

pstoolmerge以下两个psr文件:

同时修改以下两个pskey

i.             PSKEY_USB_DFU_MODE&013E0000。默认为0001

ii.             PSKEY_USB_DFU_PRODUCT_ID&02CBffff。默认为fffe

 

然后重启板子,触发使设备进入DFU模式,就能在设备管理器中看到设备了:

说明CSR8670进入了DFUmode

 

接下去制作DFU文件。

我们新建一个psr文件,把需要修改的pskey写到文件中:

以上第一条是把device name改成“qtil Audio Dongle”,然后第二条必须添加&f002 = 0000 0000 0000 1000(1000表示CSR86700200表示BC5MM)

APP程序的升级,需要找到source工程下一个叫image.fs的文件,升级后这个文件会将之前老的程序覆盖。将image.fs和刚刚新建的psr文件一起拷贝到bluesuite文件夹下:


完成后用bluesuite下的dfubuild工具打包:

命令的说明如下:

i.             其中-uv为厂商IDCSR的是0x0a12

ii.             -up为产品IDCSR的是0x0001

iii.             -f为输出的DFU文件名称,如test02.dfu

iv.             -h为需要更新的app文件,如image.fs

v.             -s为需要更新的stack文件,如stack_unsigned.xpv

vi.             –p3psr更新参数:1、这个参数有3个子参数,其中第一个不需要,填为.,第二个是stack psr,优先级较高,第三个是apppsr,需要更新的就填写实际的psr文件名,不需要更新的就填为.,以空格隔开,如 -p3. stack.psr .,这里就只更新stack psr

完成后生成升级文件:

接下去进行升级。

打开bluesuite下的DFUWizard工具:

按界面提示操作即可完成升级。

这里需要说明一点,以上演示并没有涉及到加密KEY的部分,如果需要加密,则需要插入key,这些操作请参考CSR的文档,如CS-101792-AN-1

来源:https://mp.weixin.qq.com/s/-hr77xVJxjsWk5TwoBzkoQ

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

2

路过

雷人

握手

鲜花

鸡蛋

刚表态过的朋友 (2 人)

相关阅读

发表评论

最新评论

引用 Dark_moon 2020-10-2 08:24
楼主辛苦了,感谢分享!

查看全部评论(1)

小黑屋|手机版|我爱蓝牙网 - 52Bluetooth

GMT+8, 2024-5-1 19:44 , Processed in 0.142362 second(s), 32 queries , Gzip On, MemCached On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

返回顶部