nRF52-PCA10040——Overview
Overview
Zephyr applications use the nrf52_pca10040 board configuration to run on the nRF52 Development Kit (PCA10040) hardware. It provides support for the Nordic Semiconductor nRF52832 ARM Cortex-M4F CPU and the following devices:
- NVIC
- SYSTICK
- UART
- GPIO
More information about the board can be found at the nRF52 DK website [1]. The Nordic Semiconductor Infocenter [2] contains the processor’s information and the datasheet.
Supported Features
The nrf52_pca10040 board configuration supports the following hardware features:
Interface | Controller | Driver/Component |
---|---|---|
NVIC | on-chip | nested vectored interrupt controller |
SYSTICK | on-chip | system clock |
UART | on-chip | serial port |
GPIO | on-chip | gpio |
Other hardware features are not supported by the Zephyr kernel. See nRF52 DK website [1] and Nordic Semiconductor Infocenter [2] for a complete list of nRF52 Development Kit board hardware features.
Pin Names
LED
- LED1 (green) = P0.17
- LED2 (green) = P0.18
- LED3 (green) = P0.19
- LED4 (green) = P0.20
- LD5 (red/green) = OB LED 1/2
Push buttons
- BUTTON1 = SW1 = P0.13
- BUTTON2 = SW2 = P0.14
- BUTTON3 = SW3 = P0.15
- BUTTON4 = SW4 = P0.16
- BOOT = SW5 = boot/reset
External Connectors
J-Link Prog Connector
PIN # | Signal Name |
---|---|
1 | VDD |
2 | IMCU_TMSS |
3 | GND |
4 | IMCU_TCKS |
5 | V5V |
6 | IMCU_TDOS |
7 | Cut off |
8 | IMCU_TDIS |
9 | Cut off |
10 | IMCU_RESET |
Debug IN
PIN # | Signal Name | NRF52832 Functions |
---|---|---|
1 | VDD | N/A |
2 | SWDIO | SWDIO |
3 | GND | N/A |
4 | SWDCLK | SWDCLK |
5 | GND | N/A |
6 | P0.18 | P0.18 / TRACEDATA[0] / SWO |
7 | Cut off | N/A |
8 | Cut off | N/A |
9 | GND | N/A |
10 | P0.21 | P0.21 / RESET |
Debug OUT
PIN # | Signal Name |
---|---|
1 | EXT_VTG |
2 | EXT_SWDIO |
3 | GND |
4 | EXT_SWDCLK |
5 | GND |
6 | EXT_SWO |
7 | Cut off |
8 | Cut off |
9 | EXT_GND_DETECT |
10 | EXT_RESET |
Shield Debug and Current measurement
PIN # | Signal Name |
---|---|
1 | VDD_nRF |
2 | VDD |
3 | SH_VTG |
4 | SH_SWDIO |
5 | SH_SWDCLK |
6 | SH_SWO |
7 | SH_RESET |
8 | SH_GND_DETECT |
Auxiliary
PIN # | Signal Name | NRF52832 Functions |
---|---|---|
1 | P0.00 | P0.00 / XL1 |
2 | P0.01 | P0.01 / XL2 |
3 | P0.21 | P0.21 / RESET |
4 | P0.05_C | P0.05 / AIN3 |
5 | P0.06_C | P0.06 |
6 | P0.07_C | P0.07 |
7 | P0.08_C | P0.08 |
8 | P0.09 | P0.09 / NFC1 |
9 | P0.10 | P0.10 / NFC2 |
Arduino Headers
P1/P7 Power
PIN # | Signal Name | NRF52832 Functions |
---|---|---|
1 | VDD | N/A |
2 | VDD | N/A |
3 | RESET | P0.21 / RESET |
4 | VDD | N/A |
5 | V5V | N/A |
6 | GND | N/A |
7 | GND | N/A |
8 | VIN | N/A |
P2/P8 Analog in
PIN # | Signal Name | NRF52832 Functions |
---|---|---|
1 | A0 | P0.03 / AIN1 |
2 | A1 | P0.04 / AIN2 |
3 | A2 | P0.28 / AIN4 |
4 | A3 | P0.29 / AIN5 |
5 | A4 | P0.30 / AIN6 |
6 | A5 | P0.31 / AIN7 |
P3/P9 Digital I/O
PIN # | Signal Name | NRF52832 Functions |
---|---|---|
1 | D0 (RX) | P0.11 |
2 | D1 (TX) | P0.12 |
3 | D2 | P0.13 |
4 | D3 | P0.14 / TRACEDATA[3] |
5 | D4 | P0.15 / TRACEDATA[2] |
6 | D5 | P0.16 / TRACEDATA[1] |
7 | D6 | P0.17 |
8 | D7 | P0.18 / TRACEDATA[3] / SWO |
P4/P10 Digital I/O
PIN # | Signal Name | NRF52832 Functions |
---|---|---|
1 | D8 | P0.19 |
2 | D9 | P0.20 / TRACECLK |
3 | D10 (SS) | P0.22 |
4 | D11 (MOSI) | P0.23 |
5 | D12 (MISO) | P0.24 |
6 | D13 (SCK) | P0.25 |
7 | GND | N/A |
8 | AREF | P0.02 / AIN0 |
9 | SDA | P0.26 |
10 | SCL | P0.27 |
P5/P11
PIN # | Signal Name | NRF52832 Functions |
---|---|---|
1 | D12 (MISO) | P0.24 |
2 | V5V | N/A |
3 | D13 (SCK) | P0.25 |
4 | D11 (MOSI) | P0.23 |
5 | RESET | N/A |
6 | N/A | N/A |
System Clock
nRF52 DK has two external oscillators. The frequency of the slow clock is 32.768 kHz. The frequency of the main clock is 32 MHz.
Flashing Zephyr onto nRF52 DK
Flashing the Zephyr kernel onto nRF52 DK requires both the J-Link Software and documentation pack[3] and, the nrfjprog tool, which is part of the nRF5x Command Line Tools.
Installing the J-Link Software and documentation pack
To install the J-Link Software and documentation pack, follow the steps below:
- Download the appropriate package from the J-Link Software and documentation pack [3] website.
- Depending on your platform, install the package or run the installer
- When connecting a J-Link-enabled device such as the nRF52 DK board, a drive corresponding to a USB Mass Storage device as well as a serial port should come up.
Installing the nRF5x Command Line Tools
To install the nRF5x Command Line Tools, follow the steps below:
- Download the appropriate package from the nRF52 DK website [1].
- Depending on your platform, unpack the tarball and copy the contents into a folder whithin your $PATH or run the installer.
Flashing an Application to nRF52 DK
This tutorial uses the sample application shell $ZEPHYR_BASE/samples/shell
.
To build the Zephyr kernel, enter:
$ cd $ZEPHYR_BASE
$ make -C samples/shell BOARD=nrf52_pca10040Connect the micro-USB cable to the nRF52 DK and to your computer.
Erase the flash memory in the nRF52832:
$ nrfjprog --eraseall -f nrf52
Flash the application using the nrfjprog tool:
$ nrfjprog --program outdir/zephyr.hex -f nrf52
Run your favorite terminal program to listen for output.
$ minicom -D <tty_device> -b 115200
Replace
<tty_device>
with the port where the board nRF52 DK can be found. For example, under Linux,/dev/ttyACM0
.The
-b
option sets baudrate ignoring the value from config.Press the Reset button and you should see the output of shell application in your terminal.
References
[1] | (1, 2, 3) http://www.nordicsemi.com/eng/Products/Bluetooth-Smart-Bluetooth-low-energy/nRF52-DK |
[2] | (1, 2) http://infocenter.nordicsemi.com/ |
[3] | (1, 2) https://www.segger.com/jlink-software.html |
nRF52-PCA10040——Overview的更多相关文章
- Nordic nRF51/nRF52开发环境搭建
本文将详述Nordic nRF51系列(包括nRF51822/nRF51802/nRF51422等)和nRF52系列(包括nRF52832/nRF52810/nRF52840)开发环境搭建. 1. 强 ...
- Nordic nRF51/nRF52开发流程说明
Nordic nRF51系列包括nRF51822/nRF51422/nRF51802等芯片,nRF52系列包括nRF52832/nRF52840/nRF52810等芯片,硬件工程师可以按照如下流程去评 ...
- nrf52——DFU升级OTA升级方式详解(基于SDK开发例程)
在我们开始前,默认你已经安装好了一些基础工具,如nrfutil,如果你没有安装过请根据官方中文博客去安装好这些基础工具,连接如下:Nordic nRF5 SDK开发环境搭建(nRF51/nRF52芯片 ...
- [原] KVM 虚拟化原理探究(1)— overview
KVM 虚拟化原理探究- overview 标签(空格分隔): KVM 写在前面的话 本文不介绍kvm和qemu的基本安装操作,希望读者具有一定的KVM实践经验.同时希望借此系列博客,能够对KVM底层 ...
- Activity之概览屏幕(Overview Screen)
概览屏幕 概览屏幕(也称为最新动态屏幕.最近任务列表或最近使用的应用)是一个系统级别 UI,其中列出了最近访问过的 Activity 和任务. 用户可以浏览该列表并选择要恢复的任务,也可以通过滑动清除 ...
- Atitit.自然语言处理--摘要算法---圣经章节旧约39卷概览bible overview v2 qa1.docx
Atitit.自然语言处理--摘要算法---圣经章节旧约39卷概览bible overview v2 qa1.docx 1. 摘要算法的大概流程2 2. 旧约圣经 (39卷)2 2.1. 与古兰经的对 ...
- Overview of OpenCascade Library
Overview of OpenCascade Library eryar@163.com 摘要Abstract:对OpenCascade库的功能及其实现做简要介绍. 关键字Key Words:Ope ...
- Apache Sqoop - Overview——Sqoop 概述
Apache Sqoop - Overview Apache Sqoop 概述 使用Hadoop来分析和处理数据需要将数据加载到集群中并且将它和企业生产数据库中的其他数据进行结合处理.从生产系统加载大 ...
- BOOST.Asio——Overview
=================================版权声明================================= 版权声明:原创文章 谢绝转载 啥说的,鄙视那些无视版权随 ...
随机推荐
- FusionCharts的类 - 实例功能
一.FusionCharts的类 - 实例功能 1.configure(name:string , value:string) or configure(configurations: Objec ...
- 从I/O事件到阻塞、非阻塞、poll到epoll的理解过程
I/O事件 I/O事件 非阻塞I/O.在了解非阻塞I/O之前,需要先了解I/O事件 我们知道,内核有缓冲区.假设有两个进程A,B,进程B想读进程A写入的东西(即进程A做写操作,B做读操作).进程A ...
- 线程池ThreadPoolExecutor的学习
我们知道,ExecutorService是一个抽象出线程池的一个接口,然后我们在使用线程池的时候,用的是Executors工具类中的一系列newCachedThreadPool() 等类似的方法,这些 ...
- Django 的一些错误以及处理
django.template.exceptions.TemplateSyntaxError: Invalid block tag on line 589: 'static', expected 'e ...
- SpriingMVC执行流程结构
SpringMVC也叫spring web mvc,属于表现层的框架,是Spring框架的一部分. Spring MVC请求流程图: request-------->DispatcherSer ...
- 3.Freshman阶段学习内容的确定
我刷知乎.在知乎上答题的程序员,不是很牛逼就是更牛逼,说起各种系统.各种系统的各种版本.各种语言.数据库.算法.IT届的各种圣战都有板有眼.信手拈来.头头是道,不得不服.这导致了一些非常严重的问题:我 ...
- IDEA对比文件
和另一个文件对比:右击文件,选择另一个文件 和剪切板的内容对比:右击代码区域
- java的三大特性之一封装概述
属性: 属性static属性//静态成员变量/类变量 属性 //实例变量 普通成员变量 类变量,类方法 类变量是所有对象共享的变量,任何一个该类的对象去访问它时,取到的都是同一个值,同样任何一个变量去 ...
- Android 自定义Adapter中实现startActivityForResult的分析
最近几天在做文件上传的时候,想在自定义Adapter中启动activity时也返回Intent数据,于是想到了用startActivityForResult,可是用mContext怎么也调不出这个方法 ...
- reactnative资源
http://facebook.github.io/react-native/docs/getting-started.html