SDK(Software Development Kit)是指软件开发包,一般是由官方提供,主要用来介绍开发流程,提供常用的例程代码等等。可以降低开发者使用的门槛,提高开发效率,所以在开发者在进行具体的开发前必须先熟悉官方的SDK,一般可以在对应的官网获取(有些网站是开放的,可以直接下载,有些网站需要申请)。Nordic Semiconductor就为NRF52832提供了SDK(最新版的下载地址为:https://www.nordicsemi.com/Software-and-Tools/Software/nRF5-SDK),里面有丰富的参考例程,我们一般都会在功能相近的例程基础上进行开发,效率非常高。
下面就来了解一下官方的SDK,这里我们使用的版本为nRF5_SDK_15.0.0_a53641a。该版本SDK可以在公众号回复NRF52832获取。
SDK的目录结构如下图所示:
在开发的过程中我们主要使用到examples这个文件夹,当然工程文件也离不开components、integration以及modules文件夹,只是我们一般只对examples文件夹下进行增删改。modules里面是外设的驱动代码相对于integration更底层一点,而integration是调用modules文件中的代码封装的外设初始化和应用代码。那么就来介绍一下examples文件夹,由于NRF52832是一款多协议的SOC,而我们是进行蓝牙开发,所以我们只介绍蓝牙相关的,如下图所示:
开发BLE一般是作为从设备,所以我们看一下ble_peripheral文件夹,如下图所示:
可以看到例程非常全,我们这里主要使用到的就是ble_app_blinky和ble_app_uart这两个,那么我们就以ble_app_blinky为例看一下例程的目录结构,如下图所示:
另外对于外设驱动源码路径需要了解一下,因为后面自己要在例程中添加外设驱动的时候需要使用到。不同版本的SDK路径是有差别的,比如14版本的SDK就在components目录下,而15版的是在根目录下的integration和modules文件夹下。这里以添加ADC驱动为例,分为两部分,一部分是ADC底层的驱动配置代码,另一个是调用底层驱动的初始化应用代码,在工程中只需将两个c文件添加进工程之后配置一下即可。如下图所示:
以上就是NRF52832的SDK的在开发过程中使用到的目录介绍。
----------------------------- End -------------------------------