nRF52832调试

news/2024/10/22 8:39:29/

需要用蓝牙芯片做无线串口,选择使用nRF52832。taobao上买了一个hc-42的小板子自己调试用。

1 第一步,测试板子串口转蓝牙是否正常--正常

2 第二步,烧写程序

将板子上的SWDIO、SWDCLK、VCC、GND都焊线出来,一开始使用ST-LINK,查文档发现不行,只能用J-LINK,后来链接到J-LINK上。在SDK中找例程,编译,烧写失败。再查资料,这个芯片必须先使用nRFgo软件将芯片擦除才可以烧写程序。官网有一个 getting_started_keil.pdf 指导一步一步烧写程序。

3 第三步,验证

一开始太着急,想直接测试蓝牙串口,发现不行,就先选了一个GPIO点灯的。找到hc-42板子上的led灯对应的IO,修改相应的代码,下载,LED可以正常控制,说明基本操作没问题。

4第四步,调试蓝牙串口

SDK默认的工程中,用了O3的优化编译选项,断点找不到位置,需要先改成O0。单步调试代码发现sd_softdevice_enable死循环,百度搜到https://devzone.nordicsemi.com/f/nordic-q-a/18340/device-loops-on-sd_softdevice_enable sdk用的开发版用的32.768kHz的晶振,而自己用的hc-42是32M的晶振,因此需要修改配置,按照如下修改

    nrf_clock_lf_cfg_t const clock_lf_cfg =
    {
        .source       = 0,//from xtal
        .rc_ctiv      = 16,//NRF_SDH_CLOCK_LF_RC_CTIV,
        .rc_temp_ctiv = 2,//NRF_SDH_CLOCK_LF_RC_TEMP_CTIV,
        .accuracy     = 0//NRF_SDH_CLOCK_LF_ACCURACY
    };

编译,加载。可以喝手机正常通信。

nRF52832资料较少,Nordic上的SDK都是按照自己家的开发版搞的。看起来云里雾里。下面记录一下:

首先是SDK版本

  • S112 SoftDevice v6.1.1 
  • S132 SoftDevice v6.1.1
  • S140 SoftDevice v6.1.1 
  • S212 SoftDevice v6.1.1 
  • S312 SoftDevice v6.1.1 
  • S332 SoftDevice v6.1.1 
  • S340 SoftDevice v6.1.1 

S132版本的API对应的是nRF52832的蓝牙。S332版本的API对应的是nRF52832的蓝牙和NFC。其他版本都和nRF52832没关系。

其次是不同的开发版

pca100xx

pca200xx

不同的开发版上面有不同的nRF芯片,只有pca10040开发版使用了nRF52832芯片,因此找程序和工程只能看pca10040的,其他板子都不对应这个芯片。

https://www.nordicsemi.com/Products/Low-power-short-range-wireless/nRF52832

官网资料很多,SDK,各种软件在官网都能下载到

 


http://www.ppmy.cn/news/893807.html

相关文章

22.3.13

1,费解的开关,(性质,思路)2,递归实现组合型枚举(改正,方法)复习其他几种的排列,指数型枚举及优化,排列型枚举及优化; 1,费…

s123

mucus plug hand out:分发 contraction stuffed Chunky bumper uterus Quartz ice chips: 碎冰 obstetrician chubby resent hypothetically fundamentally knapsack dressy-dress 盛装亮相 not much of:算不上 cramp pastry sinister loaner vent crown…

LabVIEW开发惯性测量系统

LabVIEW开发惯性测量系统 惯性导航系统是通过将惯性传感器直接绑定在载体主体上来完成制导和导航任务的系统。所以惯性测量系统主要是动态静态地测试陀螺仪和加速度计的性能。测试点和计算点数众多,对测试速度和精度要求高。基于上述特点,基于虚拟仪器软…

S32软件使用

1.在S32代码编辑区的左侧滑条上右击可快速设置显示行号等设置。 2.在Debug时,可先暂停后,在Expressions菜单栏中修改某个变量的值。

【Nordic】使用nRF52810常见问题

文章目录 问题1:Nordic调用蓝牙协议栈Crash问题问题2:如何使用MDK下载Application和SoftDevice的HEX文件问题3:如何使用JFlash下载Application和SoftDevice的HEX文件问题4:nRF52810如何选择SoftDevice版本问题5:如何使…

nrf52840蓝牙协议栈样例分析

蓝牙SDK的example 文件夹提供了开发BLE的模板工程,它具有通用性,可以为自己开发工程提供参考。打开examples\ble_peripheral\ble_app_template文件夹下的main.c文件,主函数main的内容为: /**brief Function for application main…

NRF52833学习笔记(1)——搭建环境、编译烧写

一、搭建环境 1.1 安装Keil 5 官网下载:http://www2.keil.com/mdk5/ 百度网盘:https://pan.baidu.com/s/1T_eF5NDYeq38bR0cqjiZkw 提取码:562z 1.2 下载SDK 官网下载:https://www.nordicsemi.com/Software-and-tools/Software…

S32K AUTOSAR S32DS工程集成-文件结构

S32K AUTOSAR S32DS工程集成-文件结构 从我的角度来看文件夹的目录,一个作用是能够熟悉autosar文件所在的目录,另一方面大部分的autosar的项目都是采用make的形式,可能也是为了方便编译吧。所以在看到的一些专业的autosar的项目工程里面都是大体相似的。我这里也算是模仿了…