CAN总线概述
CAN总线即操控器局域网络,是现场总线之一,由德国Bosch公司为轿车的监测、操控体系而规划的总线式串行通讯网络,适合于工业进程操控设备和监控设备之间的互联。是一种多主方法的串行通讯总线,根本规划规范要求有高的位速率,高抗电磁搅扰性,并且可以检测出发生的任何过错。首要应用于轿车电操控体系、电梯操控体系、安全监控体系、医疗仪器、纺织机械、船只运送等方面。CAN具有下下列首要特性:①低成本;②远距离传输(长达lOKm);③高速的数据传输速率;④可根据报文的ID决议接纳或屏蔽该报文;⑤牢靠的过错处理和检错机制;⑥发送的信息遭到损坏后,可主动重发;⑦节点在过错严峻的情况下具有主动退出总线的功用。
嵌入式体系的CAN接口电路
图2是嵌入式微处理器S3C44BOX的CAN接口电路图。如图所示,ARM和SJA1000以总线方法衔接,因为ARM信号为3.3伏,而CAN总线操控器电平为5伏,所以一切信号之间均需求电平转化,本例中使用了QS34X245作为电平转化芯片。 QS34X245为80引脚的双例直插芯片,它既有电平转化功用(5V变到3.3V),又是一个总线开关和阻隔器材。QS34X245内供给一组32位高速CMOS兼容的总线开关,当输出使能端OEn(n为1~4)为低电平时,开关通,连能总线A和总线B;当输出使能端OEn为高电平时,则开关断开,总线 A和总线B阻隔。OE1操控总线A和总线B的低8位(即A7~A0和B7~B0),OE2操控A15~A8和B15~B8,OE3操控A23~A16和 B23~B16,OE4操控A31~A24和B31~B24。因为ARM总线非复用,而SJA1000总线复用,所以有必要经过逻辑发生地址锁存信号 ALE,在本例中该信号由芯片GAL22V10发生。SJA1000的片选、读写信号均选用arm总线信号,ALE信号由读写信号和地址信号经过GAL发生。在写SJA1000寄存器时,首先往总线的一个地址写数据,作为地址,读写信号无效,ALE改变发生锁存信号;然后写别的一个地址,读写信号有用,作为数据。上述逻辑彻底经过GAL发生。此外,CAN总线需求在两线问加一个120欧电阻。