前注:本文章主要讲解【固件库(标准库)】
内容为 '_Snake_'编写,日常学习总结,内容如有不足、不妥之处请私信告知,谢谢!
硬件原理
串口原理
配置步骤
????????先配置好GPIO和NVIC
NVIC实验????????GPIO实验? TX引脚配置为复用推挽输出? ?RX引脚配置为浮空输入
? ? ? ? 创建串口初始化结构体
USART_InitTypeDef USART_InitStructure;
? ? ? ? 赋值给初始化结构体
USART_InitStructure.USART_BaudRate = bound;//串口波特率
USART_InitStructure.USART_WordLength = USART_WordLength_8b;//字长为8位数据格式
USART_InitStructure.USART_StopBits = USART_StopBits_1;//一个停止位
USART_InitStructure.USART_Parity = USART_Parity_No;//无奇偶校验位
USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;//无硬件数据流控制
USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; //收发模式
? ? ? ? 初始化结构体
USART_Init(USART1, &USART_InitStructure);
? ? ? ??启动指定的USART中断
USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);
? ? ? ? 使能串口(UE位置)
USART_Cmd(USART1, ENABLE); //使能串口1
? ? ? ? 编写中断服务函数
?
void USART1_IRQHandler(void)
|