nRF52xx_BLE
文章平均质量分 50
ble 蓝牙芯片
深圳-剑影
工作内容是物联网方向。熟悉蓝牙BLE,WIFI,NB-IOT,ST单片机等平台。期望交到更多的技术好友,一起提升技术水平。
积累沉淀,星星之火可以燎原.....
展开
-
nRF52笔记(26)QSPI接口液晶显示屏
qspi LCD显示屏原创 2022-12-01 10:34:16 · 4818 阅读 · 8 评论 -
nRF52笔记(25) sd_power_system_off() 返回ERR问题
如果系统在Debug(RTT打开)模式下,调用sd_power_system_off()将会返回NRF_ERROR_SOC_POWER_OFF_SHOULD_NOT_RETURN。这往往会导致check_err_code报错导致系统复位无法进入低功耗状态。这个问题是属于正常表现,如果需要对功耗进行测试,只需要禁止Debug或者拔掉JLINK即可。实际工程中可以通过以下方式处理低功耗的问题,代码如下:void power_off(void){// Prepare wakeup buttons.bsp原创 2022-01-13 14:34:21 · 877 阅读 · 0 评论 -
nRF52笔记(24) 启用浮点运算 FPU 功耗异常解决方法
原因因为用了算法工程师的算法,发现52832电流突然飙升到MA级别,后来排除问题,发现只要启用浮点,电流就上来了,接下来就是查看如果让FPU正常,资料搜索无数,发现下面的方法解决了问题方法初始化启用fpu中断NVIC_SetPriority(FPU_IRQn, APP_IRQ_PRIORITY_LOW);NVIC_EnableIRQ(FPU_IRQn)在在中断中清除fpscr#define FPU_EXCEPTION_MASK 0x0000009Fvoid FPU_IRQHandler原创 2021-11-30 16:16:23 · 911 阅读 · 0 评论 -
nRF52笔记(23) 软件设置VDDH电压
1 先看指标:如果是高压供电可以最高支持到5.5V;使用方法:1:硬件连接2:软件设置代码#define UICR_REGOUT0_VOUT_1V8 (0UL) /*!< 1.8 V */#define UICR_REGOUT0_VOUT_2V1 (1UL) /*!< 2.1 V */#define UICR_REGOUT0_VOUT_2V4 (2UL) /*!< 2.4 V */#define UICR_REGOUT0_VOUT_2V7 (3UL) /*!<原创 2021-05-07 17:27:52 · 975 阅读 · 0 评论 -
nRF52笔记(22) uart升级代码
1平台1.BootLoader工程需要修改的地方:1.1修改串口端口号:位置在这修改串口的端口号,要保持对应。1.2 修改流控为0:1.3 修改波特率为9600(实测115200)也可以:或者1.4 修改pc-nrfutil 文件内的pc-nrfutil-master\nordicsemi\dfu\dfu_transport_serial.py文件内的修改波特率和流控为自己bootloader内设置的一样。然后在dos窗口输入以下指令:Python setup.py bu原创 2021-04-23 16:44:39 · 740 阅读 · 1 评论 -
nRF52笔记(21)power reset device
1 nrf52832 复位的原因(1)供电引起的复位原创 2020-11-03 09:51:08 · 1363 阅读 · 0 评论 -
nRF52笔记(20) 主机发现从机服务的过程
1 平台条件1:硬件平台:nrf528332:软件平台:sdk172 流程(1)协议栈初始化有主机/从机事件(2)ble主事件存在主机事件(3)主机事件里有连接,这里开启发现服务(4)初始化服务的discover(5)添加主机发现事件(6)在这里面会有特征值的发现回应(7)发现完成后会得到特征值句柄...原创 2020-11-02 17:31:16 · 1214 阅读 · 0 评论 -
nRF52笔记(19)sd_ble_gap_scan_start主机扫描的使用
1平台条件《1》软件平台:nRF5_SDK_17.0.0_9d13099《2》硬件平台: nRF52833/nRF528402 扫描代码函数// 扫描参数 初始化uint8_t m_scan_data[255];ble_data_t const m_scan_buf ={ .p_data =m_scan_data, .len =BLE_GAP_SCAN_BUFFER_MIN //31 Byte};const ble_gap_scan_params_t m_scan_params原创 2020-09-14 11:32:23 · 1533 阅读 · 3 评论 -
nRF52笔记(18)广播设置Longrange
1概述Long Range 是BLE 5.0中新增加的特性,主要是通过扩频的方式,提高了天线接收的灵敏度,同时将最大的发送功率,从4.0/4.1/4.2中的10mW增大到5.0的100mW。相对于BLE来说,确实增加了通信的距离。2:代码编程#include "ble_adv.h"#include "ble_advdata.h"#include "app_error.h"uint8_t beacon_info[23] = { 0x02, 0x15,原创 2020-09-03 14:23:38 · 2779 阅读 · 1 评论 -
nRF52笔记(17)出现nrf_erratas.h :no such file or directory
可以加入QQ群:687360507与大伙沟通交流,技术在于分享而进步原创 2020-08-28 11:22:19 · 1274 阅读 · 0 评论 -
nRF52笔记 (16)传输速率测试
传输速率测试和参数的修改:网友文档 :地址原创 2020-08-05 10:24:17 · 1636 阅读 · 0 评论 -
nRF52笔记(15)keil 仿真查看变量实时变化
keil变量实时查看原创 2020-04-30 15:30:35 · 1923 阅读 · 1 评论 -
nRF52笔记(14) 软件模拟I2C
*本人的联系方式:qq1297311998,可以做相关的嵌入式单子,如有需要可以联系1 i2c理论1.1 i2c时序图启动信号: SCL为高电平的时候,SDA由高电平向低电平跳变。结束信号:SCL为高电平的时候,SDA由低电平向高电平跳变。应答信号:I2C总线上的所有数据都是以8位字节传送的,发送器每发送一个字节,就在时钟脉冲9期间释放数据线,由接收器反馈一个应答信号。应答信号...原创 2020-04-17 12:01:15 · 2592 阅读 · 7 评论 -
nRF52笔记(13)软件模拟spi 4种模式
转载地址2 .h文件#define SET_GPIO(A) NRF_GPIO->OUTSET = (1UL << (A)) #define CLEAR_GPIO(A) NRF_GPIO->OUTCLR = (1UL << (A))#define READ_GPIO(A) NRF_GPIO->IN&(1<<(A))#d...转载 2020-04-16 16:30:35 · 1619 阅读 · 0 评论 -
nRF52笔记(12) 详解蓝牙空中升级(BLE OTA)原理与步骤
本文属于转载,如有请联系删除:qq:1297311998官方网址如何实现BLE OTA?什么叫DFU?如何通过UART实现固件升级?又如何通过USB实现固件升级?怎么保证升级的安全性?什么叫双区(dual bank)DFU?什么叫单区(single bank)DFU?什么叫后台式(background)DFU?本文将对上述问题进行探讨。DFU过程中涉及的所有操作步骤所对应的脚本都放在百度云盘...原创 2020-04-03 14:44:44 · 1462 阅读 · 0 评论 -
nRF52笔记(11)ble绑定和配对
主要修改一下几个点:用官方历程,主要修改在一下1. erase_bonds=false; 绑定一定要要的2. 在advertising_init 中: ble_adv_modes_config_t options = { BLE_ADV_WHITELIST_DISABLED, ...原创 2020-03-13 11:54:18 · 3194 阅读 · 0 评论 -
nRF52笔记(10)官网学习网址
1: 平台sdk和dk详细说明2:官网网址3:nrf提问社区原创 2019-12-06 17:29:18 · 867 阅读 · 1 评论 -
nRF52笔记(9) app可以写入超过20字节
1.0gatt 交换exchange网址原创 2019-12-06 17:11:44 · 497 阅读 · 0 评论 -
nRF52笔记(8) IIC读取sht30温湿度传感器
1、平台的条件1.1 软件平台:sdk14.21.2 硬件平台: nrf528322 说明:只是介绍代码怎么使用,直接点QQ: 1297311998 ,如果有什么问题,请高手不吝赐教2、nrf模拟 iic2.1 添加.h文件#ifndef IIC_H#define IIC_H#include <stdbool.h>#include <stdint.h&...原创 2019-11-30 11:09:35 · 2533 阅读 · 3 评论 -
nRF52笔记(7) gpiote中断下按键
1、平台的条件1.1 软件平台:sdk14.21.2 硬件平台: nrf52832说明:只是介绍代码怎么使用,直接点QQ: 1297311998 ,如果有什么问题,请高手不吝赐教2 使用步骤2.1 添加以下文件2.2 添加一个定时器,用于消抖、短按和长按static uint8_t key_timeout_enable = 0;APP_TIMER_DEF(check_key_...原创 2019-11-30 10:40:00 · 1678 阅读 · 0 评论 -
nRF52笔记(6) uart的使用
1、平台的条件 1.1 软件平台:sdk14.2 1.2 硬件平台: nrf528322 说明:只是介绍代码怎么使用,直接点QQ: 1297311998 ,如果有什么问题,请高手不吝赐教2、如何使用2.1 添加文件nrf_drv_uart.c(路径:components\drivers_nrf\uart)和app_uart.c(路径:components\libraries...原创 2019-11-30 09:47:46 · 2893 阅读 · 0 评论 -
nRF52笔记(5)sniffer 抓包
转载: https://blog.csdn.net/liurunjiang/article/details/102744341原创 2019-11-27 09:55:07 · 3628 阅读 · 1 评论 -
nRF52笔记(4) flash操作函数
一、条件1、软件:sdk14.22、硬件:52832二、函数的调用步骤1.注册一个回调函数,由于读、写函数涉及到协议栈内部的事件,所以为了观察是否成功static bool write_success=0; // 写入成功判断标志位void call_by_sys_flash_manage(uint32_t sys_evt,void * p_context){ if(NRF_...原创 2019-11-15 17:10:26 · 1323 阅读 · 0 评论 -
nRF52笔记(3) 软件库pwm的使用
一、前提条件1:软件:基于sdk14.2.02:硬件:nrf528323:官方连接:https://infocenter.nordicsemi.com/index.jsp?topic=%252Fcom.nordic.infocenter.sdk5.v14.1.0%252Fnrf52810_user_guide.html说明:使用的是nordic提供的库函数,其实是软件模拟pwm,二、使用...原创 2019-11-08 15:10:10 · 4794 阅读 · 0 评论 -
nRF52笔记(2) ble_app_uart整体代码架构
一、前提条件1:软件:基于sdk14.2.02:硬件:nrf52832二、整体代码框架以下是官方协议栈的整体框三、具体介绍以下几个部分因为nordic的官方sdk两部分:官方封装的协议栈 和应用程序,官方封装的是看不到的,3.1 介绍ble_stack_init的内容3.1.1 在nrf_sdh_enable_request()函数里面,会看到注意点:在这块我们往往要去根据板...原创 2019-11-08 10:22:51 · 2627 阅读 · 0 评论 -
nRF52笔记(1) ADC使用
nrf52832 adc使用1:adc输入范围的计算需要注意点:(1):选择输入电压,有以下几种(2):增益大小,增益范围有以下几种2:对输入参考电压的计算计算公式如下:Input range = (± 0.6 V or ±VDD/4)/GainInput range = (VDD/4)/(1/4) = VDDInput range = (0.6 V)/(1/6) = 3.6...原创 2019-11-02 11:48:03 · 4854 阅读 · 1 评论