CI130X SDK API手册  2.2.0
本手册用于描述CI130X SDK各个组件和驱动API
宏定义 | 枚举 | 函数

CI130X芯片UART驱动 更多...

宏定义

#define UART0_DMA_ADDR   0x61000000
 
#define UART1_DMA_ADDR   0x62000000
 
#define UART2_DMA_ADDR   0x63000000
 

枚举

enum  UART_ERRORFLAG {
  UART_FramingError = 0,
  UART_ParityError = 1,
  UART_BreakError = 2,
  UART_OverrunError = 3
}
 UART接收错误标志寄存器定义 更多...
 
enum  UART_FLAGStatus {
  UART_CTS = 0,
  UART_DSR = 1,
  UART_DCD = 2,
  UART_RI = 3,
  UART_BUSY = 4,
  UART_RXFF = 5,
  UART_RXFE = 6,
  UART_TXFF = 7,
  UART_TXFE = 8,
  UART_EOC = 9,
  UART_EDF = 10
}
 UART标志寄存器定义 更多...
 
enum  UART_BaudRate {
  UART_BaudRate2400 = 2400,
  UART_BaudRate4800 = 4800,
  UART_BaudRate9600 = 9600,
  UART_BaudRate19200 = 19200,
  UART_BaudRate38400 = 38400,
  UART_BaudRate57600 = 57600,
  UART_BaudRate115200 = 115200,
  UART_BaudRate230400 = 230400,
  UART_BaudRate380400 = 380400,
  UART_BaudRate460800 = 460800,
  UART_BaudRate921600 = 921600,
  UART_BaudRate1M = 1000000,
  UART_BaudRate2M = 2000000,
  UART_BaudRate3M = 3000000
}
 UART波特率定义 更多...
 
enum  UART_WordLength {
  UART_WordLength_5b = 0,
  UART_WordLength_6b = 1,
  UART_WordLength_7b = 2,
  UART_WordLength_8b = 3
}
 UART每帧有效数据位定义 更多...
 
enum  UART_StopBits {
  UART_StopBits_1 = 0,
  UART_StopBits_1_5 = 1,
  UART_StopBits_2 = 2
}
 UART停止位定义 更多...
 
enum  UART_Parity {
  UART_Parity_No = 0x0,
  UART_Parity_Odd = 0x01,
  UART_Parity_Even = 0x03
}
 UART奇偶校验定义 更多...
 
enum  UART_ByteWord {
  UART_Byte = 1,
  UART_Word = 0
}
 UART总线数据传输模式定义 更多...
 
enum  UART_CRBitCtrl {
  UART_CTSHardwareFlowCtrl = 15,
  UART_RTSHardwareFlowCtrl = 14,
  UART_Out2_RI = 13,
  UART_Out1_DCD = 12,
  UART_RTS = 11,
  UART_DTR = 10,
  UART_RXE = 9,
  UART_TXE = 8,
  UART_LoopBackE = 7,
  UART_NCED = 1
}
 UART控制寄存器定义 更多...
 
enum  UART_FIFOLevel {
  UART_FIFOLevel1_8 = 0,
  UART_FIFOLevel1_4 = 1,
  UART_FIFOLevel1_2 = 2,
  UART_FIFOLevel3_4 = 3,
  UART_FIFOLevel7_8 = 4,
  UART_FIFOLevel1 = 5,
  UART_FIFOLevel2 = 6
}
 UART Tx/RxFIFO触发深度定义 更多...
 
enum  UART_IntMask {
  UART_ErrorDataInt = 11,
  UART_OverrunErrorInt = 10,
  UART_BreakErrorInt = 9,
  UART_ParityErrorInt = 8,
  UART_FramingErrorInt = 7,
  UART_RXTimeoutInt = 6,
  UART_TXInt = 5,
  UART_RXInt = 4,
  UART_DSRModemInt = 3,
  UART_DCDModemInt = 2,
  UART_CTSModemInt = 1,
  UART_RIModemInt = 0,
  UART_AllInt = 12
}
 UART中断标志定义 更多...
 
enum  UART_TXRXDMA {
  UART_RXDMA = 0,
  UART_TXDMA = 1
}
 UART 定义 更多...
 

函数

void UartPollingSenddata (UART_TypeDef *UARTx, char ch)
 UART 查询方式发送一个字节数据 更多...
 
char UartPollingReceiveData (UART_TypeDef *UARTx)
 UART 查询方式接收一个字节数据 更多...
 
void UARTPollingConfig (UART_TypeDef *UARTx, UART_BaudRate uartbaudrate)
 UART 查询模式初始化 更多...
 
void UART_IntMaskConfig (UART_TypeDef *UARTx, UART_IntMask intmask, FunctionalState cmd)
 UART 中断屏蔽设置 更多...
 
void UARTInterruptConfig (UART_TypeDef *UARTx, UART_BaudRate bd)
 UART 中断模式初始化 更多...
 
void UARTDMAConfig (UART_TypeDef *UARTx, UART_BaudRate uartbaudrate)
 UART DMA模式初始化(dma按byte宽度传输) 更多...
 
int UART_MaskIntState (UART_TypeDef *UARTx, UART_IntMask intmask)
 UART 屏蔽后的中断状态 更多...
 
void UART_IntClear (UART_TypeDef *UARTx, UART_IntMask intmask)
 UART 清除中断标志 更多...
 
unsigned char UART_RXDATA (UART_TypeDef *UARTx)
 UART非阻塞模式接收数据(使用时需确保接收FIFO不为空) 更多...
 
int UART_ERRORSTATE (UART_TypeDef *UARTx, UART_ERRORFLAG uarterrorflag)
 UART错误标志状态 更多...
 
void UART_TXDATAConfig (UART_TypeDef *UARTx, unsigned int val)
 UART非阻塞模式发送数据(使用时需确保发送FIFO不为满) 更多...
 
int UART_FLAGSTAT (UART_TypeDef *UARTx, UART_FLAGStatus uartflag)
 读 UART 标志寄存器 更多...
 
int UART_BAUDRATEConfig (UART_TypeDef *UARTx, UART_BaudRate uartbaudrate)
 UART的波特率配置 更多...
 
void UART_FIFOClear (UART_TypeDef *UARTx)
 清除 UART FIFO数据 更多...
 
int UART_LCRConfig (UART_TypeDef *UARTx, UART_WordLength wordlength, UART_StopBits uartstopbits, UART_Parity uartparity)
 配置UART的数据位、停止位、奇偶校验位 更多...
 
int UART_TXFIFOByteWordConfig (UART_TypeDef *UARTx, UART_ByteWord uarttxfifobit)
 设置UART的发送FIFO数据位宽 更多...
 
void UART_EN (UART_TypeDef *UARTx, FunctionalState cmd)
 UART 使能控制 更多...
 
void UART_CRConfig (UART_TypeDef *UARTx, UART_CRBitCtrl crbitctrl, FunctionalState cmd)
 UART 信号使能控制 更多...
 
void UART_RXFIFOConfig (UART_TypeDef *UARTx, UART_FIFOLevel fifoleve)
 UART 接收FIFO 触发深度选择 更多...
 
void UART_TXFIFOConfig (UART_TypeDef *UARTx, UART_FIFOLevel fifoleve)
 UART 发送FIFO 触发深度选择 更多...
 
int UART_RawIntState (UART_TypeDef *UARTx, UART_IntMask intmask)
 UART 原始中断(中断屏蔽前)状态 更多...
 
void UART_TXRXDMAConfig (UART_TypeDef *UARTx, UART_TXRXDMA uartdma)
 UART DMA 发送/接收控制使能 更多...
 
void UART_TimeoutConfig (UART_TypeDef *UARTx, unsigned short time)
 UART 超时设置 更多...
 
void UartPollingSenddone (UART_TypeDef *UARTx)
 等待 UART 发送完毕 更多...
 
void UART_DMAByteWordConfig (UART_TypeDef *UARTx, FunctionalState cmd)
 UART DMA Byte/word 传输模式设置(仅DMA模式下配置) 更多...
 
void UartSetCLKBaseBaudrate (UART_TypeDef *UARTx, UART_BaudRate uartbaudrate)
 根据波特率配置相应的外设时钟,并打开外设时钟 更多...
 

详细描述

CI130X芯片UART驱动

宏定义说明

◆ UART0_DMA_ADDR

#define UART0_DMA_ADDR   0x61000000

UART0 DMA地址

◆ UART1_DMA_ADDR

#define UART1_DMA_ADDR   0x62000000

UART1 DMA地址

◆ UART2_DMA_ADDR

#define UART2_DMA_ADDR   0x63000000

UART2 DMA地址

枚举类型说明

◆ UART_BaudRate

UART波特率定义

枚举值
UART_BaudRate2400 

2400Bps

UART_BaudRate4800 

4800Bps

UART_BaudRate9600 

9600Bps

UART_BaudRate19200 

19200Bps

UART_BaudRate38400 

38400Bps

UART_BaudRate57600 

57600Bps

UART_BaudRate115200 

115200Bps

UART_BaudRate230400 

230400Bps

UART_BaudRate380400 

380400Bps

UART_BaudRate460800 

460800Bps

UART_BaudRate921600 

921600Bps

UART_BaudRate1M 

1MBps

UART_BaudRate2M 

2MBps

UART_BaudRate3M 

3MBps

◆ UART_ByteWord

UART总线数据传输模式定义

枚举值
UART_Byte 

以Byte模式向TxFIFO发送数据

UART_Word 

以Word模式向TxFIFO发送数据

◆ UART_CRBitCtrl

UART控制寄存器定义

枚举值
UART_CTSHardwareFlowCtrl 

CTS硬件流控制信号控制位

UART_RTSHardwareFlowCtrl 

RTS硬件流控制信号控制位

UART_Out2_RI 
UART_Out1_DCD 
UART_RTS 

请求发送

UART_DTR 

数据传输就绪控制位

UART_RXE 

UART允许接收控制位

UART_TXE 

UART允许发送控制位

UART_LoopBackE 

UART回环模式控制位

UART_NCED 

忽略错误数据标志控制位

◆ UART_ERRORFLAG

UART接收错误标志寄存器定义

枚举值
UART_FramingError 

帧错误

UART_ParityError 

奇偶校验错误

UART_BreakError 

break 错误

UART_OverrunError 

运行超时错误

◆ UART_FIFOLevel

UART Tx/RxFIFO触发深度定义

枚举值
UART_FIFOLevel1_8 

2Word(RX/TXFIFO均可配置)

UART_FIFOLevel1_4 

4Word(RX/TXFIFO均可配置)

UART_FIFOLevel1_2 

8Word(RX/TXFIFO均可配置)

UART_FIFOLevel3_4 

12Word(RX/TXFIFO均可配置)

UART_FIFOLevel7_8 

14Word(RX/TXFIFO均可配置)

UART_FIFOLevel1 

1Byte(仅RxFIFO可配置)

UART_FIFOLevel2 

2Byte(仅RxFIFO可配置)

◆ UART_FLAGStatus

UART标志寄存器定义

枚举值
UART_CTS 

发送清除标志

UART_DSR 

数据准备就绪标志

UART_DCD 

数据载波检查标志

UART_RI 

响铃指示信号

UART_BUSY 

UART忙标志

UART_RXFF 

接收FIFO满标志

UART_RXFE 

接收FIFO空标志

UART_TXFF 

发送FIFO满标志

UART_TXFE 

发送FIFO空标志

UART_EOC 

完成当前传输标志

UART_EDF 

数据错误标志

◆ UART_IntMask

UART中断标志定义

枚举值
UART_ErrorDataInt 

数据错误中断标志

UART_OverrunErrorInt 

运行超时错误中断标志

UART_BreakErrorInt 

break 错误中断标志

UART_ParityErrorInt 

奇偶校验错误中断标志

UART_FramingErrorInt 

帧错误中断标志

UART_RXTimeoutInt 

接收超时中断标志

UART_TXInt 

发送中断标志

UART_RXInt 

接收中断标志

UART_DSRModemInt 

数据载波检查中断标志

UART_DCDModemInt 

数据准备就绪中断标志

UART_CTSModemInt 

发送清除中断标志

UART_RIModemInt 

响铃中断标志

UART_AllInt 

操作所有中断标志

◆ UART_Parity

UART奇偶校验定义

枚举值
UART_Parity_No 

无奇偶校验

UART_Parity_Odd 

奇校验

UART_Parity_Even 

偶校验

◆ UART_StopBits

UART停止位定义

枚举值
UART_StopBits_1 

1Bit停止位

UART_StopBits_1_5 

1.5Bit停止位

UART_StopBits_2 

2Bit停止位

◆ UART_TXRXDMA

UART 定义

枚举值
UART_RXDMA 

UART接收DMA使能信号

UART_TXDMA 

UART发送DMA使能信号

◆ UART_WordLength

UART每帧有效数据位定义

枚举值
UART_WordLength_5b 

5Bit有效位

UART_WordLength_6b 

6Bit有效位

UART_WordLength_7b 

7Bit有效位

UART_WordLength_8b 

8Bit有效位

函数说明

◆ UART_BAUDRATEConfig()

int UART_BAUDRATEConfig ( UART_TypeDef UARTx,
UART_BaudRate  uartbaudrate 
)

UART的波特率配置

参数
UARTxUART组:UART0,UART1,UART2
uartbaudrate波特率
返回值
RETURN_OK参数正确
PARA_ERROR参数错误

◆ UART_CRConfig()

void UART_CRConfig ( UART_TypeDef UARTx,
UART_CRBitCtrl  crbitctrl,
FunctionalState  cmd 
)

UART 信号使能控制

参数
UARTxUART组:UART0,UART1,UART2
crbitctrl控制信号选择
cmdENABLE : 使能; DISABLE : 禁用

◆ UART_DMAByteWordConfig()

void UART_DMAByteWordConfig ( UART_TypeDef UARTx,
FunctionalState  cmd 
)

UART DMA Byte/word 传输模式设置(仅DMA模式下配置)

参数
UARTxUART组 : UART0,UART1,UART2
cmdENABLE : UART DMA Byte传输模式; DISABLE : UART DMA Word传输模式

◆ UART_EN()

void UART_EN ( UART_TypeDef UARTx,
FunctionalState  cmd 
)

UART 使能控制

参数
UARTxUART组:UART0,UART1,UART2
cmdENABLE : 使能UART; DISABLE : 禁用UART

◆ UART_ERRORSTATE()

int UART_ERRORSTATE ( UART_TypeDef UARTx,
UART_ERRORFLAG  uarterrorflag 
)

UART错误标志状态

参数
UARTxUART组:UART0,UART1,UART2
uarterrorflag错误标志
返回值
0无错误标志
非0有对应的错误标志

◆ UART_FIFOClear()

void UART_FIFOClear ( UART_TypeDef UARTx)

清除 UART FIFO数据

参数
UARTxUART组:UART0,UART1,UART2

◆ UART_FLAGSTAT()

int UART_FLAGSTAT ( UART_TypeDef UARTx,
UART_FLAGStatus  uartflag 
)

读 UART 标志寄存器

参数
UARTxUART组:UART0,UART1,UART2
uartflagUART状态标志位
返回值
0无标志
1对应的标志有效

◆ UART_IntClear()

void UART_IntClear ( UART_TypeDef UARTx,
UART_IntMask  intmask 
)

UART 清除中断标志

参数
UARTxUART组:UART0,UART1,UART2
intmask需要清除中断状态控制位

◆ UART_IntMaskConfig()

void UART_IntMaskConfig ( UART_TypeDef UARTx,
UART_IntMask  intmask,
FunctionalState  cmd 
)

UART 中断屏蔽设置

参数
UARTxUART组:UART0,UART1,UART2
intmask需要屏蔽的中断控制位
cmdENABLE : 屏蔽; DISABLE : 不屏蔽

◆ UART_LCRConfig()

int UART_LCRConfig ( UART_TypeDef UARTx,
UART_WordLength  wordlength,
UART_StopBits  uartstopbits,
UART_Parity  uartparity 
)

配置UART的数据位、停止位、奇偶校验位

参数
UARTxUART组:UART0,UART1,UART2
wordlength每帧有效数据个数,UART_WordLength_5b,...,UART_WordLength_8b
uartstopbits停止位,UART_StopBits_1,UART_StopBits_1_5,UART_StopBits_2
uartparity奇偶校验选择
返回值
RETURN_OK参数正确
PARA_ERROR参数错误

◆ UART_MaskIntState()

int UART_MaskIntState ( UART_TypeDef UARTx,
UART_IntMask  intmask 
)

UART 屏蔽后的中断状态

参数
UARTxUART组:UART0,UART1,UART2
intmask需要查询中断状态控制位
返回值
0查询中断位无原始中断标志
非0查询中断位有原始中断标志

◆ UART_RawIntState()

int UART_RawIntState ( UART_TypeDef UARTx,
UART_IntMask  intmask 
)

UART 原始中断(中断屏蔽前)状态

参数
UARTxUART组:UART0,UART1,UART2
intmask需要查询中断状态控制位
返回值
0查询中断位无原始中断标志
非0查询中断位有原始中断标志

◆ UART_RXDATA()

unsigned char UART_RXDATA ( UART_TypeDef UARTx)

UART非阻塞模式接收数据(使用时需确保接收FIFO不为空)

参数
UARTxUART组:UART0,UART1,UART2
返回值
char接收到的数据

◆ UART_RXFIFOConfig()

void UART_RXFIFOConfig ( UART_TypeDef UARTx,
UART_FIFOLevel  fifoleve 
)

UART 接收FIFO 触发深度选择

参数
UARTxUART组:UART0,UART1,UART2
fifoleveFIFO触发深度选择

◆ UART_TimeoutConfig()

void UART_TimeoutConfig ( UART_TypeDef UARTx,
unsigned short  time 
)

UART 超时设置

参数
UARTxUART组 : UART0,UART1,UART2
time超时大小 : 发送或接收Bit位时间(1/Baudrate) Default:32,Max:1023

◆ UART_TXDATAConfig()

void UART_TXDATAConfig ( UART_TypeDef UARTx,
unsigned int  val 
)

UART非阻塞模式发送数据(使用时需确保发送FIFO不为满)

参数
UARTxUART组:UART0,UART1,UART2
val需发送数据

◆ UART_TXFIFOByteWordConfig()

int UART_TXFIFOByteWordConfig ( UART_TypeDef UARTx,
UART_ByteWord  uarttxfifobit 
)

设置UART的发送FIFO数据位宽

参数
UARTxUART组:UART0,UART1,UART2
uarttxfifobitUART_Byte/UART_Word ,以byte/word方式向TXFIFO发送数据
返回值
RETURN_OK参数正确
PARA_ERROR参数错误

◆ UART_TXFIFOConfig()

void UART_TXFIFOConfig ( UART_TypeDef UARTx,
UART_FIFOLevel  fifoleve 
)

UART 发送FIFO 触发深度选择

参数
UARTxUART组:UART0,UART1,UART2
fifoleveFIFO触发深度选择

◆ UART_TXRXDMAConfig()

void UART_TXRXDMAConfig ( UART_TypeDef UARTx,
UART_TXRXDMA  uartdma 
)

UART DMA 发送/接收控制使能

参数
UARTxUART组 : UART0,UART1,UART2
uartdmaUART_RXDMA : 接收dma使能; UART_TXDMA : 发送dma使能

◆ UARTDMAConfig()

void UARTDMAConfig ( UART_TypeDef UARTx,
UART_BaudRate  uartbaudrate 
)

UART DMA模式初始化(dma按byte宽度传输)

参数
UARTxUART组 : UART0,UART1,UART2

◆ UARTInterruptConfig()

void UARTInterruptConfig ( UART_TypeDef UARTx,
UART_BaudRate  bd 
)

UART 中断模式初始化

参数
UARTxUART组 : UART0,UART1,UART2
bd发送/接收波特率

◆ UARTPollingConfig()

void UARTPollingConfig ( UART_TypeDef UARTx,
UART_BaudRate  uartbaudrate 
)

UART 查询模式初始化

参数
UARTxUART组 : UART0,UART1,UART2

◆ UartPollingReceiveData()

char UartPollingReceiveData ( UART_TypeDef UARTx)

UART 查询方式接收一个字节数据

参数
UARTxUART组 : UART0,UART1,UART2
返回值
char接收到的字符

◆ UartPollingSenddata()

void UartPollingSenddata ( UART_TypeDef UARTx,
char  ch 
)

UART 查询方式发送一个字节数据

参数
UARTxUART组 : UART0,UART1,UART2
ch发送的字符

◆ UartPollingSenddone()

void UartPollingSenddone ( UART_TypeDef UARTx)

等待 UART 发送完毕

参数
UARTxUART组 : UART0,UART1,UART2

◆ UartSetCLKBaseBaudrate()

void UartSetCLKBaseBaudrate ( UART_TypeDef UARTx,
UART_BaudRate  uartbaudrate 
)

根据波特率配置相应的外设时钟,并打开外设时钟

参数
UARTxUART组 : UART0,UART1,UART2
uartbaudrate需设置的UART波特率