微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > STM32串口库函数版例程

STM32串口库函数版例程

时间:11-09 来源:互联网 点击:
STM32F10x Peripherals Interrupt Handlers *////* @brief This function handles USART1 global interrupt request.* @param None* @retval : None*/void USART1_IRQHandler(void) //串口1 中断服务程序{unsigned int i;if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) //判断读寄存器是否非空{ RxBuffer1[RxCounter1++] = USART_ReceiveData(USART1); //将读寄存器的数据缓存到接收缓冲区里if(RxBuffer1[RxCounter1-2]==0x0d&&RxBuffer1[RxCounter1-1]==0x0a) //判断结束标志是否是0x0d 0x0a{for(i=0; i< RxCounter1; i++) TxBuffer1[i] = RxBuffer1[i]; //将接收缓冲器的数据转到发送缓冲区,准备转发rec_f=1; //接收成功标志TxBuffer1[RxCounter1]=0; //发送缓冲区结束符 RxCounter1=0;}}if(USART_GetITStatus(USART1, USART_IT_TXE) != RESET) //这段是为了避免STM32 USART 第一个字节发不出去的BUG { USART_ITConfig(USART1, USART_IT_TXE, DISABLE); //禁止发缓冲器空中断, } }

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top