蓝牙 nRF51822 应用
NRF51822 Eval Kit 用户手册说明书

Waveshare
1.1 PC development environment deployments
WindowsXP or Windows 7 nRFgo Studio v1.14 or higher versions Keil MDK-ARM Lite v4.54 or higher versions J-Link Software v4.52b or higher versions
Multi-protocol 2.4GHz radio 32-bit ARM Cortex M0 processor 128-bit AES co-processor 256kB flash / 32kB RAM Programmable Peripheral
Interconnect – PPI Full set of digital interfaces including:
2. Program descriptions ..............................................................................................4 2.1 SDK ..............................................................................................................4 2.2 Example application download explanations ..............................................4 2.3 How to download and conpile blinky_example ...........................................4 2.4 How to download and compile ble_app_hrs ...............................................7 2.5 Functional descriptions of example programs ............................................8
nRF51822 模块 规格说明书

OHTCOMTechnology Ltd.nRF51822模块规格说明书Datasheet of nRF51822 Modules2015.6.1目录1 简介 Introduction (3)2 nRF51822 M0 BLE模块介绍 specification for M0 Module . 4天线的连接 (7)程序的烧录 (8)表一 nRF51822 M0工作参数 (8)3 nRF51822 M1 BLE模块介绍 specification for M1 Module . 9程序的烧录 (11)表二 nRF51822 M1工作参数 (11)4 History (13)5 联系方式CONTACT US (14)NOTES:If you are customers from overseas, please contact sales@ for quotation and specifications of English version.1 简介IntroductionnRF51822 Mx BLE低功耗蓝牙模块目前包括nRF51822 M0、nRF51822 M1两款。
这两款BLE模块都是以nRF51822为主控芯片,封装不同的模块。
nRF51822 M0模块包含了LIS3DH3轴传感器,与百度手环使用相同的基础硬件,可以用来开发运动手环等穿戴设备。
nRF51822 M1模块单有一片nRF51822芯片,可以选择16kB RAM或者32kB RAM的不同版本,可以用来开发iBeacon、室内定位、穿戴设备,计算机控制等,应用更灵活,满足不同需求。
nRF51822 M0nRF51822 M12 nRF51822 M0 BLE模块介绍specification for M0 ModulenRF51822 M0采用BGA的nRF51822芯片封装并且集成了高低速晶振、LIS3DH三轴传感器,模块尺寸仅为10.5mm*8.5mm*1.5mm,为业界最小封装。
NRF51822-Eval-Kit-用户手册

图 4.
Program SoftDevice
b) c)
下载上层应用。 进入<KEIL path> \ARM\Device\Nordic\nrf51822\Board\pca10001\s110\ble_app_hrs\arm 或<code path>\BLE4.0\nrf51822\Board\pca10001\s110\ble_app_hrs\arm 打开Keil工程文件 这个编译下载的程序即为产品出厂时自带的程序,测试方法请参考上文“开箱检测”章节。
1.2 下载手机端 app
NORDIC官方提供的app可以从苹果应用商店App Store中下载,安卓手机可以从Google Play 下载。 具体方法如下: iPhone:进入App Store 并搜索“nRF Utility ” Android :进入Google Play并搜索“nRF Utility” 注意:目前官方仅支持的机型与app请从以下网址查看: /Products/nRFready-Demo-APPS 如手机不在其中,需要升级到Android 4.3或更换手机。
6
NRF51822 Eval Kit 用户手册
微雪电子
2.5 各程序功能简介
a) 以下所有程序路径为:<code path>\BLE4.0\nrf51822\Board\pca10001 且所有跳线都已连接。 b) 下表中的步骤序号,请参考表格下方的备注栏。 c) 操作涉及步骤②的,下载方法请参考上文“编译下载 ble_app_hrs 测试程序”。 d) 其他的程序下载方法请参考上文“编译下载 blinky_example 测试程序”
核心板介绍:
Core51822参数:
主控芯片:nRF51822 通信距离: 30m (条件: 空旷区域 / 1M速率) 工作频段:2.4GHz 工作电压:2.0V ~ 3.6V 温度范围:-40℃ ~ 85℃ 尺寸:24.5mm x 32.26mm(PCB) 接口: 除P0.26和P0.27外, 所有I/O 接口 排针间距:2.00mm 两侧排针间距:18.00mm 天线:板载天线
NORDIC蓝牙芯片NRF51822说明-文档资料

四、蓝牙协议和应用代码相互分开
1:NRF51822蓝牙协议和应用代码的存储空 间相互分开,互不干扰,客户只需关注
应用代码
应用代码开发,不需花大量的时间去了解蓝 176K
牙协议是如何运行的,只需配置API参数就
可运行起来。
2:TI和CSR都是只提供蓝牙源代码,客户 蓝牙协议
只能在此代码上进行修改、编译程序,把 80K 应用代码和协议混合放在同一空间里,给修
灵敏度
-94dBm -85dBm -82dBm
51822
ARM M0 256/128K ROM 16k RAM
4dBM 0dBM -4dBM -8dBM -12dBM -16dBM -20dBm
LDO 16/4dB 10.5/0dB
RX 13
DC/DC 10.5/4dB 8.1/0dB
RX 9.5
250Kbps 1Mbps 2Mbps
■ CSR:自有16位MCU,需外挂Flash/EEPROM, 无法对产品进行加密,同时增加了相应的成本和 PCB板面积。
9
二、新增功能
■电源管理:除system ON/OFF外,各功能 模块有自己的电源管理,电源管理简单,只 有ON/OFF,有利于降低功耗。
■具有DC/DC 功能: 2.1~3.6V,DC/DC功 能可以让功耗更低。
2
nRF51822功耗/灵敏度
3
nRF51822原装开发系统
原装开发系统包括2部分 1:nRFGo Starter Kit Development Kit (简称nRF6700) 包括2个开发母板,开发调试环境,支持Keil C
2:nRF51822 Development Kit (简称nRF51822-DK) 1个nRF51822 USB dongle接收端 1个nRF51822 PCB模块 1个nRF51822 SMA模块 2个J-Link开发板(烧录、仿真) 5片nRF51822样片
NRF51422和NRF51822产品介绍(极低功耗蓝牙4.0)解读

2:CSR
3:美国博通
一、 MCU
■51822:32位ARM-M0, 256K(Flash)+16K(RAM),用ARM的客户群体非 常多,开发资源也非常丰富。 ■ TI:8位8051内核,决定了在性能上不能很好满足 蓝牙协议的运行,且功耗较高。 ■ CSR:自有16位MCU,需外挂Flash/EEPROM, 无法对产品进行加密,同时增加了相应的成本和 PCB板面积。
nRF51422-ARM Cortex M0
nRF51422:基于ANT和非标(如LE1)标准之间
nRF51422原装开发系统
原装开发系统包括2部分 1:nRFGo Starter Kit Development Kit (简称nRF6700) 包括2个开发母板,开发调试环境,支持Keil C
2:nRF51422 Development Kit (简称nRF51422-DK) 1个 ANT USB dongle接收端 1个nRF51422 PCB模块 1个nRF51422 SMA模块 1个J-Link开发板(烧录、仿真) 5片nRF51422样片
四、蓝牙协议和应用代码相互分开
1:NRF51822蓝牙协议和应用代码的存储空 应用代码 间相互分开,互不干扰,客户只需关注 应用代码开发,不需花大量的时间去了解蓝 176K 牙协议是如何运行的,只需配置API参数就 可运行起来。 蓝牙协议 2:TI和CSR都是只提供蓝牙源代码,客户 只能在此代码上进行修改、编译程序,把 80K 应用代码和协议混合放在同一空间里,给修 改和查找问题带来很大的困难,当产品出现 问题的时候很难判断是应用代码还是蓝牙协议的问题。
nRF51822-DK
nRF51822和nRF24LE1对比
迅联NRF51822蓝牙开发板--进阶教程(1)程序不能运行问题的解决办法

:首先入门必看资料是在讯联给的资料包里面的EK_TM入门上手资料的几个文档。
很
多人不看入门手册或者扫一下就去操作然后碰到问题又来问我,入门手册都有详细步骤。
每天重复回答这些有详细教程的问题我也没那么大精力。
Keil和jlink的一些问题看群文件2015-10月下的两个文件
keil常见问题.txt和烧写出错问题总结.txt
以下再总结一些程序运行不正常的问题。
这里的介绍都以sdk5.1为基础的。
因为协议栈和sdk的配套的。
而不同版本的协议栈大
小不同可能导致后面所说的一些地址问题不同。
这里讲的是sdk5.1sd6.0
一:程序如果下载不成功在驱动什么都装成功的情况下。
可能是以下的几个问题1:keil的烧写算法没设置
2:将板子用Nrfgo全部擦除一下。
3:供编程算法的ram太小,修改大一点。
二:程序烧写成功但是没正确运行。
1:先烧协议栈再烧程序。
2:协议栈要和sdk是配套的。
群文件中2015-8月下有一个对照文件
SDK、NRFGO stiuo、S110S120等和KEIL各个版本的匹配表
2:如果用的是5.1sdk和6.0的sd那么看一下设置是不是正确。
NRF51822 DFU使用笔记

DFU使用笔记BLE空中升级修订历史2017-2-8K[公司地址]目录1. 概述 (1)2. 服务创建 (1)3. 操作流程 (2)3.1下载dfu Bootload (2)3.2准备升级的image (2)3.3执行升级 (2)4. 交互过程 (3)1. 概述DFU(Device Firmware Updates设备固件升级),一般指的是在产品已经发布后,通过某种方式,更改产品的固件,来完成产品的bug修复和新特性的支持。
DFU的方式有很多种,本文档只讨论使用OTA(Over-the-Air空中升级)的方式。
DFU控制器通过BLE将升级程序传输到待升级的设备中,待升级设备将自己完成固件替换,如图1.1为两者角色关系。
一般为手机APP MWV602图1.1 角色关系注:关于DFU Controler,目前使用的是nRF Toolbox工具,现在完成的进度是手机和MWV602完成两者交互过程,并没有完成协议栈分区以及Flash实际程序更新。
由于Flash变更、协议栈以及时间的关系,没有进行下一步工作。
nRF Toolbox是Nordic公司的APP,没有对源码进行任何修改,MWV602的DFU也是从官方移植过来。
蓝牙SIG组织并没有规定DFU的传输协议,由厂商自由发挥,本文档参考的是Nordic 定义的一套升级协议。
2. 服务创建DFU升级服务使用了两个特征值,一个特征值用于传输升级程序,另外一个特征值用于完成整个控制信息,两者缺一不可。
表2.1 特征值要求创建服务后的效果如图2.1所示。
图2.1 dongle发现的DFU服务3. 操作流程3.1 下载dfu Bootload打开DFU工程所在路径:{…}\jm_soc_1.1\Project\prj_dfu\Keil直接下载即可。
3.2 准备升级的image1)获取app的二进制镜像文件,在Keil环境下可添加以下命令生成。
fromelf --bin --output . <outfile.bin><infile.axf>假设生成的文件名称为ble_app_hrs.bin。
Noridc nRF51822 BLE to UART

Gandy Huang
1 Gandy.huang@
Open
• C:\Keil\ARM\Device\Nordic\nrf51822\ Board\pca10001\s110\experimental\bl e_app_uart
2
可以修改蓝牙参数
8
蓝牙的接收数据传输
void nus_data_handler(ble_nus_t * p_nus, uint8_t * p_data, uint16_t length) { //接收入口
// // // // // }
uint32_t err_code = ble_nus_send_string(&m_nus, p_data, length); //发送函数 if (err_code != NRF_SUCCESS) { //如果不成功,需要安排重新发送 } for (int i = 0; i < length; i++) //默认是串口打印出来,这里更改为直接BLE数据返回 { simple_uart_put(p_data[i]); } simple_uart_put('\n');
7
UUID更改
1 打开ble_nus.c 2 更改下面UUID,记得APP也需要同步修改 uint32_t ble_nus_init(ble_nus_t * p_nus, const ble_nus_init_t * p_nus_init) { uint32_t err_code; ble_uuid_t ble_uuid; ble_uuid128_t nus_base_uuid = {0x9E, 0xCA, 0xDC, 0x24, 0x0E, 0xE5, 0xA9, 0xE0, 0x93, 0xF3, 0xA3, 0xB5, 0x00, 0x00, 0x40, 0x6E};
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
蓝牙nRF51822 应用
(基于低功耗蓝牙技术的温湿度传感器节点的设计)
关键字:低功耗蓝牙温湿度传感器nRF51822 SHT11
随着兼容蓝牙4.0标准的智能手机逐步普及,低功耗蓝牙技术也面临着越来越广泛的应用。
本设计采用了nRF51822和SHT11设计了一种基于低功耗蓝牙技术的温湿度传感器节点,能够将节点位置的温度和湿度发送给主机用于显示,可广泛应用于家庭、车间、仓库的温湿度监控。
1.引言
在智能家居和物联网飞速发展的背景下,基于蓝牙4.0标准的低功耗蓝牙(Bluetooth Low Energy,BLE)技术正被逐步地为人们重视。
随着兼容蓝牙4.0标准的智能手机逐步普及,低功耗蓝牙技术也面临着越来越广泛的应用。
本设计采用了基于BLE技术的nRF51822蓝牙SoC芯片和SHT11温湿度传感器设计了一种基于低功耗蓝牙技术的温湿度传感器节点,能够将节点位置的温度和湿度发送给主机用于显示,可广泛应用于家庭、车间、仓库的温湿度监控。
节点采用了低功耗设计,可用一枚纽扣电池供电,实际使用时间可达1年以上。
2.系统结构
本设计的系统结构如图1所示,系统的处理器模块由nRF51822构成,温湿度传感器件采用SHT11,电源采用纽扣电池供电;由处理器模块、温湿度传感器模块、天线模块、电源模块构成的节点与主机通过2.4GHz的低功耗蓝牙信号通信,主机采用智能手机运行信息采集显示的APP。
多个节点可利用应用层协议与主机组成星形网络。
图1 系统结构图
3.硬件电路
温湿度传感器节点硬件的系统构成如图2所示。
图2 硬件系统结构图
3.1 处理器模块
处理器模块选用Nordic公司的nRF51822芯片。
nRF51822是具有CORTEX-M0低功耗内核,支持BLE、Gazell等多协议的低功耗高速率射频收发器的SoC。
其具有高集成度、低成本、处理能力强、低功耗、小体积等优势,非常适合低功耗蓝牙产品的应用。
该芯片具有以下特性:具有Cortex-M0内核,片上256KB FLASH,16KB RAM,片内包含支持BLE协议的2.4GHz射频收发器。
软件可编程输出功率,最高可达+4dBm的输出功率,输出+4dBm功率时,最高工作电流仅为10.5mA。
休眠模式仅为2uA电流。
片内包含10-bit ADC、RTC、TWI、SPI、UART等模块,提供最多32个GPIO,具有16个PPI通道。
nRF51822芯片的外围电路简单,采用单端供电,可以使用片内线性稳压器(LDO),输入电压1.8-3.6V;外接16MHz晶振;并配以相应的射频匹配电路。
电路图如图3所示。
图3 nRF51822电路图
3.2 温湿度传感器
温湿度传感器采用SHT11。
SHT11是瑞士Scnsirion公司推出的一款数字温湿度传感器芯片。
主要特点如下:将温度感测、湿度感测、信号变换、A/D转换和加热器等功能集成到一个芯片上;提供二线数字符串行接口,接口简单,传输可靠性高;测量精度可编程调节;测量精确度高;封装尺寸超小;测量和通信结束后,自动转入低功耗模式。
处理器模块利用二线串行数字接口和温湿度传感器芯片SHT11进行通信。
DATA数据线需要外接上拉电阻,电源与地之间要加100nF去耦电容。
时钟线SCK用于微处理器和SHT11之间通信同步,由于接口包含了完全静态逻辑,所以对SCK最低频率没有要求;二线串行数字接口不兼容I2C,必须按照传器协议工资。
硬件连接如图4所示。
图4 SHT11连接电路图
3.3 电源及外围电路
电源采用纽扣型电池CR2032,系统设有1个按键与1个LED指示灯,用于连接测试与显示通信状态。
电路如图5所示。
系统预留SWD编程调试接口。
系统使用板载PCB天线,有效通信距离可达10米。
图5 电源及外围电路
4.软件设计
系统软件设计是根据BLE协议,在BLE协议栈基础上构建传感器节点应用程序。
蓝牙4.0的BLE协议栈包含两部分:控制器和主机。
协议栈的实现采用分层方式,控制器部分包括物理层、链路层、主机控制接口层;主机部分包括逻辑链路控制及适配协议层、安全管理层、属性协议层、通用访问配置层、通用属性配置层;上层可以调用下层提供的函数来实现需要的功能[3]。
BLE协议栈的结构如图6所示。
图6 BLE协议栈
其中物理层主要定义了通信频率、传输速度、调制方式等;链路层定义了广播状态、扫描状态、数据包格式等;主机控制接口层主要定义了供主机访问控制器统一命令接口;逻辑链路控制及适配协议层主要是为蓝牙低功耗协议栈高层提供面向连接的数据服务,并为高层协议提供协议复用、包的分段和重组、服务质量等功能;属性协议层用来发现、读取、写入与其连接的对等设备的属性;通用属性配置层是利用属性协议层来定义一些处理例程,服务的格式以及它们的属性;安全管理协议,用来定义安全管理的相关协议以及LE设备之间的配对、认证和加密行为;通用访问配置层用来定义一些通用的接口,一些针对不同安全级别的处理程序接口和一些用于用户接口层进行访问的通用格式要求。
4.1 S110 SoftDevice软件包
nRF51822是nRF51系列中的一员,Nordic公司为nRF51系列提供一系列软件支持。
通过使用nRF51设备,可以免费使用蓝牙低功耗以及ANT协议栈中的nRF51应用。
nRF51822的S110 SoftDevice软件包是预编译二进制蓝牙低功耗协议堆栈,集成了低功耗控制器与主机的功能,可独立编程和更新,提供了全功能的API供系统调用。
特点包括:异步和事件驱动SVC的API;运行时保护;GATT、GAP和L2CAP级别API;广播器功能;GATT客户端和服务器;具有少于128kB 的代码和6kB的RAM使用量,为应用程序留有超过128kB的闪存和10kB的RAM;S110SoftDevice
和nRF51822加上nRF51 SDK相互配合,包含全面的蓝牙低功耗配置文件、服务以及示例应用集合。
在使用过程中,只需下载nRF51822的S110软件包及nRF51 SDK并安装,即可在软件中调用相关API 实现系统功能。
温湿度传感器节点唤醒并进行设备初始化后,响应主机的扫描请求,匹配UUID后建立连接成为从机,接收主机服务和特性,并返回存放了温湿度数据的特性值。
之后节点设备断开连接并进入低功耗待机状态。
4.2 温湿度采集
温湿度采集程序包括SHT11的驱动程序,与温湿度采集处理程序。
SHT11的通信协议是厂家自定义的,所以在驱动程序设计时,需要用微处理器GPIO模拟通信协议。
温湿度采集处理程序流程图如图7所示。
图7 温湿度采集程序
4.3 实验测试
实验硬件系统采用基于低功耗蓝牙技术的温湿度传感器节点向主机发送室内温度和湿度数据。
主机采用智能手机安装nRF UART应用,通过UART形式显示传感器节点发送的数据。
实验软件环境采用nRFgo Studio,nRF51 SDK,S110 SoftDevice,Keil MDKARM Lite等软件构成。
实验显示主机能够稳定连接传感器节点并接收显示温湿度数据。
5.结论
本设计采用了基于BLE技术的nRF51822蓝牙SoC和温湿度传感器SHT11设计了一种基于低功耗蓝牙技术的温湿度传感器节点,能够将节点所处位置的温度和湿度发送给主机用于显示,随着智能手机的广泛应用,该设计可应用于家庭、车间、仓库的温湿度监控,具有广阔的应用前景。