UART使用参考

Version 1.1


1. 概述

公板支持4组UART: UART0(debug使用)、UART1、UART2、FUART,由于UART0已用于debug,用户可用UART为3组。

UART驱动路径:rtk/proj/sc/driver/sysdriver/uart


2. 配置


2.1. sysdesc配置

根据HW Checklist中的padmux table选择SPI的输出pad,以UART1的mode9为例。

对应的引脚为:

Pad Mode
PAD_GPIO7 UART1_TX
PAD_GPIO8 UART1_RX

需要确认当前使用的product config是使用的何种sysdesc文件,可在rtk/proj/mak/product中找到当前工程的配置,打开配置搜索CONFIG_SYSDESC_SELECT确认当前使用的sysdesc文件。例如,当前工程使用pioneer3_ssc020a_64_freertos_smp_isw_usbdev,其对应的sysdesc文件为CONFIG_SYSDESC_SELECT = "pioneer3-ssc020a-s01b.sys",那么就去修改这个文件。

sysdesc配置文件路径:rtk/proj/sc/driver/sysdriver/sysdesc/hal/pioneer3/pub/

配置示例:

如上图,<uartX>表示UART栏目,X的值为0、1、2,如<uart0>表示UART0,<uart1>表示UART1,<uart2>表示UART2,相关配置指定在此栏目下的选项配置。此外,FUART的信息在<fuart>栏目下进行配置。

用户只需关心两个选项[padmux_u8][dma_u8]

[padmux_u8]:表示padmux值。例如<uart1>[padmux_u8] 9;,表示UART1被复用成mode 9。

[dma_u8]:表示是否启用DMA。例如<fuart>[dma_u8] 0;,表示FUART不启用DMA发送。该选项仅有FUART支持,其他普通UART不支持。


2.2. UART API

UART API部分详见rtk/proj/sc/driver/sysdriver/uart/drv/pub/drv_uart.h


2.3. 范例

UART使用参考见rtk/proj/sc/driver/sysdriver/uart/drv/src/uart_ut.c