常见问题 @-LINK/艾林科网络延长器的常见问题>>

CAN-RS232/RS485的实现方法

发布时间:2010-11-08 16:52:50

答案:

CAN现场总线与RS-485总线的主要区别是:CAN总线是以帧为单位进行数据通信,且每帧均携带对应的ID标示符,而RS-485是以字节为单位进行数据通信,不带任何其它附属信息。如果不考虑帧中的ID标示符,那么这二种总线传输的信息就可以认为完全相同。考虑到绝大多数应用CAN总线的场合都不可能分配完系统中的ID标示符资源,因而在系统中可以另分配一至多个ID标示符给RS-485总线数据,即给总线透明转换电路所用,收、发数据的ID标识符可以不相同。CAN总线系统中的公用主控设备一般被设置成直通状态,它可通过发送、接收具有不同ID标示符的不同数据帧,方便地对网络中的各种设备进行管理和控制。对那些纯粹靠帧数据本身而忽略ID标志符的系统来说,这种不同总线之间 转换更加简单。

实现二种总线之间的透明转换的基本过程是这样的:电路加电进入正常状态后,首先以电路中保存的参数(如未初始化则以缺省参数)对二个总线通信端口分别进行初始化,并将所有通讯端口设置成中断接收工作方式,在启动内部看门狗(SWatchdog)后,电路等待外来数据的中断。一旦某一总线端口有有效数据进入,电路首先将这些数据读入内部数据缓冲区,置相关内部标志,关闭其它端口的中断,以使接收端数据能及时被接收到。在下一数据到来之前,电路将及时通过另一端口将缓冲区中的数据转发出却,直到缓冲区空。在这种转换过程中,如果数据是自CAN-BUS一端流入,则电路只将帧内数据读入到缓冲区。相反,则电路在转发数据之前自动按设置将设定ID标示符加到发送信息中,一旦转换过程结束,所有端口又被允许中断接收。电路中缓冲区一般可配置8k32K字节的静态RAM

下一步您可以:
查看@-LINK/艾林科网络延长器产品 >>
查看网络延长器产品 >>
查看@-LINK/艾林科网络延长器常见问题 >>