新手入门
- 积分
- 15
- 金钱
- 15
- 注册时间
- 2014-8-30
- 在线时间
- 4 小时
|
30金钱
STM32f103zet6最小系统板,执行原子例程中的串口实验,用USB转串口模块连接PA9、PA10发送接收都没问题。
同样是这个USB转串口模块和主板中间用一对无线透传模块连接就只能接受到主板不停发来的提示信息,向主板发送数据无回显。
这个时候马上把透传模块连主板那一端的RX、TX用导线连接,发送数据后马上返回数据。说明主板端的PA10是有数据的。
但是没进中断。经过多种方式可以确定是UART1没有进中断。但用导线直连可以进中断并且能正确返回数据。
尝试在PA10端加上拉电阻也无效。
现在情况分析是这样:
首先可以肯定是程序没问题原子哥的源码还是值得信赖的,当然主要是因为用导线连接没问题可以确定不是代码问题。
第二透传模块是没问题的,透传模块无论是Rx、TX端直接短接还是分别连两个USB转串口模块数据接受发送都正常。
第三也不会是波特率的问题,因为能正确接收到主板发来的数据。
就是当透传模块一端接USB转串口另一端接STM32主板就有问题主板向USB转串口端发送数据没问题,接受USB转串口模块端的数据收不到。也就是进不了中断。不知是什么问题。
另外,我无意间发现另一个程序(不是原子哥的程序)用的UART2端口发送接受,用UART2时连透传模块又没问题,但那个程序改为UART1时出现同样的问题。
难道STM32主板的UART1和UART2在设计上有什么不一样么。但要怎么处理呢?
|
|