STM32F107的串口通信总结

              STM32F107的串口通信总结函数


STM32F107的串口通信总结ui

 

1.   STM32的通常规律,首先要使用串口必先使能串口时钟,好比串口1: RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);  spa

2.   串口使用的GPIO口设置: 首先使能GPIO的时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);其次GPIO端口的模式配置(复用推挽输出、浮空输入等)ip

3.   主程序有中断的要使用中断配置,注意中断的抢占优先级和子优先级,串口的通常排次位。it

初始化中断。基础

4.   串口配置  :  波特率、字节长度 、中止位、奇偶校验、模式、硬件流控制等配置

初始化串口、串口接收中断使能、串口使能。硬件

5.   接收中断服务函数编写,   voidUSART1_IRQHandler(void)程序

通常来讲,接收中断服务函数要考虑的问题比较多,主要有一下几点:  接收数据的正确性(某字节的校验、包括CRC校验等),数据长度的正确性(是否接收完整),数据接收过程当中忽然出现中断或者死机的防御措施等。总结

6.    串口函数的发送和接收函数  USART_SendData(USART_TypeDef*USARTx, uint16_t Data);

uint16_tUSART_ReceiveData(USART_TypeDef* USARTx);  

7.   串口的状态标志  FlagStatusUSART_GetFlagStatus(USART_TypeDef* USARTx, uint16_t USART_FLAG);

清除串口的中断标志 voidUSART_ClearITPendingBit(USART_TypeDef* USARTx, uint16_t USART_IT);

 

 

------ 串口章节算是比较复杂的,涉及的内容比较多,也是重点。学好了为之后的485通信作好基础。