1 nrf51822简介
本文的目的是教你如何一步步创建自己的BLE应用程序,包括使用nRF51822芯片创建一个定制的服务。
1.1 最低要求
需要有嵌入式C语言编程经验,以便完全理解本应用手册。
1.1.1 需要的工具
需要一个nRF51822 Evaluation Kit的开发板,另外还需要下载和安装以下软件工具:
• S110 SoftDevice
• nRFgo Studio
• nRF51 SDK
• Keil MDK-ARM
• SEGGER’s J-Link tools
如何把协议栈固件S110 SoftDevice烧录到nRF51822芯片中请参考:《nRF51822 Evaluation Kit User Guide》。
注意:当编写本文档时参考了最新版本的nRF51 SDK 5.2.0和最新版本的协议栈S110 SoftDevice 6.0.0。
1.2 文档说明
下面的文档是重要的参考资料。
文档 |
描述 |
nRF51822 Evaluation Kit User Guide |
使用Evaluation Kit开发板的介绍和配置,包括Keil和SoftDevice的配置。 |
nRF51 SDK documentation |
这个文件在SDK安装的文件夹之下的子文件夹中,包含了SDK中所有功能API的文档。 |
S110 nRF51822 SoftDevice Specification |
介绍了协议栈S110 SoftDevice,包括资源的用法和高级的功能函数。 |
nRF51822 Product Specification |
描述了nRF51的硬件、模块和电气特性。 |
nRF51 Series Reference Manual |
介绍了nRF51芯片系列所有功能模块的描述和芯片所有的外围资源。 |
nAN-15: Creating Applications with the Keil C51 Compiler |
这个应用手册包含使用Keil μVision的信息,它为nRF24LE1芯片而写,但是3.3节“Including files”和3.4节““Debug your project”同样适用于nRF51822芯片。 |
Bluetooth Core Specification, version 4.0 卷1,3,4,6 |
这个文档由蓝牙技术联盟组织提供,包含了关于蓝牙服务和profiles的信息。 |
1.3 蓝牙技术资源
所有蓝牙技术联盟的服务、特性和描述都是根据蓝牙开发网站来定义,可以参考规范的不同部分找到UUID或者是数据格式的定义。
1.4 nRF51822 和 S110 SoftDevice
S110 SoftDevice是BLE外围设备协议栈的解决方案,它集成了低功耗控制器、主机,并提供了一个完整和灵活的API用于在一个片上系统(SoC)构建一个低功耗蓝牙的解决方案,S110 SoftDevice提供的是已经编译完成的HEX文件,在加载你的应用程序之前,你必须把它预先烧录到芯片中。
S110 SoftDevice 使用了一部分芯片的flash和RAM,它们在你的代码中已被保护,因此你不能意外地写数据到该区域。S110 SoftDevice也需要互斥地访问外围资源和寄存器。
如何烧录S110 SoftDevice到nRF51822中请参考:
《nRF51822 Evaluation Kit User Guide》
SoftDevice使用了哪些资源,请参考:
《nRF51822 S110 SoftDeviceSpecification》
1.5 应用简述
LED Button 应用示例是为了让你学习如何在nRF51822上开发BLE应用,它是一个通过BLE的通知功能进行通信的BLE应用的简单演示。当它运行时,你可以通过集中器(见第10页2.2.1节“角色”中对集中器的定义部分)触发nRF51822上LED的输出,并且当在nRF51822上的按键被按下时集中器将会收到一个通知。
这个应用通过一个服务(见第10页2.2.2节“GATT层”服务和特性的描述部分)被建立,这个服务包括2个特性:LED特性和按键特性。LED特性:通过没有回应的写远程操作LED的亮灭。按键特性:当按键被按下时,将会发送一个通知到集中器。
摘自:http://www.cnblogs.com/tan-v/p/4270823.html
1 nrf51822简介相关推荐
- NRF51822 2.4G无线
一.我用的是NRF51的板子,兼容51822和51422外带了Debugin和Debugout烧录 二.我是用的芯片手册是51822.所以下面就来说说我是用的51822无线的应用 1.NRF51822 ...
- NRF51822芯片简介和软硬件开发简介
Nordic官网:https://www.nordicsemi.com/chi_simple nRF51822 是功能强大.高灵活性的多协议 SoC,非常适用于 Bluetooth® 低功耗和 2.4 ...
- 基于FTP的Nordic nRF51822 OTA 教程一之修改boot区大小
本文主要对nRF51822的OTA过程进行详细说明,主要通过改写nRF51822_sdk11中的bootloader,实现空中升级的功能.OTA流程:Fireware由app区中的ftp协议下载存于外 ...
- nRF51822 入门必备教程(一篇搞定nRF51)
微雪 NRF51822 Eval Kit 开箱检测 部署PC端开发环境 nRFgo Studio v1.14或更高版本 Keil MDK-ARM Lite v4.54或更高版本 J-Link Soft ...
- NRF51822 Timer
首先熟悉一下NRF51822,这一篇文章讲得不错,链接如下: http://wenku.baidu.com/link?url=JNSJuhxNtMn3HJg6q5rETABXbejF_dallu8Ck ...
- etcd 笔记(01)— etcd 简介、特点、应用场景、常用术语、分布式 CAP 理论、分布式原理
1. etcd 简介 etcd 官网定义: A highly-available key value store for shared configuration and service discov ...
- Docker学习(一)-----Docker简介与安装
一.Docker介绍 1.1什么是docker Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源 Docker可以让开发者打包他们的应用以及依赖包到一个轻量级,可移植 ...
- 【Spring】框架简介
[Spring]框架简介 Spring是什么 Spring是分层的Java SE/EE应用full-stack轻量级开源框架,以IOC(Inverse Of Control:反转控制)和AOP(Asp ...
- TensorRT简介
TensorRT 介绍 引用:https://arleyzhang.github.io/articles/7f4b25ce/ 1 简介 TensorRT是一个高性能的深度学习推理(Inference) ...
最新文章
- git在不同操作系统下自动替换换行符
- 【Android 高性能音频】Oboe 开发流程 ( 包含头 Oboe 头文件 | 创建音频流 | 设置音频流 | 音频流回调类 AudioStreamCallback )
- Java 理论与实践: 垃圾收集简史
- 【tomcat】调整内存大小
- Git之签署工具GPG的安装和使用
- Linux学习笔记之系统路径和命令
- Failed to issue method call Unit mysql service failed to lo
- 在HTML5 canvas里用卷积核进行图像处理
- 关于电的计算机公式,电气设计相关计算公式大全
- 传染病模型(4)——SIRS模型和SIER模型及matlab具体程序
- Latex表格排版大全 基于 IEEE双栏论文(设置单元格行列间距,自动换行设置)
- ps人物碎片化飞溅效果特效怎么做
- 你弄懂了Spark的Shuffle实现方式吗?手把手带你解析Spark的Sort Shuffle和Tungsten-Sort Shuffle
- Mac上有哪些好用的写作软件?四类写作软件总有一款适合你!
- 技术分享 | 如何实现小程序与 App 的跳转
- 计算机参数含义,硬盘的各项基本参数含义解析
- 经典合成器和键盘合集-Arturia V Collection 7 v7.1.2 WiN
- 位置在此计算机上运行程序灰色,Win10电脑中定位服务按钮灰色无法开启的2种解决方法...
- 面试官:请讲一讲IO流核心模块与基本原理是什么?
- 请说明数据库系统如何实现数据和程序之间的独立性。
热门文章
- 与外包人员合作时,如何管理代码?
- 3.2 在合适的场景选择合适的设计模式(上)
- 070101_描述性统计(均值,中位数,众数,方差,标准差,与常见的统计图表)...
- matlab 微分方程组参数拟合,拟合常微分方程 (ODE)
- 15个国外最佳免费图片素材网…
- 第一个wps js宏小程序
- mac VirtualBox安装旧版ubuntu
- Python采集某宝数据,轻松解决这个价值千元的外包项目
- 2020笔记本性价比之王_笔记本电脑性价比排行2020前十名?
- html正方形边框,详解HTML设置边框的三种方式(html画方框用border)