1. 简介
本文介绍如何使用 NXP 提供的 RTD 软件包开发 S32K312 UART 与 DMA 模块结合应用,通过串口打印 Log 数据。
图 1-1 Knight S32K312 开发板
1.1 需求组件
硬件组件:
- 开发板:Knight S32K312开发板;
软件组件:
- 开发软件:S32 Design Studio for S32 Platform 3.5;
- 拓展包:S32K3xx development V3.5.13;
- RTD 版本:SW32K3_S32M27x_RTD_R21-11_4.0.0_P19_D2403_DS_updatesite;
2. 工程配置
2.1 UART 端口配置
本文使用 UART1 模块为例,配置端口 PTD13 与 PTD14 分别作为 UART1 模块的 Rx 引脚与 Tx 引脚,在配置引脚时需要注意信号栏与方向栏,除了在信号栏里配置成 Tx、Rx 还需要根据 Tx、Rx 的数据输入输出调整方向,若不一致会导致执行初始化端口函数时进入硬件故障中断而无法退出。
图 2.1-1 UART 端口配置
2.2 DMA 模块配置
配置 DMA 模块首先需要在 General 选项卡下勾选 Enable DMA Support 选项,如不勾选此选项 Specific Configuration 页面将处于灰色页面无法进行配置操作。
图 2.2-1 DMA General 页面
Specific Configuration 页面我们需要配置 Hardware Channel、Interrupt Callback、Enable Global Config 与 Global 下 Enable DMA Request 选项。Hardware Channel 选项选择所使用的硬件 DMA 通道,S32K312 仅有 1 个 DMA 模块 12 个通道,所以使用 DMA 模块时仅需配置 Hardware Channel 无需配置 Hard