打印
[CAN-bus/DeviceNet]

请教:附件的CAN集线器方案是否可行

[复制链接]
3512|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
enjoyic|  楼主 | 2010-4-12 16:13 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
总的思路是:两路的CAN总线信号收下来 与 了之后给第三路发送出去,在发送之前用 或门 控制。
如果第三路外部是显性电平“0”,则第三路发送隐形电平“1”。
加入或门控制,主要是防止显性电平自锁。

小弟CAN刚入门,还请各位大侠不吝赐教,看看存在什么问题。
主要担心逻辑门延时对CAN总线仲裁有影响,但是在50Kbps一下的速度,是否有问题呢?

CAN集线器方案.jpg (45.4 KB )

CAN集线器方案.jpg

相关帖子

沙发
lnskngdc| | 2010-4-13 16:32 | 只看该作者
晕了,CAN是用差分信号表示“0”或者“1”的,不是单纯的高低电平

使用特权

评论回复
板凳
enjoyic|  楼主 | 2010-4-13 17:15 | 只看该作者
CAN收发器数字端的TXD和RXD不是'0''1'位流么?

使用特权

评论回复
地板
yqzhou1980| | 2010-5-14 15:40 | 只看该作者
感觉不行吧。

使用特权

评论回复
5
ruyeecheung| | 2010-5-26 13:04 | 只看该作者
没看懂

使用特权

评论回复
6
xhtxzxw| | 2010-6-24 00:56 | 只看该作者
此0此1,非彼0彼1也!
显性状态,隐性状态,嘿嘿,你那门用这里肯定不行,别琢磨了。

使用特权

评论回复
7
hankchen86| | 2010-6-30 16:20 | 只看该作者
我是刚开始学CAN的,我觉得如果不考虑门电路的延时的话,这个电路应该是能行的吧,因为门电路接收到的信号是从CAN驱动器输出的信号,而不是差分信号。
如果说错了,还请大家指教。

使用特权

评论回复
8
airwill| | 2010-8-9 13:00 | 只看该作者
此法不可行.
楼主真是有创议, 先鼓励一个!
集线器应该根据数据包来进行转发, 而不是电平, 具体地说吧.
"如果第三路外部是显性电平“0”,则第三路发送隐形电平“1”。加入或门控制,主要是防止显性电平自锁。"
如果真的发生这样的情况时,  楼主目的是 1,2 有数据发送, 发现 3 也有数据发送, 等待 3 完成.
但所用的逻辑门却等 3 为高时就发出去了, 数据包发送中自然有 0,1 的逻辑串的, 这时候, 不完整的 1,2数据 干扰了 3. 导致通信瘫痪.

使用特权

评论回复
9
enjoyic|  楼主 | 2010-11-22 13:39 | 只看该作者
谢谢楼上的答复,可是我还是不太明白你的意思。1,2有数据串的时候,当然要在3上反映出来了。
是要靠CAN总线控制器的来控制各个点的退让防冲突

使用特权

评论回复
10
airwill| | 2010-12-3 20:51 | 只看该作者
还是存在信号互锁问题.
为了说明问题, 三个收发器, 或门和与门都从左到右编号为 1,2,3.
假设, 首先总线1 出现显性电平, RXD1 出现低电平, 于是总线2,3  出现显性电平;
看收发器2, 这时必然 RXD2 会出现低电平, 而这个高电平又导致总线2 出现隐性电平, 隐性电平又导致 RXD2 出现高电平, 然后总线2 又出现显性电平... 振荡起来了, 通信瘫痪了.

使用特权

评论回复
11
yongwong9901| | 2017-11-7 12:02 | 只看该作者
mark!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

34

主题

63

帖子

0

粉丝