ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

一款基于nRF52833的蓝牙开发板的技术方案选型

2021-10-27 13:33:55  阅读:262  来源: 互联网

标签:Daplink 芯片 蓝牙 开发板 封装 bit nRF52833


1、摘要

     最近浏览Micro:bit Educational Foundation | micro:bit,发现他们推出了一个被称之为BBC micro:bit的项目,该项目针对儿童计算机编程教育而开发,可以采用积木方式、Python、JavaSript进行编程,可以看出这是一个非常有意思的项目,经过对此项目的进一步了解后,发现它是采用Daplink(一个ARM公司推出的软件、硬件都开源的调试器项目) + nRF52833(知名蓝牙芯片方案公司Nordic的一颗蓝牙芯片)进行设计,出于对其积木方式编程的兴趣,本人打算Diy一个类似的项目,所以打算设计一个跟micro:bit功能相似的板卡。

       如图1-1是micro:bit的板卡图片。

2、技术方案选型

2.1 micro:bit技术方案回顾

      经过浏览micro:bit官网的资料,找到了micro:bit V2参考设计框图如下:

            如图2-1所示,micro:bit主要有二颗主要的芯片组成:

                1.、Freescale KL27

                2、Nordic Semiconductor nRF52833

       Freescale KL27被称之为接口芯片,它主要用来运行Daplink固件,可以让电脑端的多种IDE(集成软件环境)对目标芯片进行源码调试、代码下载,有关Daplink的资料请自行上网查询。

       nRF52833是单芯片蓝牙SOC,用来运行各种蓝牙协议栈,实现各种基于蓝牙的无线通信需求。

        使用Daplink进行ARM芯片开发的优点:

  1. 通过使用ARM公司的CMSIS-DAP协议可以实现源码级的软件调试功能;
  2. Daplink虚拟了一个CDC串口,可以将目标板通过串口输出的log信息发送到电脑端;
  3. Daplink在电脑端虚拟出了一个U盘,可以直接将IDE编译出的目标程序的16进制格式的文件拖拽到U盘来下载程序到目标板;
  4. Daplink实现了一个WebUSB驱动,通过浏览器就可以将文件拖拽到U盘,因此可以将云端的编译器输出的16进制目标文件直接下载到目标板中,这个功能对于针对中小学的软件编程教学平台特别有用,可以省去在本地部署开发环境,有效地降低教学成本

2.2 自定义蓝牙开发板的方案选型

2.2.1 Daplink接口芯片的选型

        通过访问以下网站,查找相关的资料:

          https://daplink.io/

          https://github.com/armmbed/mbed-HDK          https://github.com/ARMmbed/mbed-HDK-Eagle-Projects

          https://github.com/armmbed/DAPLink

       从上述的3个网站中,可以找到Daplink的参考硬件参考设计资料、软件源代码。

       经过消化从这几个网站的关于Daplink的介绍、硬件参考设计和软件包的下载编译测试,我决定采用STM32F103CBT6作为蓝牙开发板中的Daplink接口芯片,选择这颗芯片的理由如下:

  1. 手头有从某宝购买过的基于STM32F103CBT6芯片的Daplink,可以方便我做源码的编译测试;
  2. 目前出现的芯片荒,导致Freescale KL27系列芯片很难买;
  3. 本人多年使用STM32系列的芯片做产品开发,不想去熟悉一款新的芯片的开发环境,这个做过研发的人都懂;

2.2.2 蓝牙芯片nRF52833的选型

        查阅nRF52833官方资料,该芯片有多种的封装形式:

         图2-2-1所示为aQFN封装。

        图2-2-2所示为QFN40封装。

        图2-2-3所示为WLCSP封装。

       从上述的封装可以看出,QFN40封装的输出引脚最少,那么一些需要使用到引脚的一些功能将会受到限制,但因为目前我是要做一款全功能的开发板,那么最好引出所有的芯片引脚,所以QFN40封装的nrF52833芯片暂时就不考虑了。

       从几个芯片的封装来看,抛开QFN40封装后,剩下的二款芯片的封装形式,在业余条件下,采用手工焊接的方式处理都会有一定的难度,焊接的良率无法保证,如果外发采用SMT加工,又受到加工量少、芯片采购困难、开机费贵等因素的影响,所以也让人很纠结。

       经过综合考虑,觉得可以采购一款基于nRF52833的蓝牙模块来降低直接采用芯片进行设计的难度,通过再次查询某宝官网,终于找到了一款基于蓝牙nRF52833的模块,基本信息如下:

       更多的资料,可以访问:https://www.ebyte.com/查询询。

       至此,为了降低开发前期的设计难度,决定采用EBYTE的E73-2G4M08S1E来进行设计。

3、总结

       综上所述,本蓝牙开发板决定采用如下的资源进行设计:

  1. Daplink的接口芯片:STM32F103CBT6;
  2. 蓝牙部分:E73-2G4M08S1E模组;
  3. 固件:GitHub - ARMmbed/DAPLink
  4. Daplink硬件参考设计:https://github.com/ARMmbed/mbed-HDK-Eagle-Projects

       详细开发过程,见后续的开发文档。

标签:Daplink,芯片,蓝牙,开发板,封装,bit,nRF52833
来源: https://blog.csdn.net/arm_fan/article/details/120990583

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有