[求助] stm32f407串口通讯问题

2019-07-20 00:39发布

stm32f407采用USART1口,向上位机持续发出数据,1秒钟发送20~40帧,每帧46个字节(这个发送没有问题),接收数据为中断接收。
上位机向STM32发送数据,stm32f407接收到的数据10次有3,4次是接收不全的,上位机发送的数据没有问题,接收中断接收的数是少的。
后来再换别的方式测试,将STM32F407的发送,在定时器中断里发送和在while循环里发送,甚至采用了DMA发送,接收中断接收到上位机发下来的数据还是有不全的时候,一般不全的时候接收到的数据基本就1个字节。
如果stm32f407不持续向上位机发送数据,那么接收中断接收到的数据是没有问题的,完全可以正常接收。
谁能分析下是哪里的问题。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
houmousvodka
1楼-- · 2019-07-20 03:47
 精彩回答 2  元偷偷看……
houmousvodka
2楼-- · 2019-07-20 04:00
说的再简单点,就是USART口在长时间的持续发数的同时,接收到的数不完整。
正点原子
3楼-- · 2019-07-20 08:35
 精彩回答 2  元偷偷看……
houmousvodka
4楼-- · 2019-07-20 09:07
正点原子 发表于 2019-7-10 01:30
简化代码试试
你的中断服务函数是否精简了?

没有精简,用的是优化等级为0的编译
正点原子
5楼-- · 2019-07-20 14:03
houmousvodka 发表于 2019-7-10 09:08
没有精简,用的是优化等级为0的编译

精简一下试试
wsy54
6楼-- · 2019-07-20 19:34
 精彩回答 2  元偷偷看……

一周热门 更多>