CAN总线在汽车电子的应用与实现
1汽车电子与CAN总线
随着汽车电子技术的不断发展,汽车上各种电子控制单元的数目不断增加,连接导线显著增加,因而提高控制单元间通讯可靠性和降低导线成本已成为迫切需要解决的问题。为此以研发和生产汽车电子产品著称的德国BOSCH公司开发了CAN总线协议,并使其成为国际标准(ISO11898)。1989年,Intel公司率先开发出CAN总线协议控制器芯片,到目前为止,世界上已经拥有20多家CAN总线控制器芯片生产商,110多种CAN总线协议控制器芯片和集成CAN总线协议控制器的微处理器芯片。在北美和西欧,CAN总线协议已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线,并且拥有以CAN为底层协议专为大型货车和重工机械车辆设计的J1939协议。我国的汽车CAN总线技术起步较晚,但随着现代汽车电子的不断进步发展,其研究和应用正如火如荼的进行中。CAN总线是一种串行多主站控制器局域网总线,是一种有效支持分布式控制或实时控制的串性通讯网络。CAN总线的通信介质可以是双绞线,同轴电缆或光导纤维,通信速率可达1Mbps/40m,通信距离可达10km/40Kbps。由于其通信速率高,可靠性好以及价格低廉等特点,使其特别适合中小规模的工业过程监控设备的互连和交通运载工具电气系统中。
CAN总线有如下基本特点:
废除传统的站地址编码,代之以对通信数据块进行编码,可以多主方式工作;
采用非破坏性仲裁技术,当两个节点同时向网络上传送数据时,优先级低的节点主动停止数据发送,而优先级高的节点可不受影响继续传输数据,有效避免了总线冲突;
采用短帧结构,每一帧的有效字节数为8个,数据传输时间短,受干扰的概率低,重新发送的时间短;
每帧数据都有CRC校验及其他检错措施,保证了数据传输的高可靠性,适于在高干扰环境下使用;
节点在错误严重的情况下,具有自动关闭总线的功能,切断它与总线的联系,以使总线上其他操作不受影响;
可以点对点,一对多及广播集中方式传送和接受数据。
现代汽车典型的控制单元有电控燃油喷射系统,电控传动系统,防抱死制动系统(ABS),防滑控制系统(ASR),废气再循环系统,巡航系统和空调系统,车身电子控制系统(包括照明指示和车窗,刮雨器等)。完善的汽车CAN总线网络系统架构如图1所示。
2CAN节点硬件构架
核心芯片:
选用PHILIPS公司的高性能8位微处理器P89C668。其突出特点如下:
80C51中央处理单元;
内置可ISP(在系统编程)和IAP(在应用编程)的Flash存储器,BootROM可通过串口访问从而升级下载用户程序;
每个机器周期6个时钟周期操作标准,每个机器周期12个时钟周期操作可选,周期12个时钟周期下速度高达33MHz;
8K字节RAM和64K字节FLASH;
4个中断优先级,8个中断源;
自带串行接口序列;
5路可编程的计数器阵列PCA(PWM输出,捕捉/比较,高速输出三种工作方式)。
无论从处理能力,存储容量,还是外围资源以及网络可扩展性方面来评价,P89C668都是一款出色的微处理器,适用工控电子等各个领域。尤其是其8K字节RAM的"海量"内存,更是许多高速存储应用场合的首选。
CAN接口电路:
采用技术成熟应用广泛的SJA1000(CAN控制器),6N137(光电隔离),P82C250(CAN收发器)组成接口电路。需要指出的是,CAN总线(CANH,CANL)两端务必跨接120欧的终端电阻。SJA1000中断引脚接CPU的外中断0引脚
在应用/系统编程电路:
IAP/ISP技术在许多款高性能单片机得到应用,其突出特点是方便快捷的实现程序的下载和更新。P89C668的FLASH空间0XFC00~0XFFFF烧写入1K字节的BootRom程序,上电后可以通过软件和硬件置位方法进入BootRom程序,通过PHILIPS提供的编程软件由串行口通讯就可以实现程序的在线升级(ISP)。当然用户还可以根据需要依据协议,自己编写BootRom程序(IAP)。通过拨码开关硬件置位(ALE,,,P2.6,P2.7),上电后强制进入BootRom程序,烧写程序完毕后拨回原来状态重新上电后就进入用户程序。串行口电平转换芯片用MAX202替代MAX232,其匹配电容只需103瓷片电容。串行数据通讯波特率可达38400bps。
晶振和复位电路:
外接一块工业级的12M振荡芯片作为时钟信号。复位电路采用X25045芯片进行智能控制。X25045芯片将看门狗定时器,电源监控电路和E2PROM功能合三为一。看门狗定时器功能在系统出错期间,经过一个可设置的时间间隔就置位RESET信号。电源监控电路能检测到欠电压状况,在V
- 对TTCAN的分析(05-26)
- 嵌入式Win CE中CAN总线控制器的驱动设计与实现(05-01)
- μC/OS-II的多任务信息流与CAN总线驱动(07-11)
- 采用CAN总线实现DSP芯片程序的受控加载(11-08)
- 基于DSP的电动汽车CAN总线通讯技术设计(10-08)
- 基于DSP的CANopen通讯协议的实现(01-18)