![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
nrf51822
张十三的博客
一个专注于电子/IT开发技术的创客媒体,主要涵盖电子基础技术,软件开发基础技术,物联网,智能家居,开源软硬件,自动控制,仿真,机器人(运动控制,ROS),无人机,机械设计等等
快用 WX 搜索并关注“张十三的博客”和张十三一起搞技术吧!
展开
-
一起学nRF51xx 23 - s130蓝牙API介绍
张十三前言通过前面的章节,我们学习了nrf51的蓝牙协议栈(S130)的基本使用,对S130协议栈的实现原理有了一定了解,也认识到了S130协议栈的强大,那么协议栈中的API接口具体是什么功能?各个参数代表着什么意思?具体怎么用呢?本节将带领大家去寻找答案。示例详解本节以S130蓝牙协议栈为例,进入Nordic官网https://www.nordicsemi.com,找到produ...原创 2019-10-20 13:36:15 · 1226 阅读 · 1 评论 -
一起学nRF51xx 21 - 蓝牙项目工程的初始化流程解读
前言本节主要工作是对《一起学nRF51xx 20 - 移植SDK蓝牙例程》章节程序进行解读。示例详解基于硬件平台:nrf51822ek_tm开发板。本示例所用的最小系统板原理图: 程序启动分析: 注,以下相关内容来自nrf51822ek_tm开发板的官方解析,个人觉得很不错,故在此引用,官方作者:不离不弃qq574912883/****...原创 2019-09-22 20:49:32 · 953 阅读 · 0 评论 -
一起学nRF51xx 12 - flash
前言在某些应用中需要固件升级功能及存储一些用户定义的标志位,或者存储一些传感器的数据,一般情况我们是用外挂FLASH、EEPROM,或者使用MCU内部的EEPROM来解决。但是外挂EEPROM或者FLASH会增加成本和产品的体积。NORDIC提供了一个比较实用的方法:把这些数据存放在芯片的FLASH中。FLASH起了两个作用:1)程序的存储空间 2)用户自定义的数据存储空间。NRF...原创 2019-09-01 20:32:50 · 499 阅读 · 0 评论 -
一起学nRF51xx 11 - ficr
前言工厂信息配置寄存器(FICR)是在工厂中预先编程的,不能被用户删除。这些寄存器包含芯片特定的信息和配置。实际上FICR是一个寄存器组,下面有很多个独立的寄存器,各个寄存器用来存放表征芯片特性的一些数据。例如芯片的硬件代码、固件代码、片上FLASH的大小、片上RAM有几块、每一块的容量是多少、蓝牙地址等等很重要的信息。而这些信息在芯片制造的过程被烧写进去。由于这些寄存器组是OTP,只能烧录一...原创 2019-09-01 20:31:01 · 1204 阅读 · 0 评论 -
一起学nRF51xx 10 - rng
前言 随机数产生器(RNG)的结构: 随机数发生器(RNG)根据内部热产生真实的非确定性随机数噪音。RNG通过触发START任务启动,并通过触发STOP任务停止。当随机数已经生成,它会产生一个VALRDY事件,同时把随机数存入VALUE寄存器。用户通过读取VALUE寄存器,获取这个随机数。有一点需要注意,随机数生成的时间不是固定不变的,时间有长有断,特别是使能了数字...原创 2019-09-01 20:29:40 · 376 阅读 · 0 评论 -
一起学nRF51xx 9 - pwm
前言上一讲我们学习了nrf51822定的器的使用,那行如何用定时器实现PWM输出呢,NRF51的time模块不支持 PWM 功能,不可我们可以通过定时器+PPI+GPIOTE模块一起工作的方式在NRF51XX上产生 PWM 信号。 下面以使用 TIMER0 为例, 来介绍用定时器产生 PWM 的方法。 关于定时器,PPI,及GPIOTE模块的介绍可以查看之前的博文,本节将基于NR...原创 2019-09-01 20:27:58 · 480 阅读 · 0 评论 -
一起学nRF51xx 8 - Time
前言Nrf518xx的TIMER有以下几部分组成(nrf51822有三个定时器--time0/1/2):1)计数时钟源。有1M、16M 2种时钟源。2)时钟源分频器。用来设置分频,范围是2的0-9次方。3)定时/计数模式选择。用来配置TIMER工作在定时器模式还是计数器模式。4)定时/计数器位数。8位、16位、24位、32位可选择。5)CC[n]寄存器。CC是捕捉、比较...原创 2019-09-01 20:25:56 · 358 阅读 · 0 评论 -
一起学nRF51xx 3 - gpiote
前言nRF5X系列芯片引入了TASK和EVENT这2个全新的概念。 TASK,可以理解为DMA,但DMA更侧重数据传输,而TAST则是预定功能的触发操作: 可以理解为执行某个特定任务的一段代码的集合,但不需要CPU参与。比如nRF5X中有一个很常用的TASK---TOGGLE。TOGGLE我们暂时翻译为”翻转”,它的功能就是在指定的引脚,把输出的电平翻转一次。比如当前引脚的电平为...原创 2019-08-05 19:51:28 · 302 阅读 · 0 评论 -
一起学nRF51xx 2 - clock
前言 上一节,我们成功地操控了GPIO,并点亮了LED,同时我们还用nrf_delay_ms函数实现了较高精度的延时操作,细心的朋友可以会发现,我们好像并没有设置系统时钟,那么上一讲中真正用的是时钟哪什么,我们又将如何去修改主时钟呢。这一我们将完成这一工作。Nrf51822的时钟系统如下图所示: 关于Hfclk时钟有如下描述:本节将给...原创 2019-08-04 23:19:19 · 349 阅读 · 0 评论 -
一起学nRF51xx 1 - GPIO
一起学nRF51xx 1 - GPIO张十三前言上图是以这32个GPIO引脚中的GPIO 0为例介绍GPIO的结构。每一个GPIO口有对应的一个PIN_CNF寄存器。通过该寄存器可以配置以下参数:方向驱动能力上拉、下拉引脚电平检测是否使能输入缓冲模拟输入(特定的引脚)nRF51系列芯片最多拥有32个GPIO口,像我们常用的型号QFXX...原创 2019-08-04 23:17:59 · 576 阅读 · 1 评论 -
一起学nRF51xx 0 - 环境搭建
前言物联网时代怎么能少得了蓝牙4.0,Nordic的nRF5x系列MCU如 nRF51822 是功能强大、高灵活性的多协议 SoC,非常适用于 Bluetooth® 低功耗和 2.4GHz 超低功耗无线应用。 nRF51822 基于配备 256kB flash + 16kB RAM 的 32 位 ARM® Cortex™ M0 CPU 而构建。 嵌入式 2.4GHz 收发器支...原创 2019-08-04 21:17:44 · 789 阅读 · 0 评论