文章目录[隐藏]
前言
做了一块4路3V3TTL转2路485 + 2路232的接口板.
TTL转232用的MAX3232(正品), 电源5V.
做回来, 初步看, 好像是好的.
进一步测试, 发现有问题.2路485是好的, 但是232的2路串口之间有干扰, 引起接收乱码.
232部分的原理图如下:
DIN1, ROUT1, DIN2, ROUT2通过RS0108直接上了MCU的TTL串口.
写了固件程序来测试收发, 发现2个485是好的, 2个232问题现象如下:
- 2路232发送都是好的, 在电脑端端口助手上都能按照9600/N/8/1收到正确的发包.
- 串口3发送时, 串口4不受影响. 但是串口4发送时, 串口3能收到串口4发的内容. 有时, 串口4发送时, 串口3收到乱码.
- 如果串口4不发送, 串口3就不会收到内容.
看起来串口3被串口4干扰了.
现在如果只用MAX3232的一路串口, 就没问题. 但是这样跟同事解释不通啊.
查资料, 大家一般上MAX3232都是用1路串口. 没提到2路串口会干扰之类的问题.
去看力创的串口验证板和我电路的区别. 发现力创的原理图在MAX3232的TTL这端, 2对收发线都上拉了10K电阻.
再看我电路上的485芯片的TTL端, 也上拉了10K电阻. 485电路2路都是正常的.
尝试一下吧, 将MAX3232的TTL的2对收发线都10K上拉.
还好, 以前特意买了直插电阻的样品本, 要不可咋弄…
找出4个10K电阻, 上拉到TTL端的2对收发线上, 又找出一段热缩管隔离好. 然后将4个电阻的另一端都焊在一起, 接在MAX3232的16脚(5V).
再试一下, 好了.
串口4发送, 不影响串口3了.
串口3发送, 一样不影响串口4.
问题解决.
看来信号线上拉电阻可以解决一些杂波小信号的影响.
要是以前同事在产品中用MAX3232整过2路RS232, 扒过来用那多好.
这板子都打第2次样了.
- 第1次初板, 换MAX13487原理图封装时, 和同事的不同, 将AB线拉反了; 1117的输出10uf钽电容封装不对.
- 第2次打样, 解决了第1板的问题. 又测试出MAX3232由于没有在TTL端上拉电阻, 因为接收乱码.
- 这次准备修正接收乱码问题, 打第3次样, 将MAX3232的TTL端的4根线加上拉电阻.
防雷就不加了(2个232口上接的都是我们的设备, 距离很短, 接设备的人都是我们自己人).
版权声明:本文为CSDN博主「LostSpeed」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/LostSpeed/article/details/122388181
前言
做了一块4路3V3TTL转2路485 + 2路232的接口板.
TTL转232用的MAX3232(正品), 电源5V.
做回来, 初步看, 好像是好的.
进一步测试, 发现有问题.2路485是好的, 但是232的2路串口之间有干扰, 引起接收乱码.
232部分的原理图如下:
DIN1, ROUT1, DIN2, ROUT2通过RS0108直接上了MCU的TTL串口.
写了固件程序来测试收发, 发现2个485是好的, 2个232问题现象如下:
- 2路232发送都是好的, 在电脑端端口助手上都能按照9600/N/8/1收到正确的发包.
- 串口3发送时, 串口4不受影响. 但是串口4发送时, 串口3能收到串口4发的内容. 有时, 串口4发送时, 串口3收到乱码.
- 如果串口4不发送, 串口3就不会收到内容.
看起来串口3被串口4干扰了.
现在如果只用MAX3232的一路串口, 就没问题. 但是这样跟同事解释不通啊.
查资料, 大家一般上MAX3232都是用1路串口. 没提到2路串口会干扰之类的问题.
去看力创的串口验证板和我电路的区别. 发现力创的原理图在MAX3232的TTL这端, 2对收发线都上拉了10K电阻.
再看我电路上的485芯片的TTL端, 也上拉了10K电阻. 485电路2路都是正常的.
尝试一下吧, 将MAX3232的TTL的2对收发线都10K上拉.
还好, 以前特意买了直插电阻的样品本, 要不可咋弄…
找出4个10K电阻, 上拉到TTL端的2对收发线上, 又找出一段热缩管隔离好. 然后将4个电阻的另一端都焊在一起, 接在MAX3232的16脚(5V).
再试一下, 好了.
串口4发送, 不影响串口3了.
串口3发送, 一样不影响串口4.
问题解决.
看来信号线上拉电阻可以解决一些杂波小信号的影响.
要是以前同事在产品中用MAX3232整过2路RS232, 扒过来用那多好.
这板子都打第2次样了.
- 第1次初板, 换MAX13487原理图封装时, 和同事的不同, 将AB线拉反了; 1117的输出10uf钽电容封装不对.
- 第2次打样, 解决了第1板的问题. 又测试出MAX3232由于没有在TTL端上拉电阻, 因为接收乱码.
- 这次准备修正接收乱码问题, 打第3次样, 将MAX3232的TTL端的4根线加上拉电阻.
防雷就不加了(2个232口上接的都是我们的设备, 距离很短, 接设备的人都是我们自己人).
版权声明:本文为CSDN博主「LostSpeed」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/LostSpeed/article/details/122388181
暂无评论