表4-9 宏函数UARTConfigSet( )
函数功能 UART配置(自动获取时钟速率)
函数原型 #define UARTConfigSet(a, b, c) UARTConfigSetExpClk(a, SysCtlClockGet( ), b, c)
参 数 ulBase:UART端口的基址,取值UART0_BASE、UART1_BASE或UART2_BASE
ulUARTClk:提供给UART模块的时钟速率,即系统时钟频率
ulBaud:期望设定的波特率
ulConfig:UART端口的数据格式,取下列各组数值之间的“或运算”组合形式:
数据字长度
UART_CONFIG_WLEN_8 // 8位数据
UART_CONFIG_WLEN_7 // 7位数据
UART_CONFIG_WLEN_6 // 6位数据
UART_CONFIG_WLEN_5 // 5位数据
停止位
UART_CONFIG_STOP_ONE // 1个停止位
UART_CONFIG_STOP_TWO // 2个停止位(可降低误码率)
校验位
UART_CONFIG_PAR_NONE // 无校验
UART_CONFIG_PAR_EVEN // 偶校验
UART_CONFIG_PAR_ODD // 奇校验
返 回 值 无
说 明 本宏函数常常用来代替函数UARTConfigSetExpClk( ),在调用之前应当先调用SysCtlClockSet( )函数设置系统时钟(不要使用误差很大的内部振荡器IOSC、IOSC/4、INT30等)
表4-10 宏函数UARTConfigGet( )
函数功能 获取UART的配置(自动获取时钟速率)
函数原型 #define UARTConfigGet(a, b, c) UARTConfigGetExpClk(a, SysCtlClockGet( ), b, c)
参 数 ulUARTClk:提供给UART模块的时钟速率,即系统时钟频率
ulBaud:期望设定的波特率
ulConfig:UART端口的数据格式,取下列各组数值之间的“或运算”组合形式:
数据字长度
UART_CONFIG_WLEN_8 // 8位数据
UART_CONFIG_WLEN_7 // 7位数据
UART_CONFIG_WLEN_6 // 6位数据
UART_CONFIG_WLEN_5 // 5位数据
停止位
UART_CONFIG_STOP_ONE // 1个停止位
UART_CONFIG_STOP_TWO // 2个停止位(可降低误码率)
校验位
UART_CONFIG_PAR_NONE // 无校验
UART_CONFIG_PAR_EVEN // 偶校验
UART_CONFIG_PAR_ODD // 奇校验
ulBase:UART端口的基址,取值UART0_BASE、UART1_BASE或UART2_BASE
ulUARTClk:提供给UART模块的时钟速率,即系统时钟频率
pulBaud:指针,指向保存获取的波特率的缓冲区
pulConfig:指针,指向保存UART端口的数据格式的缓冲区
返 回 值 无
二、关于UART的发送
函数UARTCharPut( )以轮询的方式发送数据,如果发送FIFO有空位则填充要发送的数据,如果没有空位则一直等待。参见表4-11的描述。
表4-11 函数UARTCharPut( )
函数功能 发送1个字符到指定的UART端口(等待)
函数原型 void UARTCharPut(unsigned long ulBase, unsigned char ucData)
参 数 ulBase:UART端口的基址,取值UART0_BASE、UART1_BASE或UART2_BASE
ulData:要发送的字符
返 回 值 无(在未发送完毕前不会返回)
函数UARTCharGet( )以轮询的方式接收数据,如果接收FIFO里有数据则读出数据并返回,如果没有数据则一直等待。参见表4-12的描述。
表4-12 函数UARTCharGet( )
函数功能 从指定的UART端口接收1个字符(等待)
函数原型 long UARTCharGet(unsigned long ulBase)
参 数 ulBase:UART端口的基址,取值UART0_BASE、UART1_BASE或UART2_BASE
返 回 值 读取到的字符,并自动转换为long型(在未收到字符之前会一直等待)
<< 上一页 [11] [12] [13] [14] [15] [16] 下一页