UART使用参考
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