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);
- STM32USART串口库函数介绍之USART_Init
- STM32USART串口通信
- [ M3 LN ] FW(固件)库函数USART_Init()
- STM32之SPI库函数介绍
- STM32串口的设置和库函数的介绍
- STM32之RCC库函数介绍以及应用
- STM32之RCC库函数介绍2
- STM32之BKP后备域库函数介绍
- STM32之ADC库函数的介绍
- 一起学CC3200系列教程之串口--库函数
- STM32之RTC实时时钟库函数介绍(1)
- STM32串口库函数版例程
- 串口介绍
- C语言库函数介绍
- GCCAVR库函数介绍
- Linux动态库函数介绍
- libnet/libnids库函数介绍
- winPcap库函数介绍
- 欢迎使用CSDN-markdown编辑器
- NYOJ860 又见01背包
- 【HDU】5736 Call It What You Want【暴力+dp】
- Js得到 服务器控件 radiobuttonlist选中值
- 计算广告-系统结构组成
- STM32USART串口库函数介绍之USART_Init
- 关于人工智能的几大误解
- 守望先锋为何如此火爆
- (leetcode刷题)Best Time to Buy and Sell Stock
- k层交叉检验(k-flod cross-validation)
- [编程题]字符串通配
- 使用Socket成功谅解服务器以后获取服务器的IP和域名
- 如何改变Linux文件权限
- Nginx日志深入详解