2. 产品与套件概述
N32G033 系列是国民技术基于 32 位 Arm Cortex-M0 内核的 MCU,集成多路高性能模拟器件与 UART、SPI、I2C 通信接口。官网列出的典型应用包括两轮电动车、电动工具、平衡车、LED 户外屏、BMS、家用电器、血氧仪与家电控制面板。
2.1 内核与外设概况
下表为 N32G033 系列的最大资源配置,取自官网型号页“主要特征”;总线时钟上限取自用户手册“存储器和总线架构”章,GPIO 分组取自用户手册“GPIO和AFIO”章。
| 项目 | 配置 |
|---|---|
| 内核 | 32 位 Arm Cortex-M0,支持单周期硬件乘法 |
| 最高主频 | 64 MHz |
| 总线时钟上限 | AHB 64 MHz,APB 32 MHz |
| 存储器 | 最高 64 KB Flash,6 KB SRAM; SRAM 支持在 STOP 模式下数据保持 |
| GPIO | 最多 29 个,分为 GPIOA(16 个)、GPIOB(9 个)、GPIOF(4 个)三组 |
| 模拟 | 1 个 12 位 1 Msps ADC,最多 11 个外部输入通道; 3 个轨到轨 OPAMP,支持可编程增益; 1 个高速模拟比较器,内置 256 级可调基准; 内置 NTC 温度检测与独立参考电压源 |
| 通信接口 | 3 个 UART,最高 4 Mbps; 2 个 SPI,最高 16 MHz; 2 个 I2C,最高 1 MHz |
| 定时器 | 1 个 16 位高级定时器,支持互补 PWM 输出; 1 个 16 位通用定时器; 1 个 32 位通用定时器; 1 个 32 位基础定时器,支持低功耗唤醒; 1 个独立看门狗 IWDG |
| 其它外设 | 3 通道 DMA 控制器; 硬件除法器与开根运算加速器 |
| 复位与电源监测 | 上电复位(POR)、掉电复位(PDR)与外部引脚复位; 可编程电压监测器(PVD),事件接入 EXTI 线 7; 看门狗复位 |
| 调试与启动 | SWD 调试,PA13 为 SWDIO、PA14 为 SWCLK; 启动模式由 BOOT0 引脚与用户选项字节选择,可选主 Flash、系统存储区与 SRAM |
| 安全与标识 | 多级读保护 RDP L0/L1/L2; 写保护(WRP); 96 位 UID 与 128 位 UCID |
| 工作条件 | 2.0 V~5.5 V; -40 ℃~+105 ℃ |
上表是系列的最大配置。具体型号的 Flash、SRAM、GPIO 数量与外设裁剪以对应数据手册为准。系统时钟默认由内部 HSI RC 提供,最高 64 MHz,修改分频系数时须确保 APB 时钟不超过 32 MHz。
2.2 SDK 套件概况
Nsing.N32G033_Library.1.3.0 由 CMSIS 器件支持文件、标准外设驱动库、中间件与评估板工程组成,规模如下:
- 18 驱动模块
- 467 公开 API
- 19 示例分类
- 68 示例
| 组成 | 内容 |
|---|---|
| 标准外设驱动库 | 每个驱动模块由一对 .h / .c 文件组成,公开 API 为头文件中的全部函数声明 |
| CMSIS 器件支持 | 器件头文件、系统时钟初始化、Keil / IAR / GCC 三套启动文件与 GCC 链接脚本 |
| 示例工程 | 按外设分类组织,每个示例同时提供 Keil MDK-ARM 与 IAR EWARM 工程 |
| 应用工程 | ClassB_demo(Keil 与 IAR 工程)、JumpToBOOT(Keil 工程)与 GCC_demo(GCC Makefile 工程) |
| 中间件 | FreeRTOS 内核与 N32 自检库 N32_SelfTest_Library |
| 板级支持 | 调试串口日志输出与 SysTick 延时 |
示例数按含 MDK-ARM、EWARM 或 GCC 构建工程的示例入口统计:成对子工程各自带说明文件时分别计数(如 UART/LIN 下的主、从工程),无工程的共享代码目录不计。Cortex-M0 与 FreeRTOS 示例分类没有对应的标准外设驱动模块,DBG 驱动模块没有独立示例。
system_n32g033.c 的默认系统时钟源为 HSI(内部 64 MHz RC 振荡器),默认输出 64 MHz;可在编译前通过 SYSCLK_FREQ 宏改为 64 MHz、32 MHz 或 32 kHz,其它取值会给出编译错误。