打印
[STM32L0]

一样的串口配置,USB_to_TTL的TX数据可以响应AT指令,LPUART不行

[复制链接]
1021|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 Marco-Marco 于 2020-6-14 23:12 编辑

是这样的。我有一个模块通过AT指令控制。通过USB转TTL(CP2102)的TX连接模块RX,发送“AT”+回车(hex: 0x41,0x54,0x0D,0x0A.)然后模块的RX可以正常响应。但通过MCU(STM32L011F4P6)的LPUART的TX发出的数据模块死活不响应。确定一样的数据(0x41,0x54,0x0D,0x0A),确定MCU有发出数据。而且确定是MCU的TX连到模块RX。一样的串口配置:9600,8,none,1


USB to TTL 和模块间的通信。(“AT”+回车(hex: 0x41,0x54,0x0D,0x0A)


MCU发出的TX波形“AT”+回车(hex: 0x41,0x54,0x0D,0x0A)





USB TTL抓出的TX波形电压1.5V,但万用表量3.3V左右。 MCU的一直都是3.3V左右。波特率和实际差不多。所以我2个TX波形都一样的情况下我应该从哪些方面去分析呢。模块可以响应USB TTL的指令,所以本身应该不存在问题。


MCU tx波形.jpeg (275.15 KB )

MCU tx波形.jpeg

使用特权

评论回复
沙发
香水城| | 2020-6-14 15:15 | 只看该作者
输出波形及时序一样,会不会是电平方面的差异导致的?

你说“USB TTL抓出的TX波形电压1.5V,但万用表量3.3V左右”, 这个地方怎么回事?不妨采用相同通道配置对二者测试比较下。

使用特权

评论回复
板凳
Marco-Marco|  楼主 | 2020-6-14 23:23 | 只看该作者
香水城 发表于 2020-6-14 15:15
输出波形及时序一样,会不会是电平方面的差异导致的?

你说“USB TTL抓出的TX波形电压1.5V,但万用表量3.3 ...

应香版主的建议,重新采集了一次。之前应该是示波器设置问题。串口助手CP2102发送AT指令的波形。




MCU发送AT指令的波形。确实是一摸一样。


MCU的RX(模块的TX)是低电平。看了模块的资料,应该是floating的。MCU的RX(PA3)设置为上拉也收不到数据。


模块建议原理图


我的原理图


cubemx lpuart串口配置


不是串口是否有相关驱动能力强弱的说法。另外不知道是不是LPUART跟一般的UART有相关特性差异引起。发出的波形确实是一摸一样的。

使用特权

评论回复
地板
香水城| | 2020-6-15 10:14 | 只看该作者
LPUART我最近也用过,从UART通信讲跟其它通用UART没啥差别。

你如果担心这点,我看L011还有个UART2,你可以基于它做个测试,如果还不行。

建议检查下链接,不要被一些最基础的问题卡住了,包括TX/RX是否接对了。

使用特权

评论回复
5
Marco-Marco|  楼主 | 2020-6-15 11:45 | 只看该作者
嗯,TX,RX肯定反复检测了的。我提供的原理图截图也能看。以前经常接反。准备拿个STM32103C8的串口先测下。

使用特权

评论回复
6
Marco-Marco|  楼主 | 2020-6-15 22:16 | 只看该作者
真相找到了。模块有一个RST引脚。我在MCU的cubemx界面把那个脚配置成输出后就没管它,潜意识里面认为是浮空。其实默认是低电平了。模块一直处于复位状态自然无法响应AT指令。而用USB转TTL模块控制时该脚并没有初始化,所以浮空。

使用特权

评论回复
7
香水城| | 2020-6-15 23:12 | 只看该作者
很好!
很多问题源于我们忽略些小细节了!

使用特权

评论回复
8
Jenghiz| | 2020-6-16 10:23 | 只看该作者
这都不能算是问题,只能算是个大乌龙。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:www.jhe-iot.com

32

主题

155

帖子

2

粉丝