![b97f51fb25285830119ab4c4637d87cd.png](https://i-blog.csdnimg.cn/blog_migrate/316700a6afbc1e9281abfca7d24b520e.jpeg)
stm32 USART串口在我们的实际开发中是经常会用到的一个一项技术,所以对于stm32串口的学习还是要细致些的,所以今天我们就来看一下stm32 USART串口的应用,先通过一些文字和简单的代码来给大家大概的过一遍,然后还是通过一些视频资料来给大家展示细节方面的东西。
下面我就给大家分为几个点来给大家简单分析一下。
一、串口使用:
原则:尽量中断中不要有延时(比如自定义delay 和自定义printf串口打印,明显找事啊这么慢能不发生溢出error嘛),接收和发送尽量分开处理
1.串口发送数据丢失:
1)通常是因为发送之前未检测TC状态位之前是否处于发送完成标志导致,关于STM32之·的测试程序来讲会导致第一个字符丢失,之后都完全正常。
因此发送一串数据的逻辑必须按照先检测TC再发送字符的顺序进行.即:
void Usart1_Send_Data(u8 *buf,u32 len)
{
u32 i;
for(i = 0;i
{
while(USART_GetFlagStatus(USART1,USART_FLAG_TC) == RESET) ; //
USART_SendData( USART1,*(buf+i));
}