📄 uart.h
字号:
/******************************************************************************************
** 文件名称:UART.h
** 文件描述:LPC2103 UART操作软件包头文件。
** 文件说明:软件包中缺少Modem的操作部分。
******************************************************************************************/
/*********************************************************************************************************
** 函数名称: uint8 UARTn_Init(uint8 n,uint32 baud,uint8 datab,uint8 stopb,uint8 parity,uint8 INT_En)
** 功能描述: 对UARTn进行初始化
** 输 入: n 0-UART0 1-UART1
** baud 串口通信波特率
** datab 数据位个数,有效值为:5,6,7,8
** stopb 停止位个数,有效值为:1,2
** parity 奇偶校验位,0-无校验,1-奇校验,2-偶校验,3-强制为1,4-强制为0
** INT_En 中断控制字节,按位操作
** bit0 1--RBR中断使能,0--RBR中断禁止
** bit1 1--THRE中断使能,0--THRE中断禁止
** bit3 1--RX线状态中断使能,0--RX线状态中断禁止
** 输 出: 0 :初始化失败
** 1 :初始化成功
** 说明:LPC2103中波特率的设置忽略了小数分频寄存器和FIFO。
********************************************************************************************************/
extern uint8 UARTn_Init(uint8 n,uint32 baud,uint8 datab,uint8 stopb,uint8 parity,uint8 INT_En);
/*********************************************************************************************************
** 函数名称:uint8 UARTn_AutoInit(uint8 n,uint8 datab,uint8 stopb,uint8 parity,uint32 INT_En,uint8 Mode)
** 功能描述:对UARTn首先进行自动波特率测试,然后再进行其它方面的初始化
** 输 入: n 0-UART0 1-UART1
** datab 数据位个数,有效值为:5,6,7,8
** stopb 停止位个数,有效值为:1,2
** parity 奇偶校验位,0-无校验,1-奇校验,2-偶校验,3-强制为1,4-强制为0
** INT_En 中断控制字节,按位操作
** bit0 1--RBR中断使能,0--RBR中断禁止
** bit1 1--THRE中断使能,0--THRE中断禁止
** bit3 1--RX线状态中断使能,0--RX线状态中断禁止
** bit8 1--自动波特率超时中断使能,0--自动波特率超时中断禁止
** bit9 1--自动波特率完成中断使能,0--自动波特率完成中断禁止
** Mode 自动波特率模式位
** 0 模式0
** 1 模式1
** 输 出: 0 :初始化失败
** 1 :初始化成功
********************************************************************************************************/
extern uint8 UARTn_AutoInit(uint8 n,uint8 datab,uint8 stopb,uint8 parity,uint32 INT_En,uint8 Mode);
/*********************************************************************************************************
** 函数名称: void Set_FIFO(uint8 n,uint8 data)
** 功能描述: 设置FIFO
** 输 入: n :0-UART0 1-UART1
** data:FIFO缓冲区的大小,只能为1,2,8、14个字节
** 输 出: 0 :初始化失败
** 1 :初始化成功
********************************************************************************************************/
extern uint8 Set_FIFO(uint8 n,uint8 data);
/*********************************************************************************************************
** 函数名称: void UARTn_SendByte(uint8 n,uint8 data)
** 功能描述: 从UART发送一字节数据
** 输 入: n :0-UART0 1-UART1
** data:发送的数据
** 输 出: 无
** 全局变量:
** 调用模块: 程序采用查询方式,并且没有使用FIFO
********************************************************************************************************/
extern void UARTn_SendByte(uint8 n,uint8 data);
/*********************************************************************************************************
** 函数名称: void UARTn_SendData(uint8 n,uint8 *data_buf,uint8 count)
** 功能描述: 从串口发送多字节数据
** 输 入: n :0-UART0 1-UART1
** data_buf:发送数据缓冲区首地址
** count :发送字节数
** 输 出: 无
** 全局变量:
** 调用模块: 程序采用查询方式
********************************************************************************************************/
extern void UARTn_SendData(uint8 n,uint8 *data_buf,uint8 count);
/*********************************************************************************************************
** 函数名称: void UARTn_RcvData(uint8 n,uint8 *data_buf,uint8 count)
** 功能描述: 从串口接收多字节数据
** 输 入: n :0-UART0 1-UART1
** data_buf:接收数据缓冲区首地址
** count :接收字节数
** 输 出: 无
** 全局变量:
** 调用模块: 程序采用查询方式,存在死等待
********************************************************************************************************/
extern void UARTn_RcvData(uint8 n,uint8 *data_buf,uint8 count);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -