参数配置
配置 SoC 中 UART 的相关信息
config AIC_UART_DRV
bool
default n
config AIC_UART_DRV_V10
bool
default y if AIC_UART_DRV
config AIC_UART_DRV_VER
string
default "10" if AIC_UART_DRV_V10
config AIC_UART_DEV_NUM
int
default 8 if AIC_UART_DRV
参数 | 描述 |
---|---|
AIC_UART_DRV | 启用或禁用 UART 驱动。 默认值 |
AIC_UART_DRV_V10 | 启用 UART 驱动版本。 如果启用了 UART 驱动,可以进一步配置其版本。默认情况下,如果启用了 UART
驱动,则启用版本 10( |
AIC_UART_DRV_VER | 设置 UART 驱动的版本号。 默认情况下,如果启用了版本 10,则版本号为 10。 |
AIC_UART_DEV_NUM | 配置系统中的 UART 设备数量。 默认情况下,如果启用了 UART 驱动,则设备数量为 8。 |
配置 Board 需要使用的 UART 端口和 Pinmux
-
在 target/soc name/board name/Kconfig.board 中,设置开发板需要的 UART 相关信息, 一般会配置需要的 UART 端口。SDK 已经完成设置,默认不需要调整。
-
根据开发板的型号,在 target/soc name/board name/pinmux.c 中设置 UART 端口的 pinmux。
config AIC_USING_UART0
bool "Using UART0"
default n
select AIC_UART_DRV
config AIC_USING_UART1
bool "Using UART1"
default n
select AIC_UART_DR
参数 | 描述 |
---|---|
AIC_USING_UART0 | - |
AIC_USING_UART1 | - |
配置驱动的工作参数
根据需要,在 bsp/artinchip/drv/UART/Kconfig.dev 中设置设备驱动的工作参数:
config AIC_DEV_UART0_BAUDRATE
int "UART0 baudrate"
default 115200
config AIC_DEV_UART0_DATABITS
int "UART0 data bits"
range 0 15
default 8
config AIC_DEV_UART0_STOPBITS
int "UART0 stop bits"
range 0 3
default 1
-
AIC_DEV_UART0_BAUDRATE:波特率,默认值 115200。
-
AIC_DEV_UART0_DATABITS:数据位,表示每个字符的数据位数,配置范围为 0-15,默认值为 8。
-
AIC_DEV_UART0_STOPBITS:停止位,表示每个字符后的停止位数,配置范围为 0 到 3,默认值为 1。
-
parity:校验位,用于错误检测。常见的值有 0(无校验),1(奇校验),2(偶校验)。
-
flow control:流控,用于控制数据传输速率。常见的值有 0(无流控),1(硬件流控),2(软件流控),3(软硬流控)。
配置功能参数
在
Luban-Lite
根目录下,执行
scons
--menuconfig
,进入功能配置界面并配置相关参数:
Board options -->
UART0 parameter --->
(48000000) UART0 clk frequence
(115200) UART0 baudrate
(8) UART0 data bits
(1) UART0 stop bits
(0) UART0 parity (0=none, 1=odd, 2=even)
UART0 protocol (RS232) --->
UART0 mode (RS232 normal) --->
[ ] Enable UART0 dma mode
参数 | 描述 | 备注 |
---|---|---|
clk frequence |
时钟频率 |
建议参考用户手册中 CMU 的模块时钟章节,修改不同波特率对应的 clk frequence,以免出现误码的情况。 |
baudrate |
波特率 |
默认值: 115200 |
data bits |
数据位,表示每个字符的数据位数 |
配置范围为 0-15,默认值为 8 |
stop bits |
停止位,表示每个字符后的停止位数 |
配置范围为 0 到 3,默认值为 1。 |
parity | 校验位,用于错误检测 |
|
protocol |
协议类型 |
可配置参数:
|
mode |
模式 |
根据协议类型,选择对应的模式。关于模式的详细说明,可查看配置模式参数 |
Enable UART0 dma mode | 是否使能 DMA 模式 | - |
根据不同的协议类型,在 UART mode 中选择不同的模式,例如选择 RS232 unauto flow control:
Board options -->
[*] Using UART0
UART0 parameter --->
UART0 mode (RS232 unauto flow control) --->
() RS232 normal
( ) RS232 auto flow control
(X) RS232 unauto flow control
( ) RS232 software flow control
( ) RS232 software and hardware flow control
协议参数 | 模式参数 | 描述 |
---|---|---|
RS232 协议 |
RS232 normal |
普通 RS232 模式 |
RS232 software flow control |
RS232 软件流控模式 | |
RS232 auto flow control |
RS232 硬件自动流控模式,流控管脚固定 | |
RS232 unauto flow control |
RS232 硬件非自动流控模式,流控管脚自选。 根据需求,使能并选择 RTS 管脚和 CTS 管脚,关于详细描述可查看 配置管脚。 |
|
RS232 sw and hw flow control |
RS232 软件流控模式与硬件非自动流控模式,流控管脚自选。 根据需求,使能并选择 RTS 管脚和 CTS 管脚,关于详细描述可查看 配置管脚。 |
|
RS485 协议 |
RS485 normal |
RS485 三线模式 (TX、RX、RTS),RTS 管脚固定 |
RS485 simulation |
模拟 RS485 三线模式 (TX、RX、RTS),RTS 管脚自选 | |
RS485 compact io |
RS485 二线模式(TX/RX、RTS) |
Board options -->
[*] Using UART0
UART0 parameter --->
UART0 protocol (RS232) --->
UART0 mode (RS232 unauto flow control) --->
[*] Enable RTS --->
(PA.3) UART0 RTS pin
[*] Enable CTS --->
(PA.2) UART0 CTS pin
参数 | 描述 |
---|---|
Enable RTS | 使能 RTS 管脚。 |
UART0 RTS pin | 选择 RTS pin,例如 PA.3。 |
Enable CTS | 使能 CTS 管脚。 |
UART0 CTS pin | 选择 CTS pin,例如 PA.2。 |