折腾了一个星期,终于在CSR8615上基本实现了配对、来电接听、挂断电话、音量加/减等功能,算是对CSR8615蓝牙芯片功能调试有了一个非常基础的简单的认识。因此,有必要写一个简单的总结了。

一.    背景知识:随着智能无线终端如智能手机、平板电脑的快速普及,与之相应的蓝牙无线音频产品借其东风,而进入快速发展的快车道,如蓝牙无线耳机、蓝牙无线音箱、蓝牙无线音响等。而在这些产品背后的蓝牙解决方案也有很多,如CSR,Broadcom,MTK,创杰(ISSC)、OVC等,这些蓝牙解决方案各有优缺点,但在蓝牙音频方面应用市场占有率、性价比比较高,且品质性能稳定的,当数CSR。CSR是一家什么公司呢?它是一家坐落于英国剑桥(看清楚哦,是剑桥哦,妥妥的英伦风哦,系出名门,贵族典范),基于其Bluecore提供先进的蓝牙软硬件解决方案,全球领先的蓝牙技术提供商。
CSR 86XX系列蓝牙芯片支持编程及工具ROM config两种方式进行开发。我们今天的大猪脚---CSR公司的老戏骨8615只支持ROM config方式,也就是说,我们只需用pc端的蓝牙配置软件就可以进行全套的蓝牙功能开发工作了。这么说来,貌似很简单涅?Come On,大家一起来,一起High起来,龙岗的兄弟在哪里?宝安的美女在哪里?一起来,动驰…动驰……

二.    配置调试工具简单介绍:
1.    BlueCore Persistent Store :CSR蓝牙配置工具,直接使用16进制数据的方式详细显示蓝牙芯片每一个配置项,各个配置项(PS Keys)详见文档CS-212778-AN-1.pdf。该工具通过修改PS Keys设置芯片各个参数。工具支持直接读写。作为一个工程狗,没图我说个JB,为了提升这篇文章的逼格,上图是一个很重要方式。

2.    CSR8600 ROM Series Configureation Tool:CSR86XX系列蓝牙芯片可视化配置工具,界面直观,容易理解掌握。配置完毕后通过write device写入配置,可通过open from device读取芯片当前配置。

三.    项目功能简述:
今天我们这个项目,乐视超级自行车的头机模块,就是在7731作为主控芯片,实现通讯、娱乐、传感器检测等传统功能之外,还要再接入CSR8615芯片,把头机模块作为一个蓝牙音箱/耳机来使,让你可以一边骑自行车,一边听音乐、打电话。对来自互联网企业的兄弟,我一向存有一颗敬畏之心。因为他们一贯秉承着没有想不到,只有做不到的理念来开发产品。在高薪股份期权的刺激之下,他们干起事来也打足了鸡血,什么连续加班啊,通宵啊全不在话下。

四.    调试流程
1.    安装BlueCore Persistent Store及CSR8600 ROM Series Configureation Tool这两个工具及pc端USB-SPI驱动。

2.    将调试板及USB-SPI相连,一头接入PC,另一头连接至CSR8615的SPI通讯口,总共需连接5根线(SPI_MOSI,SPI_MISO,SPI_CS,SPI_CLK,GND)。

3.    给CSR8615上电,使用BlueCore Persistent Store工具确认pc与8615芯片通讯成功。

4.    由于我们的项目使用EEPROM存储数据,Pc端使用cmd执行命令e2cmd info,检测EEPROM工作是否正常及容量大小。在我的电脑中执行结果如下:
C:\Program Files\CSR\BlueSuite 2.5.8>e2cmd info
e2cmd, version 2.5.8.667 Release
Copyright (C) 2007-2014, Cambridge Silicon Radio Ltd.

Device select - 0x00
Address mode - two bytes
EEPROM size - 64kbits

5.    擦除EEPROM:e2cmd fill 0
C:\Program Files\CSR\BlueSuite 2.5.8>e2cmd fill 0
e2cmd, version 2.5.8.667 Release
Copyright (C) 2007-2014, Cambridge Silicon Radio Ltd.

Fill successful

6.    写入头文件header(初始化EEPROM):e2cmd header
C:\Program Files\CSR\BlueSuite 2.5.8>e2cmd header
e2cmd, version 2.5.8.667 Release
Copyright (C) 2007-2014, Cambridge Silicon Radio Ltd.

Header written successfully

7.    写入psr系统配置文件,用pstool烧录eeprom。打开bluecore persistent store工具的pstool,直接选择file/merge,分别选择CSR8600_system.psr、CSR8615_config_H13099v5.psr、pb-169.psr这3个程序。

8.    使用CSR8600 ROM Series Configureation Tool工具进行具体配置,实现各个功能。

五. 注意事项:
1. 给CSR8615上电后,需要测量对应PIN脚是否有输出1.35V,1.8V电压,以确认8615是否已经工作正常。

2. CSR8615的SPI_PCM脚要接高电平。由于CSR8615的SPI_MOSI,SPI_MISO,SPI_CS,SPI_CLK脚为复用脚,将SPI_PCM脚接高,其他几个引脚才是spi模式。此时pc机才能和8615进行spi通讯。

3. EEPROM的上拉电阻一定要接,否则会出现数据无法写入的状况。

4. mic电路请按如下接法,在调试中由于电路没有按如下接法,导致mic声音一直出不来:

CSR8615蓝牙芯片功能调试入门笔记---上相关推荐

  1. MIUI开启开发者模式以及使用chrome调试移动设备上打开的网页

    想利用chrome自带的调试功能调试小米3上打开的页面. 需要以下配备 1 PC上装有chrome 2 小米上装有chrome(PC上chrome版本最好与小米上的chrome版本一致.) 3 小米U ...

  2. ROS Noetic入门笔记(二)ROS Noetic创建工作空间和功能包

    ROS Noetic入门笔记(一)在ubuntu20.04中安装ROS Noetic并简单测试 ROS Noetic入门笔记(二)ROS Noetic创建工作空间和功能包 ROS Noetic入门笔记 ...

  3. 学海灯塔新增学习笔记上传功能

    又经过一天的努力,学海灯塔学习笔记上传功能实现.欢迎访问我们的学海灯塔 学习笔记这一模块的功能和课程文件类似,由同学们上传自己的学习笔记,用户可以下载,并且可以对笔记进行打分,后期将增加文件讨论功能. ...

  4. Koa2入门笔记 (上)

    感谢一个不打荣耀的大神教会我使用Koa写接口 简单快速撸懂MySQL+Koa2_哔哩哔哩_bilibili 再也不必害怕后端不能沟通了,学会了还可以自己做喜欢的项目来玩 这里就是课堂笔记 哎呀!!真是 ...

  5. React.js入门笔记

    # React.js入门笔记 核心提示 这是本人学习react.js的第一篇入门笔记,估计也会是该系列涵盖内容最多的笔记,主要内容来自英文官方文档的快速上手部分和阮一峰博客教程.当然,还有我自己尝试的 ...

  6. Python基础入门笔记(二)

    前言 本文主要为 Python基础入门笔记(一)内容的补充. 一.迭代器和生成器 1.1 Python迭代器 迭代器是一个可以记住遍历的位置的对象. 迭代器对象从集合的第一个元素开始访问,直到所有的元 ...

  7. ROS入门笔记(七):详解ROS文件系统

    ROS入门笔记(七):详解ROS文件系统 文章目录 01 Catkin编译系统 1.1 Catkin特点 1.2 Catkin工作原理 1.3 使用`catkin_make`进行编译 02 Catki ...

  8. ROS入门笔记(六): ROS系统架构

    ROS入门笔记(六): ROS系统架构 文章目录 1 ROS系统架构 1.1 文件系统(重点) 1.2 计算图 1.3 开源社区 1 ROS系统架构 1.1 文件系统(重点) 文件系统:主要指在硬盘里 ...

  9. 网上下的--ARM入门笔记

    简单的介绍 打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方. 为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所以叫笔记而不是文章,是因为它们完全是本人个人学习经验的总结,而这 ...

  10. 深度学习入门笔记(五):神经网络的编程基础

    欢迎关注WX公众号:[程序员管小亮] 专栏--深度学习入门笔记 声明 1)该文章整理自网上的大牛和机器学习专家无私奉献的资料,具体引用的资料请看参考文献. 2)本文仅供学术交流,非商用.所以每一部分具 ...

最新文章

  1. 身份证号码对应地区-官方措辞:行政区划代码
  2. php获取网页标题接口,PHP获取网页标题的3种实现方法代码实例
  3. 使用计算机中的库教案,计算机应基础全部教案.doc
  4. Windows 2008远程桌面配置多用户登陆的方法
  5. SpringMVC项目配置全过程详解
  6. Android开发之打开指定APP | 打开APP任意页面的方法
  7. 开源硬件 专利_标准和开源:为什么专利待遇不同?
  8. 用Windows Live Writer客户端写51CTO博客
  9. Andirod——网络连接(HttpURLConnection)
  10. timezone java_如何将Java日期转换为特定的TimeZone格式
  11. 游戏帧数对比测试监控软件,8款游戏帧数对比实测 5800X多数超越11900K
  12. 文本转语音的接口(开放免费)
  13. python pytz模块_python pytz
  14. 交管123缴费显示代理服务器异常,交管12123服务异常怎么回事?交管12123网络请求失败怎么办...
  15. excel 操作技巧
  16. 98% after emitting CopyPlugin问题
  17. 指数爆炸问题的基本思路
  18. redefinition of class解决
  19. 【考研经验】19年华东师范大学计算机专硕考研经验(初试+复试)分享!专业课140分!...
  20. 使用 KubeKey 快速安装 Kubernetes 集群

热门文章

  1. PDF格式分析(七十九)——图章、墨迹注释(Stamp、Ink)
  2. mysql_front安装_MySql5.5安装步骤及MySql_Front视图配置
  3. 利用mongodb实现分布式WEB图片存储
  4. 测试专业名词总结UT,IT,ST,UAT
  5. 2018年中山大学计算机考研初试经验贴
  6. 蜂窝网络版苹果iPad mini 6不支持毫米波5G
  7. Astah 三分钟学会躺着画UML时序图
  8. 总线之地址总线、数据总线、控制总线
  9. bat批处理复制指定目录及其子目录的指定后缀文件到指定文件夹
  10. NAT穿透技术、穿透原理和方法详解