imxiangzi 发表于 2009-3-18 22:23:03

一个Uart同时支持RS232和RS422的问题

我的单片机只要一个Uart,但是我的设备要同时支持RS232和RS422,我把单片机的发送和接收信号线并接MAX232和MAX491的发送和接收信号线,但是这样老是有干扰,马老师有碰到这种情况吗?有什么好的解决方案?

eiglxl 发表于 2009-3-18 22:26:08

发送可以并接,接收要线与,不能直接并。

imxiangzi 发表于 2009-3-18 23:02:38

"线与"是指一种逻辑电路,把几个OC门的输出用线连在一起,只要其中一个输出低电平,全线就被拉到低电平.所有的OC输出为高
全线才被拉到高电平

这能保证数据的逻辑的正确性吗?

henry 发表于 2009-3-19 08:49:34

这个问题我也想知道呀,项目中只有一个UART,但同时要支持232和485,原来想做成跳线的形式,可是需要人工操作,最好是自动检测,呵呵

roasn 发表于 2009-3-19 09:05:39

发送并接,接收接与门,可以稳定工作,我这样做过产品。
当然,如果两边同时发数据那就肯定不行了,这样只能保证只有232或者只有422有数据输入时正常工作。

imxiangzi 发表于 2009-3-19 10:56:36

我的产品也是想只是同一时刻只使用一个口,
不过接收接与门的话,当使用其中一个端口的时候,另一个端口的的信号没有对使用中的端口的信号有影响吗?
比如我使用422口传输数据,422传来一个逻辑“1”,这个时候232的接收引脚刚好有一个逻辑“0”的干扰进来,那我的CPU接收到的是错误的数据逻辑“0”!
你的产品有没有出现这种错误?
另外总感觉串口有干扰是常用的事。你不使用他也不能保证接收的引脚永远为高电平。

hetao7241 发表于 2009-3-19 11:49:10

好象用 两个二极管就解决问题了

imxiangzi 发表于 2009-3-19 15:35:56

对于接收端,我用两个二极管构成也与门,CPU接收数据是正常的,
发送数据一开始是正常的,过一两分钟就烧掉,不是232就是422.这又是什么原因呢?

ljgvictory 发表于 2009-3-19 16:50:21

MARK

hetao7241 发表于 2009-3-20 15:39:50

不会吧,我之前都是这样用的,没有发现问题.

ganghu1111 发表于 2009-3-21 11:23:20

4066双切开关。。。。要不在单片机再模拟一个UART

ilikemcu 发表于 2009-3-21 11:33:11

1楼的线与可行。

这个方案唯一的问题是:当RS232和RS422两个端口同时给你发数据时,就乱套了.............

如果速率不高,可以用软件模拟一个出来,这样就不怕打架了。

imxiangzi 发表于 2009-3-21 23:19:49

我的232芯片是5V的
422芯片是3.3V的,cpu是3.3V的,估计是这个电压的问题

hetao7241 发表于 2009-3-22 07:27:40

估计楼上是这个原因,我昨天又需要做一批产品,将主机点了一下午,232和485同时接上,只用一个发送,当然是两个接收,没有问题.

jjldc 发表于 2009-3-22 09:28:18

建议:
1. 232和422的ttl侧RX管脚 做or运算
2. 将232和422接口做在同一个DB9接口上,分布在不同引脚,这样能保证同时只可以使用一种接口
保险起见,建议还是使用开关决定用哪种

imxiangzi 发表于 2009-3-25 22:56:01

说出来惭愧!原来是串口线接发送那根线触不良!
晕死!

syauxwm 发表于 2011-5-5 17:55:05

mark

bluestone 发表于 2011-5-13 17:13:18

做个记录

taocongrong 发表于 2011-12-14 21:42:33

xiaoxing 发表于 2012-4-20 22:09:55

baw56                        

langxing08 发表于 2012-7-20 13:55:31

很纳闷,你为什么不用有2个串口的单片机呢?
页: [1]
查看完整版本: 一个Uart同时支持RS232和RS422的问题