一、什么是 SDK
什么是 SDK,认识这个问题对应我们开发项目是有极大的帮助的,这章就来介绍下官方是 SDK17 这个版本的结构。 由于 nordic Semiconductor 的低功耗蓝牙芯片 NRF52 系列的协议栈是未开源的,同时为了鼓励开 发者快速入门 nRF52 系列的开发,节省对基础硬件寄存器的操作的程序编写时间,使开发者方便快速的编写程序,官方提供专业的 SDK 工程开发包。
SDK 全程为软件开发工具包(英文全称:Software Development Kit),
是 nordic Semiconductor 设计的为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。软件 开发工具包括广义上指辅助开发某一类软件的相关文档、范例和工具的集合。一般而言 SDK 即开 发Windows 平台下的应用程序所使用的 SDK。它包含了为底层协议栈提供的 API 接口,也包括处理 器芯片的硬件驱动。同时 nordic Semiconductor 官方在 SDK 中还提供包括外设和 BLE 的演示代码、支 持性的技术注解或者其他的为基本参考资料澄清疑点的支持文档。 为了鼓励开发者加入 nRF52 系列低功耗蓝牙的开发中,使用nrf52 系列芯片,nordic 官方 SDK 是免费 提供的。软件工程师可以直接通过 nordic Semiconductor 官方下载获得 SDK 软件开发包,从而会吸引 更多人由于能免费为其编程而购买其构件。认识官方提供的 SDK 对我们开发是非常有帮助的。
二、SDK17 开发包的基本结构
打开官方 SDK 文件包 nRF5_SDK_17.1.0_ddde560,出现如下图所示的文件夹,下面对这个文件夹 里的内容详细进行介绍:
![图片[1]-2,nRF52xx蓝牙学习(蓝牙工程包 SDK 详解)-ELink墨水屏电子纸社区-FPGA CPLD-ChipDebug](http://chipdebug.com/wp-content/uploads/2025/11/20251112104715879-21762915635.png?v=1762915635)
(1)components 文件包
打开 components 文件包,如图 2.3 所示。该文件包存放的是各类驱动、蓝牙协议栈、芯片库程序 等文件,是后期我们编程所需要的文件,是 SDK 的核心部分,具体说明如下:
![图片[2]-2,nRF52xx蓝牙学习(蓝牙工程包 SDK 详解)-ELink墨水屏电子纸社区-FPGA CPLD-ChipDebug](http://chipdebug.com/wp-content/uploads/2025/11/20251112104718154-01762915638.png?v=1762915639)
◎ 802_15_4 文件夹:IEEE 802.15.4 无线通信协议,该协议栈用于低速无线个人域网(LR-WPAN) 的物理层和媒体接入控制层规范。支持两种网络拓扑,即单跳星状或当通信线路超过 10 m 时的多跳对 等拓扑。这个协议栈只能使用在 nrf52840 的芯片。
◎ ant 文件夹:nrf52840 系列处理器在蓝牙 5.x 基础上添加了 ANT+的功能,ANT+是运动领域内 最通用最普及的无线传输协议。该协议栈也是以 2.4G 通信为基础的,本文件夹为官方提供的关于 ANT+ 的驱动文件。
◎ble 文件夹:ble 蓝牙协议相关的文件,对接协议栈 softdevice 提供的 API 接口的驱动函数库。 是编写蓝牙应用的核心部分。
◎boards 文件夹:对应的开发板头文件定义,定义了诸如 nrf51 和 nrf52 的各类开发板的头文件。
◎device_ext 文件夹:第三方传感器文件,一些外接传感器的驱动文件。比如 mpu6050、ds1624 等的驱动文件。





没有回复内容