请教关于一个uart口驱动2个设备的问题,以及逻辑电平转换问

[复制链接]
3298|5
 楼主| xiezonglin 发表于 2007-11-7 20:55 | 显示全部楼层 |阅读模式
&nbsp;&nbsp;&nbsp;&nbsp;问题是这样的,我的单片机只有一个uart口,但是我同时要驱动一个max232芯片和一个使用uart口的无线芯片。<br />&nbsp;&nbsp;&nbsp;&nbsp;单片机端的TXD同时驱动2个设备没有问题,问题在于,单片机的RXD端同时接2个设备会产生电平冲突,我希望不用到专用的数字开关,一个是考虑复杂度和成本,第二是我希望这2个设备不用设置就都可以接收和发送(不会同时接收)。<br />&nbsp;&nbsp;&nbsp;&nbsp;我将max232的ROUT端(单片机的RXD端)接了个二极管(1N5819)和下拉电阻,虽然可以使用,但经常有丢数据的现象发生,是不是我使用的二极管有问题?还是方法不对?<br />&nbsp;&nbsp;&nbsp;&nbsp;还有就是无线设备用的是3.3v,而单片机因为一些原因必须使用5v供电。如果要用二极管隔离,则电平将下降更多,单片机更难正确的接收数据。有什么解决办法?<br />&nbsp;&nbsp;&nbsp;&nbsp;我曾经用9014和9012搭出逻辑电平转换电路,但结果是逻辑电平转换正常,但是单片机发出的数据在超过300的波特率时转换电路的输出波形就几乎看不到了。是我用的三极管问题?还是方案问题?
 楼主| xiezonglin 发表于 2007-11-7 22:16 | 显示全部楼层

顶,可能关键是电平兼容问题,和串二极管数据丢失问题

  
chunyang 发表于 2007-11-7 23:26 | 显示全部楼层

想可靠应该使用模拟开关或数据选择器

串二极管的方法在此不可靠,3V设备会限制逻辑1电平,加下拉会更劣化,去掉试试。
lyd9614181 发表于 2007-11-13 22:36 | 显示全部楼层

回复

用一个7407就可以啦,任何电路,两个输出(非开漏输出)直接连接肯定是有问题的,因为其输出阻抗很小。如果是开漏输出就没问题啦。用一片7407将两个设备的串口转一下然后再直接并联接单片机的串口就可以啦,这种电路我一直在用
computer00 发表于 2007-11-13 22:44 | 显示全部楼层

可以用一个与门.

  
ddb_21ic 发表于 2007-11-14 20:25 | 显示全部楼层

如果不作控制选择,就是用与门

  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

43

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部