STM32USART串口库函数介绍之USART_Init

来源:互联网 发布:discuz阿里云cdn设置 编辑:程序博客网 时间:2024/06/01 20:16

本文将介绍USART串口的库函数,总的来说有以下函数体:

※ USART_Init函数:初始化所使用的串口外设

※ USART_Cmd函数:使能或者失能USART外设

※ USART_ITConfig函数:使能或者失能指定的USART中断

※ USART_SendData函数:通过外设USARTx发送单个数据

※ USART_ReceiveData函数:返回USARTx最近解释接收到的数据

※ USART_GetFlagStatus函数:检查指定的USART标志位设置与否

※ USART_ClearFlag函数:清楚USARTx的待处理标志位

※ USART_GetITStatus函数:检查指定的USART中断发生与否

接下来分开阐述以上几种函数以及其用法和相关注意事项

1.USART_Init函数

USART_Init函数的功能是初始化异步串口,包括选定使用的串口,设定串口的数据传输速率、数据位数、检验方式、停止位、流量控制方式等,是串口最重要的库函数

USART_InitTypeDef定义于文件<stm32f10x_usart.h> 中,具体如下:

typedef struct

{

u32 USART_BaudRate;

u16 USART_WordLength;

u16 USART_StopBits;

u16 USART_Parity;

u16 USART_HardwareFlowControl;

u16 USART_Mode;

} USART_InitTypeDef;

USART_WordLength提示了在一个帧中传输或者接收到的数据位数;

USART_WordLength_8b;8位数据

USART_WordLength_9b;9位数据

USART_StopBits定义了发送的停止位数目;

USART_StopBits_1 在帧结尾传输1个停止位

USART_StopBits_0.5 在帧结尾传输0.5个停止位

USART_StopBits_2 在帧结尾传输2个停止位

USART_StopBits_1.5 在帧结尾传输1.5个停止位

USART_Parity定义了奇偶模式

USART_Parity_No 奇偶失能

USART_Parity_Even 偶模式

USART_Parity_Odd 奇模式

USART_HardwareFlowControl指定了硬件流控制模式使能还是失能

USART_HardwareFlowControl_None 硬件流控制失能

USART_HardwareFlowControl_RTS 发送请求RTS使能

USART_HardwareFlowControl_CTS 清除发送CTS使能

USART_HardwareFlowControl_RTS_CTS RTS和CTS使能

USART_Mode指定了使能或者失能发送和接收模式

USART_Mode_Tx 发送使能

USART_Mode_Rx 接收使能

 

实例:初始化异步串口1,速率为19200,8为数据,1个停止位,无检验,无流量控制,接收发送使能。

USART_InitTypeDef USART_InitStructure;

USART_InitStructure.USART_BaudRate = 19200;

USART_InitStructure.USART_WordLength = USART_WordLength_8b;

USART_InitStructure.USART_StopBits = USART_StopBits_1;

USART_InitStructure.USART_Parity = USART_Parity_No;

USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_RTS_CTS;

USART_InitStructure.USART_Mode = USART_Mode_Tx | USART_Mode_Rx;

USART_Init(USART1, &USART_InitStructure); 

1 0
原创粉丝点击