随笔分类 - 硬件_nRF51822
摘要:星期日, 09. 九月 2018 07:51下午 beautifulzzzz [TOC] ![][ bar] 1、安装步骤 1) 从[GNU Arm Embedded Toolchain][ 1]官网下载最新的gcc arm工具链,写文章时下载的是: gcc arm none eabi 5_4 20
阅读全文
摘要:1、前言 随机数生成器在通信、加密、图像传输等领域应用广泛,且一般起到关键性作用。我在最近设计的一个近场射频通信协议的碰撞避退算法的过程中,便对此有深深体会。 2、伪随机数发生器 随机数发生器一般包括伪随机数发生器和真随机数发生器。伪随机数发生器的伪随机序列是由数学公式计算产生,如果生成随机数的算法
阅读全文
摘要:穿戴式 设备如智能手环、智能手表一般采用几百毫安时的锂离子电池来供电。因此,与之配套的充电电路、稳压电路和电池电量检测电路便必不可少!本文主要谈谈该类消费类电子内部电池电量检测的一般方法及其优缺点。 电池电量检测看似简单,实则不易! 目前人们主要使用的两种检测电池电量的方法是: 一种方法以电流积分为
阅读全文
摘要:蓝牙在短距离无线通信领域占据举足轻重的地位—— 从手机、平板、PC到车载设备, 到耳机、游戏手柄、音响、电视, 再到手环、电子秤、智能医疗器械(血糖仪、数字血压计、血气计、数字脉搏/心率监视器、数字体温计、耳温枪、皮肤水分计等), 再到智能家居等领域均占有一席之地。 而蓝牙低功耗(BLE)是在蓝牙4
阅读全文
摘要:前言: nRF51可以支持基于2.4G的互相通信、与NRF24LE1的通信、与NRF24LU1的通信、与NRF24L01的通信。 一、nRF51822基于2.4G和nRF51822通信 其中nRF51互相通信和之前用51操作nRF24L01很像,涉及到的只有几个核心的函数: nrf_esb_init
阅读全文
摘要:一、PWM概述: PWM(Pulse Width Modulation):脉冲宽度调制技术,通过对一系列脉冲的宽度进行调制,来等效地获得所需要波形。 PWM 的几个基本概念: 1) 占空比:占空比是指在一个周期内,信号处于高电平的时间占整个信号周期的百分比,方波的占空比是50%。 2) 调制频率:周
阅读全文
摘要:一、实验内容: 通过串口发送单个字符到NRF51822,NRF51822 接收到字符后将其写入到FLASH 的最后一页,之后将其读出并通过串口打印出数据。 二、nRF51822芯片内部flash知识: EN-nRF51D 开发板使用NRF51822 芯片为nRF51822-QFAA,如下图所示,共有
阅读全文
摘要:一、实验内容: 配置NRF51822 的RTC0 的TICK 频率为8Hz,COMPARE0 匹配事件触发周期为3 秒,并使能了TICK 和COMPARE0 中断。 TICK 中断中驱动指示灯D1 翻转状态, 即指示灯D1 以8Hz 的速率翻转状态 COMPARE0 中断中点亮指示灯D2 二、nRF
阅读全文
摘要:一、本实验ADC 配置 分辨率:10 位。 输入通道:5,即使用输入通道AIN5 检测电位器的电压。 ADC 基准电压:1.2V。 二、NRF51822 ADC 管脚分布 NRF51822 的ADC 共有8 个输入通道,对应的管脚分布入下图: 三、NRF51822 ADC 原理 NRF51822 的
阅读全文
摘要:前一篇分析了前十个基础实验的代码,从这里开始分析后十个~ 一、PPI原理: PPI(Programmable Peripheral Interconnect),中文翻译为可编程外设互连。 在nRF51822 内部设置了PPI 方式,可以通过任务和事件让不同外设之间进行互连,而不需要CPU 进行参与。
阅读全文
摘要:实验01 - GPIO输出控制LED 引脚输出配置:nrf_gpio_cfg_output(LED_1); 引脚输出置高:nrf_gpio_pin_set(LED_1); 引脚电平转换:nrf_gpio_pin_toggle(LED_1); 毫秒延时:nrf_delay_ms(100); 实验02
阅读全文
摘要:本文重点介绍flash的数据存取特性、flash的内存划分、一个简单的存取图片的内存管理方式,以及对flash写前删的时间、删后读的时间、写后读的时间进行测量的一个小实验。目的在于更全面了解flash本身特点(尤其是限制),从而方便设计出高效的内存管理驱动。 本文参考论文:闪存的存储管理及索引方法研
阅读全文
摘要::由于在大多数情况下GPIO的状态变化都会触发应用程序执行一些动作。为了方便nRF51官方把该流程封装成了GPIOTE,全称:The GPIO Tasks and Events (GPIOTE) 。从GPIO电平变化到产生中断事件的流程详解1、GPIOTE概览 nRF51上面有32个GPIO,由于...
阅读全文
摘要::nRF51822虽然是一个小型的单片机,但是能真正达到任意调用其官方驱动以及BLE协议栈的人还是奇缺的。据我所见,大都拿官方给的一个冗长的蓝牙低功耗心率计工程改的。之前我对于这个工程进行log跟踪,虽然理清了其大致流程,但还是达不到任意修改甚至是构建自己的框架的程度。本文接上一篇,继续理解libr...
阅读全文
摘要::本篇是我翻译并加入自己理解的nRF51 SDK中按钮相关操作的库和先进先出队列库。虽然是nRF51的SDK,但是通过此文你将更多地了解到在BSP(板级支持)上层嵌入式程序或OS的构建方法。1、按钮相关操作库 按键管理程序是通过GPIO事务和事件管理程序来检测一个按钮是否被按下的。当然,其中也做了...
阅读全文
摘要:4线SPI彩屏局部刷屏偏移解决 ——原来我早已经在成功的旁边了最近在研究用低速、低RAM的单片机来驱动小LCD或TFT彩屏实现动画效果首先我用一个16MHz晶振的m0内核的8位单片机nRF51822尝试驱动一个1.77寸的4线SPI屏(128X160),发现,刷一屏大约要0.8...
阅读全文
摘要:最近用nRF51822写了个天马4线SPI的1.77寸LCD彩屏驱动,效果如下:屏幕的规格资料为:http://pan.baidu.com/s/1gdfkr5L屏幕的驱动资料为:http://pan.baidu.com/s/1dD3AUFB工程结构为:main.c是main函数所在,程序入口core...
阅读全文