再次求救,stm32串口,为什么同样的程序,用串口1接收ok,但是串口2接收不了

2019-08-17 05:01发布

原子兄,你也 出来帮忙解决下呗
求救,本人在做32的串口时发现利用串口1接收数据时没有问题,但是串口2就接收不到,为什么。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
单片机入门
1楼-- · 2019-08-17 07:11
问题已解决,没有使用正点原子所给的程序。自加传输方式
郝周周
2楼-- · 2019-08-17 11:33
贴代码啊,不然没法给你分析
单片机入门
3楼-- · 2019-08-17 12:54
 精彩回答 2  元偷偷看……
郝周周
4楼-- · 2019-08-17 14:12
#if EN_USART1_RX   //如果使能了接收  这地方改过来,仔细修改吧usart1改为usart2
xuande
5楼-- · 2019-08-17 18:28

先假设配置是正常的,
main函数中连续不停地发送一个常数,发完一个再接着发,也可以延迟一点时间,一般发 0x55 或者 0xAA,
用示波器观察Txd引脚有没有波形。
如果有波形,看波特率对不对,如果波特率也是对的,说明发送端基本没问题,要去查接收端,如果波特率不对,重新计算。
如果没有波形,说明配置有问题,一般是GPIO、AF方面有问题。

提醒你一下,两个串口的时钟源很可能不一样,要搞清各自的频率,然后才计算波特率常数。


单片机入门
6楼-- · 2019-08-18 00:24
xuande 发表于 2017-6-28 16:10
先假设配置是正常的,
main函数中连续不停地发送一个常数,发完一个再接着发,也可以延迟一点时间,一般 ...

都一样,没有问题,查询发现按照正点原子给的程序一直进不判断最后的标志位

一周热门 更多>