通用异步收发器(UART)
同步是指发送方在发送数据前需要发送一个特殊的信号
而异步是制发送方的数据包括开始和结束位标志
串口设置的一般步骤可以总结为如下几个步骤:
1) 串口时钟使能,GPIO 时钟使能
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE)
2) 串口复位
void USART_DeInit(USART_TypeDef* USARTx);//串口复位
3) GPIO 端口模式设置
4) 串口参数初始化
void USART_Init(USART_TypeDef* USARTx, USART_InitTypeDef* USART_InitStruct);
串口参数
Bound 波特率
WordLength 字节长度格式 8bit或者9bit
StopBits 停止位
Parity 奇偶校验位
HardwareFlowControl 硬件数据流控制
Mode 串口模式 (收、发 收发同时进行)
5) 开启中断并且初始化 NVIC(如果需要开启中断才需要这个步骤) 需要在main函数中设置中断分组
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
void USART_ITConfig(USART_TypeDef* USARTx, uint16_t USART_IT, FunctionalState NewState)
开启某个串口的某个状态中断使能(例如发送结束后开始中断)
6) 使能串口
USART_Cmd(USART1, ENABLE);
7) 编写中断处理函数
if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET)
判断是否接受中断,如果是串口接受中断,则读取串口接受到的数据: Res =USART_ReceiveData(USART1);//(USART1-》DR); //读取接收到的数据
串口初始化函数USART_Init(u32 bound)
。我们用标号①~⑥标 示了顺序:
① 串口时钟使能,GPIO 时钟使能
② 串口复位
③ GPIO 端口模式设置
④ 串口参数初始化
⑤ 初始化 NVIC 并且开启中断
⑥ 使能串口
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !