原因
板载232芯片导致rx一直为高电平,ch430g驱动能力太弱无法拉低,导致收不到数据
硬件连接
A40I的串口通过CH430G连接到电脑
现象
- 电脑端发数据A40I接收不到
- A40I发送数据电脑可以收到
排除
操作 | 结果 | 结论 |
---|---|---|
主板向电脑发送数据 | 正常 | 波特率正常 |
主板做回环测试 | 正常 | 主板硬件正常,软件驱动正常 |
usb转ttl做回环测试 | 正常 | usb转ttl正常 |
主板连着线做回环测试 | 正常 | 连接线正常 |
找一个新单片机接主板做收发测试 | 正常 | 怀疑usb转ttl驱动能力不够 |
重新看了原理图
发现中间接了一个232芯片,怀疑232芯片导致异常
吹掉芯片测试,收发【正常】
进一步测试,悍回232芯片,加了一个2k的上拉,测试收发异常
询问厂家,厂家回复是不是拉不高或者拉不低
一语惊醒梦中人,正常情况下灌电流的驱动能力肯定是比拉电流要强,所以一开始我就默认他是拉不高
把上拉电阻改成下拉测试,收发正常
总结
这里有点想当然了,一直认为是无法拉高导致,以后遇到不熟悉的应该要先测一下默认电压