SDK:nRF5_SDK_12.2.0
1. 概述
实验一用于讲解 nRF52832 SDK v12.2.0 关于 LED 灯及 BUTTON 按键的板级支持函数及使用方法。利用板级支持函数可以控制在硬件上设置 LED 灯的有效状态(高电平亮还是低电平亮),在软件上配置 LED 的管脚和数量则可以方便地读取并设置 LED 的状态,达到快速开发的目的,BUTTON 按键与 LED 灯实现原理类似。
1.1 工程目录
- 进入官方 SDK 外设工程目录的 blinky 例程,该例程提供 LED 闪烁的模板;
..\nRF5_SDK_12.2.0_f012efa\examples\peripheral\blinky\ - 依次进入 pca10040 板型,s132 版本协议栈,arm5(MDK5) 开发环境目录 ,打开 Keil 工程文件。
…\blinky\pca10040\s132\arm5_no_pack\blinky_pca10040_s132.uvprojx
1.2 工程讲解
官方例程代码入口 MDK5 Project:Application\main.c 中,如下文代码所示,在主函数 main() 中调用 bsp_board_leds_init() 函数初始化 LED 设备,while 循环任务中每隔 500ms 反转一次所有的 LED 灯(共 LEDS_NUMBER 个 LED 灯)的亮灭。
int main(void)
{
/* Configure board. */
bsp_board_leds_init();
/* Toggle LEDs. */
while (true)
{
for (int i = 0; i < LEDS_NUMBER; i++)
{
bsp_board_led_invert(i);
nrf_delay_ms(500);
}
}
}
2. 定义与声明
上文例程的 bsp 前缀函数位于在