CAN 总线特点介绍 CAN 总线作为一种工业界的流行总线广泛应于工业自动化、多种控制设备、交通工具、医疗仪器以及建筑、环境控制等各个行业中,它是是一种多主机局域网,所以这样一种总线的潜力是很巨大的,接下来将写几篇入门的小文章,来介绍一下 CAN 的学习和开发方法,主要是配合我们的开发板,其实入门还是很容易的,通过这几篇文章如果你能建立起一个初步的概念,能够自己搭起自己的一个节点(包括硬件和软件),那就说明你学会了CAN 的基本开发技术,实际的工业现场CAN的开发不是那么简单,包括很多要考虑的因素如隔离、可靠性等,但是我们作为初学者建立起基本的概念还是很重要的,基础一旦打好,等到了实际工作中,就会如鱼得水,所以希望正要或是想开发CAN 的朋友们能够喜欢这一系列小文章,如果某一篇甚至是某一句话能够给你带来启迪,那将是我最最高兴的,希望大家踊跃评论或是参与讨论,给我一下写下去的信心,呵呵,可以加入我们的群。 下面正题正式开始喽!第一篇,当然要介绍一下什么是“能”总线( CAN 总线)呵呵 CAN 总线的特点 CAN(Controller Area Network)总线,也称控制器局部网,属于现场总线的范畴,它是一种有效支持分布控制或实时控制的串行通信网络。由于采用了许多新技术及独特的设计,CAN 总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。其特点如下: CAN 为多主工作方式,网络上任何一个节点均可在任意时刻主动地向 网络上其它节点发送信息,而不分主从。 在报文标识符上,CAN 上的节点分成不同的优先级,可满足不同的实时要求,优先级高的数据最多可在134us 内得到传输。 CAN 采用非破坏总线仲裁技术。当多个节点同时向总线发送信息出现冲突时,优先级低的节点会主动地退出发送,而优先级高的节点可以不受影响的继续传输数据,从而大大节省了总线冲突的仲裁时间。尤其是网络负载很重的情况下,也不会出现网络瘫痪情况(以太网则可能)。 CAN 节点只需通过报文的标识符滤波即可实现点对点、一点对多点及全局广播等几种方式传送接收数据。 CAN 的直接通信距离最远可达10km(速率5kbps 以下);通信速率最高可达1Mbps(此时通信距离最长为40m)。 CAN 上的节点数主要取决于总线驱动电路,目前可达110 个。在标准帧的报文标识符有11 位,而在扩展帧的报文标识符(29 位 )个数几乎不受限制。 报文采用短帧格式,传输时间短,受干扰概率低,保证了数据出错率极...