本文共 1328 字,大约阅读时间需要 4 分钟。
如图,STM32F103C8单片机的USART1串口连接MAX3232芯片,原本是用的4个50V 0.1μF的有极性电解电容,串口能在115200波特率下正常收发。
电路图如下:
PCB走线如下:
其中9针串口插座采用的是Altium Designer的Miscellaneous Connectors里面的DSUB1.385-2H9封装。
现在想把这4个电容换成104的无极性独石电容。
将C13替换成104独石电容,其他三个仍然为电解电容,插上测试没有问题。
再替换掉C14,也没有问题。
再替换C15,没有问题。
然而替换C16之后,插上测试,单片机只能接收不能发送。电压表测试MAX3232的2脚大约为2V,6脚为0V。
于是又替换回来,还是一样的结果,只能接收不能发送,6脚电压始终为0V。
断电后电压表一测,发现C16电容两个引脚是通的!这说明拆焊的时候可能不小心把板上的GND的铺铜弄坏了,导致C16的下方和GND以外连接在了一起。于是拆掉电解电容,直接飞线出来接电解电容。
发现,还是不行。这下虽然C16两端没有连通了,但是电压表量出来2脚的电压为2.25V,6脚的电压为0.76V。此时发送和接收都不行了,电脑上的串口调试助手发送什么字符,电脑马上就收到什么字符。。。。没过几分钟,芯片剧烈发烫。
这个时候断电,把芯片取下来,重新拿了一片新的没用过的MAX3232插上去,发现串口完全正常了,既能发又能收。这说明刚才那一弄已经把原来的芯片烧坏了。。。
然后赶紧把最后一个电解电容换成104独石电容,插上电,串口正常收发!
这说明MAX3232的5个电容(C12~16)全部用104独石电容也是可以正常工作的!
MAX3232芯片2脚和6脚为以下电压说明是正常的:
2脚 | 6脚 |
---|---|
6.52V | -6.33V |
4.79V | -2.81V |
4.63V | -2.71V |
4.83V | -3.34V |
不正常的电压:
2脚 | 6脚 |
---|---|
2.27V | 0.81V |
2.25V | 0.76V |
取下来的那颗不能正常工作的芯片,其实也不是真的烧坏了。第二天晚上插上去之后,同样的电路下又能正常工作了。
全部电容替换完毕:
实际上,MAX3232芯片用5个104的瓷片电容也是能够正常运行的。插上去不能正常运行很可能是因为引脚接触不良,或者电容器两脚碰一起了。换一个MAX3232芯片,串口就正常了。
所以,遇到MAX3232不能正常工作的情况,第一时间考虑换芯片。
8脚和10脚接不接VCC都无所谓。这是MAX3232的输入端,接上之后抗干扰要好一些。不过不能完全防止一直按下单片机NRST复位键时,或者ST-Link下载程序的过程中电脑串口收到乱码字符。在单片机的USART_TX上接上外部上拉电阻应该能解决问题。
笔者在面包板上进行反复试验,发现无论用独石电容,还是电解电容,无论8、10脚悬空还是接VCC,都无法避免笔记本电脑休眠后再唤醒,出现串口乱码的问题。上面插了104瓷片电容的PCB板也同样如此。这时只能拔掉USB转串口线的USB端,再插上,才能恢复正常。
STM32F042F6单片机+贴片MAX3232+5个104贴片0805无极性电容一次性测试通过没有问题:
转载地址:https://blog.csdn.net/ZLK1214/article/details/106007274 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!