nRF51822 学习笔记(一) Keil5 MDK 开发环境的搭建

 

一、nRF51822简介

nRF51822是一款通用型超低功耗SoC,非常适合Bluetooth®低功耗和2.4 GHz专有无线应用。它围绕32位ARM®Cortex™-M0 CPU构建,具有256/128 KB闪存和32/16 KB RAM。灵活的2.4 GHz无线电支持蓝牙低功耗和2.4 GHz专有协议,如Gazell。

它集成了丰富的模拟和数字外设,可通过可编程外设互连(PPI)系统直接进行交互,无需CPU干预。灵活的GPIO使您可以将SPI主/从,TWI主设备和UART等数字接口连接到设备上的31个GPIO中的任何一个。

NRF51822芯片简介和软硬件开发简介

学习nRF51822的心得

二、准备工具和软件

  1. nRF51822开发板和电源,我这里使用的是nRF51822 QFAC
  2. Jlink 下载器及驱动
  3. nRFgo studio 以及nRF51 SDK
  4. keil 4.7及以上版本,我用的是MDK V5.25.1.0

三、打开SDK中的工程文件

1.打开样例工程

在官方提供的nRF51 SDK中有部分的样例工程可以使用,这里我选择打开的是流水灯的工程。一般文件路径为:NRF51822SDK\Board\pca10001\blinky_example\arm\blinky.uvproj.

2.安装相关支持包

打开工程就会提示找不到nRF51822相应的支持包以及相应的设备。这个情况可能是我们的设备包里面没有nRF51822的相关芯片,所以此时我们需要打开pack installer     安装nRF51822的支持包,相关芯片图标显示绿色则表示安装完成。

nRF51822 学习笔记(一) Keil5 MDK 开发环境的搭建_第1张图片

不过在安装完成之后点击options for target ,device选项没有出现nrf51822芯片,不过可以编译,生成hex文件。

3.解决头文件报错

在编译过程中可能会报找不到头文件的错误,这时只需要在C/C++里添加上文件路径即可。

nRF51822 学习笔记(一) Keil5 MDK 开发环境的搭建_第2张图片

4.通过 nRFgo Studio 擦除和烧写程序 

通过nRFgo Studio可以直接烧写在nRF51822开发板上,在烧写之前我们可以先将板上程序擦除,这样方便观察现象,因为有的开发板出厂时是烧写了程序的。

注意板子需要上电烧写,烧写成功之后能过看到板子上的两个LED灯轮流点亮。但是这个工程没有选择上相应的芯片,所以对于后续的学习和开发及其的不方便,所以我又重新建立了一个新的工程。

nRF51822 学习笔记(一) Keil5 MDK 开发环境的搭建_第3张图片

四、新建nRF51822工程

1.选择nRF51822__xxAC芯片作为主控。

2.把流水灯中相关的源文件和头文件移植到工程目录中。

这里我选择直接把SDK下的source文件夹和Include文件夹全部复制到我的工程目录下,user里面存放的main.c,Project里面放置工程文件。

nRF51822 学习笔记(一) Keil5 MDK 开发环境的搭建_第4张图片

3.添加相应的文件头文件以及添加 NRF51 BOARD_PCA10001 定义。

若不添加 NRF51 BOARD_PCA10001这句话,在编译的时候编译器就会报错:“Board is not defind”。

nRF51822 学习笔记(一) Keil5 MDK 开发环境的搭建_第5张图片

nRF51822 学习笔记(一) Keil5 MDK 开发环境的搭建_第6张图片

4.设置J-link,在Debug选项中设置。

先选择J-LINK下载器,然后进入Settings,将port修改为SW,至于频率选择网上有的说要选择少于1MHz的,但是我试过选其他的也可以,不过我是直接选择的下方Auto Clk 。需要注意的是在使用keil 连接Jlink给NRF51822烧写程序的时候,记得要给NRF51822上电(前提是已经安装好Jlink驱动了),不然可能你会发现在右侧的SW Device处始终发现不了Jlink设备。

nRF51822 学习笔记(一) Keil5 MDK 开发环境的搭建_第7张图片

5.编译,下载。

最后通过编译成功就可以下载了,注意要记得选择生成Hex文件哟,然后也能很方便的在线调试了。

项目工程:提取码:a84i

Jlink驱动以及nRFgo Studio软件:提取码:88ua

参考链接

NRF51822芯片简介和软硬件开发简介

学习nRF51822的心得

【NRF51822试用体验】+keil编译调试环境搭建

你可能感兴趣的:(nRF51822学习笔记)