目录
1.USART模块简介
2.USART的基本使用
3.移位寄存器和串并转换
数据寄存器里整体发送或者接收就是并
TX或者RX一个一个比特位的发送或者接收就是串
通过中间的移位寄存器转换
并转串
比如通过USART模块发送数字100,把100写入发送数据寄存器01100100,USART模块会自动的把这个数据移动到移位寄存器,下面就变成了01100100,然后上面的数据寄存器就清空了,接下来移位寄存器每一个周期就会往后移动一位,最终形成发送的波形。
串转并
对侧会通过Rx引脚把波形发过来
4.数据帧格式的设置方法
串口输入帧的格式
5.波特率的设置方法
波特率是每秒钟最多传输多少位,所以波特率越高传输越快
6.编程接口
串口初始化
#include "stm32f10x.h" // Device header
int main(void)
{
//串口初始化
//USART模块的总开关
USART_Cmd(USART1,ENABLE);
//开启USART1时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);
//定义结构体
USART_InitTypeDef USART_InitStruct;
USART_InitStruct.USART_BaudRate=115200;
USART_InitStruct.USART_Mode=USART_Mode_Tx | USART_Mode_Rx; //双向
USART_InitStruct.USART_WordLength=USART_WordLength_8b; //8数据位
USART_InitStruct.USART_Parity=USART_Parity_No; //无校验位
USART_InitStruct.USART_StopBits=USART_StopBits_1; //1位停止位
USART_Init(USART1,&USART_InitStruct);
while (1)
{
}
}