当前页面为 开发中 版本,查看特定版本的文档,请在页面左下角的下拉菜单中进行选择。

NDK 快速入门指南

1 概述

本文是 PAN107x/PAN101x NDK 开发的快速入门指引,旨在帮助使用者快速入门 PAN107x/PAN101x NDK 的相关开发。

2 PAN10xx EVB 介绍

PAN10xx EVB (EValuation Board) 是 Panchip 提供给 PAN107x/PAN101x SoC 用户的一系列开发板的总称,目前包括 4 种 EVB 核心板,1 种 EVB 底板:

开发板名称

SoC 型号

封装

Flash 大小

SRAM 大小

PAN1070UA1A EVB 核心板

PAN1070UA1A

QFN32 (4x4)

512 KB

48 KB

PAN1070UAEC EVB 核心板

PAN1070UAEC

QFN20 (3x3)

512 KB

48 KB

PAN1010S9FA EVB 核心板

PAN1010S9FA

SSOP24

256 KB

16 KB

PAN1010M9BA EVB 核心板

PAN1010M9BA

MSOP10

256 KB

16 KB

PAN10xx EVB 底板

-

-

-

-

关于 PAN10xx EVB 开发板硬件的详细介绍,请参考 PAN10xx EVB 硬件资源介绍

3 NDK 开发环境确认

3.1 搭建 PC 开发环境

在使用 NDK 开发之前,请确保您的 PC 上有如下开发环境:

  • Keil MDK:我们使用 Keil MDK v5 + ARMCC v5.06 作为集成开发环境 IDE

  • Python3:SDK 工程编译过程中,需要调用一些预置的 Python 脚本,实现一些特殊的功能

  • JLink:我们使用 JLink SWD 的方式调试和烧录程序

关于具体的开发环境要求与搭建建议,请参考 NDK 开发环境搭建

3.2 下载 PAN107x/PAN101x NDK 开发套件

目前 PAN107x 与 PAN101x 系列芯片共用同一个 NDK 开发套件,您可以通过如下几种方式获取到:

  1. 从 PAN107x 或 PAN101x 芯片的产品介绍 WIKI 网页中的“产品开发资料”一节中下载到最新版本的 NDK 开发套件:

  2. 从 PAN107x/PAN101x NDK 文档中心(即本文档所在的网站)网页的左下角 “NDK 版本选择”选项卡中,下载到与文档版本相对应的 NDK 开发套件版本:

  3. 直接与 Panchip 联系获取

3.3 快速编译运行一个简单的例程

  1. 将 EVB 核心板插到 EVB 底板上

  2. 将 EVB 底板 SWD(P00:SWD_CLK,P01:SWD_DAT,GND:SWD_GND)接口通过 JLink 连接至 PC

  3. 将 EVB 底板 USB->UART 接口通过 USB Type-C 线连接至 PC,然后在 PC 上打开串口终端或串口调试助手(串口波特率:921600

    • 若 EVB 核心板主控为 QFN32 封装的 PAN107x 芯片(PAN1070UA1A),则将 EVB 底板 Tx 排针与 P16 排针相连

    • 若 EVB 核心板主控为 SSOP24 封装的 PAN101x 芯片(PAN1010S9FA),则将 EVB 底板 Tx 排针与 P11 排针相连

  4. 将 EVB 底板 LED3 排针与 P10 排针相连

  5. 打开 NDK 中的一个 Sample 工程,例如演示 GPIO 推挽输出控制 LED 灯闪烁的例程:<PAN10XX-NDK>\01_SDK\nimble\samples\peripheral\gpio_output_push_pull

  6. 通过 Keil 的 Project 文件窗口,打开 sdk_config.h 文件,并切换到 Configuration Wizard 界面,依次展开 SoC Platform - Enable UART Log 菜单,检查 Log UART Tx Pin 配置是否与您当前的 EVB 硬件一致,若不一致则需手动修改

  7. 点击 Keil Build 编译按钮,成功后点击 Download 按钮进行烧录下载

    • 若无法正常编译,请检查 Keil 版本以及 ARMCC 编译器版本是否正确

    • 若无法正常下载,请检查是否已经正确将 Flash 烧录算法 FLM 文件从 NDK 中拷贝至 Keil 安装目录下)

  8. 烧录成功后:

    • 观察串口 Log 打印,可以看到系统成功初始化的 Log

    • 观察 EVB 底板上的发光二极管 LED3,可以看到其以 1Hz 的频率闪烁

4 更多相关文档

下面这些文档有助于您进一步了解 PAN107x/PAN101x 系列 SoC 开发的相关知识:

  1. NDK 所有例程目录:列出了目前 NDK 内置的所有例程的简单介绍及对应文档的跳转链接

  2. NDK Configuration 开发指南:介绍 SDK Config 机制及各个配置参数的具体含义

  3. NDK App 开发指南:通过一些示例,介绍蓝牙应用开发过程中常用的方法以及可能遇到的问题

  4. NDK Chip Migration:介绍 PAN107x 和 PAN101x 芯片的不同点以及软件移植的一般方法