现场总线CANbus与RS-485之间透明转换的实现
出处:kan128 发布于:2007-12-22 13:41:09
1 CANbus简述
CAN现场总线技术是德国BOSCH公司于80年代初为解决现代汽车业众多的控制与测试仪器之间的数据交换而开发,目前已逐步应用到其它领域的一种符合国际标准的串行数据通信协议。CAN的主要技术特点有:
(1)对等网络结构,网络上任意节点可在任意时刻向网络其它节点发送信息,不分主从,通信方式灵活。
(2)采用非破坏性总线仲裁技术,网络中的节点可以分成不同的优先级,当多个节点同时向网络上传送信息时,优先级低的节点主动暂停数据发送,而优先级高的节眯可不受影响地继续传送数据。之后,按优先级高低,其它节点在总线空闲时依次进行被暂停的数据传送,有效地避免了总线冲突。
(3)每一帧的有效字节数多为8个,帧传送时间短,受干扰概率小,重发时间短。每一帧信息都有CRC校验及其它检错措施,通信误码率低。
(4)网络节点的错误严重的情况下,具有自动关闭总线接口的功能,避免影响总线上的其它节点的正常操作。
(5)通信距离远达10km(5kB/s),通信速率可达到1MB/s(40M),节点数目实际可达110个。通信介质采用双绞线,也可用光纤。
2 实现方法
CAN 现场总线与RS-485总线的主要区别是:CAN总线是以帧为单位进行数据通信的,且每帧均携带对应的ID标示符,而RS-485是以字节为单位进行数据通信,不带任何其它附属信息。如果不考虑帧中的ID标示符,那么这二种总线传输的信息就可以认为完全相同。考虑到绝大多数应用CAN总线的场合都不可能分配完系统中的ID标示符资源,因而在系统中可以另分配一至多个ID标示符给RS-485总线数据,即给总线透明转换电路所用,收、发数据的ID标识符可以不相同。CAN总线系统中的公用主控设备一般被设置成直通状态,它可通过发送、接收具有不同ID标示符的不同数据帧,方便地对网络中的各种设备进行管理和控制。对那些纯粹靠帧数据本身而忽略ID标志符的系统来说,这种不同总线之间的转换更加简单。
实现二种总线之间的透明转换的基本过程是这样的:电路加电进入正常状态后,首先以电路中保存的参数(如未初始化则以缺省参数)对二个总线通信端口分别进行初始化,并将所有通讯端口设置成中断接收工作方式,在启动内部看门狗(SWatchdog)后,电路等待外来数据的中断。一旦某一总线端口有有效数据进入,电路首先将这些数据读入内部数据缓冲区,置相关内部标志,关闭其它端口的中断,以使接收端数据能及时被接收到。在下一数据到来之前,电路将及时通过另一端口将缓冲区中的数据转发出却,直到缓冲区空。在这种转换过程中,如果数据是自CANBUS一端流入,则电路只将帧内数据读入到缓冲区。相反,则电路在转发数据之前自动按设置将设定ID标示符加到发送信息中,一旦转换过程结束,所有端口又被允许中断接收。电路中缓冲区一般可配置8k~32K字节的静态 RAM。
3 实际电路
图2 是一种可选的线路原理示意图。电路中使用的单片机是ATMEL传颂的AT89S8252,它是一种内带8K Flash RAM、2K EEPROM、同时内嵌独立的硬件Watchdog电路,工作主频为24MHz的新型单片机。所配数据缓冲器62256为32K字节的静态RAM。配置较大缓冲区的明显好处是提高了对二种不同速率总线的适应能力。图中RS232口是专用来设置二总线端口的工作参数,所设参数均保存在CPU的2K EEPROM中。另外,为提供线路的可靠性,对CANBUS端采和了电隔离措施,RS-485端所使用的MAX1480也是一种内部电隔离的芯片。图中 VCC与VCC1为相互隔离的二组5V电源。
对于那些对总线响应速率要求比较荷刻的场合,可采用双CPU控制电路,即每个CPU分别负责一端总线的通信事务。数据缓冲区仍采用公用的单口或双口RAM。相应的控制算法必须增加一些有关对公共数据区的管理操作,在此不做详述。
以上电路多适用于二种总线并存于同一系统的场合,以实现二种总线之间的有机结合,使新老设备能很好地同时运行,节省系统开支。这种透明转换电路在已研制的分布式数据采集系统中应用以后,效果良好。
对以上电路稍做修改,即将MAX1480换成MAX232芯片就可设计出一种能在CAN现场总线与RS-232之间实现透明转换的电路。这种电路可用于那些需要用便携机与现场设备之间实现通信(如现场调试等)的场合,因为目前便携机一般只配RS-232接口。另外,如将电路的二个总线端口设计成相同的接口,那么它还可以用在使用同一种总线,但不同的区域却有不同通信速率的应用场合。
对于那些首次接触CANBUS技术的开发人员来说,以上电路还是一种很好的端点开发辅助设备,即开发人员只要对该电路设置合适的端口参数,并将用户电路与之连接好后,开发人员即可在一相对熟悉的环境下专心开发自己的应用电路。
下一篇:典型的嵌入式系统设计
版权与免责声明
凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。
本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。
如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
- 嵌入式架构抉择:x86 与 ARM 深度剖析2026/7/8 16:24:24
- 嵌入式单片机全知道:发展历程、功能应用与学习窍门2026/7/7 15:56:28
- 深入剖析常见的嵌入式处理器架构2026/7/3 16:24:09
- 全面解析常见嵌入式处理器架构特点与应用2026/6/29 16:22:12
- 通过高性能 MCU 与集成外设,破解现代嵌入式设计难题2026/6/10 15:09:13









