• nrf52832 开发板入手笔记:资料搜集


    前言

    • 最近翻箱,发现了两块几年前买的 NRF52832 与 NRF52840 的开发板,打算搭个 BLE 的开发环境

    • NRF52832 与 NRF51822 之前用过, NRF52840 没有用过,好像是 BLE4 与 BLE5 的区别吧

    相关介绍

    • 除了开发板,最重要的还是资料,至少需要了解开发板的原理图,这部分查找了一下,终于从网盘里面找了出来,之前购买开发板时,卖家把资料以网盘的方式发了过来,所以资料的【备份】确实很有必要。

    • 我还是想多从 官方了解更多,比如假设我只拿到了一个带原理图的开发板,如何一步步让它工作起来,熟悉各个模块,资料准备、环境搭建、工程编译、下载,各个功能的调试

    • nrf52 系列,有较大的 Flash 与 RAM 空间, nrf51 系列资源较少,可能主流是 nrf52 系列了

    • 之前用了 nrf52832,做蓝牙主机,手机可以配置一些数据,如 阿里云 MQTT 的三要素,现在想基于之前做的,搞个蓝牙通信配置的功能出来,现在常用的打印机、共享单车锁、智能插座等,都支持蓝牙配置。

    • 蓝牙是近距离通信,但是低功耗、无线,这个最大的优势,如果再让它连接 WIFI 或者 4G 这样的模块,就可以搞定 远距离通信,近距离用于参数配置

    资料收集与搜集

    蓝牙 sdk

    • nordic 芯片本身没有 蓝牙的协议栈,这个协议栈,比如蓝牙从机、蓝牙主机等,Nordic 以 bin 文件的形式提供,这就需要 nrf52832 有足够的 Flash、RAM 用于跑蓝牙协议栈,当前 nrf52832 Flash 与 RAM 参数分为两种:
    512 kB flash/64 kB RAM
    256 kB flash/32 kB RAM
    
    • 1
    • 2
    • 建议选择 512 kB flash/64 kB RAM 的 nrf52832(芯片型号后缀),这样用户做的事情就多了起来,否则后期会由于资源不够用,比如 蓝牙 OTA 升级。当然 OTA 升级分为两种,一种是双分区,比较浪费分区,但是靠谱,一种是单分区,升级出了问题,比如升级的固件有问题,就变砖,可能需要有线升级,OTA 升级部分,后面专门写篇文章记录

    • nrf52832 如果需要蓝牙功能(肯定需要开启,否则买来当普通 MCU 浪费成本),就去官方下载 相应的 SDK, SDK 下载地址:

    • https://www.nordicsemi.com/Products/Development-software/nRF5-SDK/Download

    • 下载前,可以简单看一下,是否支持自己的芯片,当前最新的版本支持 NRF52832,就下载最新的版本

    在这里插入图片描述

    在这里插入图片描述

    开发工具

    • 记得之前是 J-Link + Keil MDK 的开发方式,需要安装 Keil 的 pack 包,当前买开发板时,顺便买了一个调试工具,J-OB,还没有用,后面搭建好工程就开始使用

    • 首先安装 Keil MDK,这个开发 MCU 单片机,比如 STM32,是经常使用的

    • NRF 的工具:用于烧写 蓝牙协议栈

    • 蓝牙抓包工具,买了一个,还没有用起来,后面用起来再说,主要是调试蓝牙协议,比如通过蓝牙发送一些自定义的数据包。

    • 其他的工具:需要时再整理吧,我当时自己使用 Android Studio 写 BLE 的通信小程序

    • nRF Connect,之前没有用到,现在打算用一下,相关的地址: https://www.nordicsemi.com/Products/Development-tools/nRF-Connect-for-Desktop/Download#infotabs

    • nRFgo Studio,之前用来烧写 蓝牙协议栈,https://www.nordicsemi.com/Products/Development-tools/nrfgo-studio/download,好像被 nRF Connect 代替了

    小结

    • 记录一下 nrf52832 开发板入手的一些操作笔记

    • 工欲善其事必先利其器,先准备好必要的软件与资料,这样开发调试起来会快很多

  • 相关阅读:
    基于jenkins进行定制化开发
    SpringBoot中使用MySQL存用户信息, 日志的使用
    软件测试/测试开发丨ChatGPT在测试计划中的应用策略
    idea自动导包操作步骤
    鼠标维修笔记
    权限 chmod
    正则表达式——^的两种用法
    ARM功耗管理之唤醒源与组合唤醒源
    通过U盘重装Win10教程图解
    HashMap 为什么线程不安全?
  • 原文地址:https://blog.csdn.net/tcjy1000/article/details/134087044