我在做一个实验,想把CAN接口变成TTL电平,然后再变成CAN接口电平,从而使两个口正常通讯。
两端都是CAN总线。即CANH1,CANL1;CANH2,CANL2; 怎么用2个82C250(或者再加一个CPLD或FPGA,即加一部分数字电路)把它们连接起来,以实现正常通讯。
我最初想的是:一个80C250把CANH1,CANL1变成TXD1,RXD1; 另一个80C250把CANH2,CANL2变成TXD2,RXD2; 然后把 RXD1-TXD2, RXD2-TXD1。
实际结果是行不通。
但是我见到有人可以利用一个CPLD来处理TXD1,TXD2,RXD1,RXD2之间的关系来实现中继。
我想问:从简单硬件上来说,RXD1-TXD2,RXD2-TXD1没有错误。 但为什么会错?是因为CAN协议和CAN工作原理导致的?
另外,大家有什么想法?能不能说说? |