stm32串口通信,只能接收到第一个字节。。。急!!!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了stm32串口通信,只能接收到第一个字节。。。急!!!相关的知识,希望对你有一定的参考价值。

我用的单片机是stm32的,跟上位机通信,方式是485,通信时候,上位机一次发送多个字节,如果是一下子都发,单片机只能收到第一个字节数据。要是上位机发完一个字节后停顿一下,哪怕是1ms,再发下一个字节,下位机也都能收到。

参考技术A 串口接收到数据后处理时间太长所引起。可以吧串口接收中断的处理程序缩短本回答被提问者和网友采纳 参考技术B 中断时间太长。接收了之后保存,中断返回,不要在中断程序中处理数据。 参考技术C 在初始化配置是加上这样一条,我这个是stm32f4的,m3的你自己查一下。
usart_getflagstatus(usart2,
usart_flag_tc);
参考技术D 不把接收处理程序贴出来怎么分析?

stm32串口发送正常,接受只能收到一个字符,求解,急

首先看看信号是不是过来了的,用示波器看看!其次你是怎么接收的,中断?如果是中断那直接改查询接收(只调试串口程序,去掉其他的)。看看能不能收到。一般来说都是中断的问题 参考技术A 问题问的不够详细

以上是关于stm32串口通信,只能接收到第一个字节。。。急!!!的主要内容,如果未能解决你的问题,请参考以下文章

stm32发送数据给上位机用串口调试助手接收为什么只接收到第一个字节数据?

单片机STM32 串口一次能发和接收几个字节数据?大神正解

STM32 串口为啥只能接收发送的部分数据

stm32串口自定义协议接收一串十六进制数据(将其中两个字节转化为十进制数据)+部分串口基础知识

STM32 串口通信基础知识

STM32串口 不用中断方式 接收一个字符串...怎么解决?