基于SJA1000的CAN总线系统智能节点设计
发布时间:2008/5/27 0:00:00 访问次数:560
摘要:can总线上的节点是网络上的接收和发送站。智能节点能通过编程设置工作方式、id地址、波特率等参数。它主要由单片机和可编程的can通信控制器组成。本文介绍这类节点的硬件设计和软件设计。软件设计包括sja1000的初始化、发送和接收等应用中的最基本的操块子程序。 关键词:总线 节点 can控制器 引言 can(controller area network)总线,又称控制器局域网,是bosch公司在现代汽车技术中领先推出的一种多主机局域网。由于其卓越的性能,极高的可靠性,独特灵活的设计和低廉的价格,现已广泛应用于工业现场控制、智能大厦、小区安防、交通工具、医疗仪器、环境监控等众多领域。can已被公认为几种最有前途的现场总线之一。can总线规范已被iso国际标准组织制订为国际标准。can协议也是建立在国际标准组的开放系统互联参考模型基础上的,主要工作在数据链路层和物理层。用户可在其基础上开发适合系统实际需要的应用层通信协议,但由于can总线极高的可靠性,从而使应用层通信协议得以大大简化。 can总线与其它几种现场总线比较而言,是最容易实现、价格最为低廉的一种,但其性能并不比其它现场总线差。这也是目前can总线在众多领域被广泛采用的原因。节点是网络上信息的接收和发送站。所谓智能节点是由微处理器和可编程的can控制芯片组成,它们有两者合二为一的,如芯片p8xc59;有如本文介绍的独立的通信控制芯片与单片机接口。后者的优点是比较灵活。当然,也有不要微处理器的节点。下面以can通信控制器sja1000为例,对can总线系统智能节点硬件和软件设计作一下全面的介绍。 一、can通信控制器sja1000功能简介 can的通信协议主要由can控制器完成。can控制器主要由实现can总线协议的部分和实现与微处理器接口部分的电路组成。对于不同型号的can总线通信控制器,实现can协议部分电路的结构和功能大多相同,而与微处理器接口部分的结构和方式存在一些差异。这里主要以sja1000为代表对can控制器的功能作一个简单介绍。 sja1000是一种独立can控制器。它是philips公司的pca82c200 can控制器的替代产品。sja1000具有basic can和peli can两种工作方式。pelican工作方式支持具有很多新特性的can 2.0b协议。 sja1000在软件和引脚上都是与它的前一款pac82c200独立can控制器兼容的(sja1000引脚功能如表1所列),在此基础上增加了很多新的功能。为了实现软件兼容,sja1000采用了两种工作方式:basic can方式(pca82c200兼容方式)和peli can方式(扩展特性方式)。工作方式通过时钟分频寄存器中的can方式位来选择。上电复位默认工作方式是basic can方式。basic can和pelican方式的区别如下: 在pelican方式下,sja1000有一个重新设计的含很多新功能的寄存器组。sja1000包含pca82c200中的所有位,同时增加了一些新的功能位。pelican方式支持can2.0b协议规定的所有功能(29位的标识符)。
表1 sja1000引脚功能 符 号 引 脚 功 能 ad0ad7 2,1,2823 地址/数据复用总线 ale 3 ale信号(intel方式)或as信号(motorola方式) cs 4 片选输入,低电允许访问sja1000 rd 5 微控制器的读信号(
摘要:can总线上的节点是网络上的接收和发送站。智能节点能通过编程设置工作方式、id地址、波特率等参数。它主要由单片机和可编程的can通信控制器组成。本文介绍这类节点的硬件设计和软件设计。软件设计包括sja1000的初始化、发送和接收等应用中的最基本的操块子程序。 关键词:总线 节点 can控制器 引言 can(controller area network)总线,又称控制器局域网,是bosch公司在现代汽车技术中领先推出的一种多主机局域网。由于其卓越的性能,极高的可靠性,独特灵活的设计和低廉的价格,现已广泛应用于工业现场控制、智能大厦、小区安防、交通工具、医疗仪器、环境监控等众多领域。can已被公认为几种最有前途的现场总线之一。can总线规范已被iso国际标准组织制订为国际标准。can协议也是建立在国际标准组的开放系统互联参考模型基础上的,主要工作在数据链路层和物理层。用户可在其基础上开发适合系统实际需要的应用层通信协议,但由于can总线极高的可靠性,从而使应用层通信协议得以大大简化。 can总线与其它几种现场总线比较而言,是最容易实现、价格最为低廉的一种,但其性能并不比其它现场总线差。这也是目前can总线在众多领域被广泛采用的原因。节点是网络上信息的接收和发送站。所谓智能节点是由微处理器和可编程的can控制芯片组成,它们有两者合二为一的,如芯片p8xc59;有如本文介绍的独立的通信控制芯片与单片机接口。后者的优点是比较灵活。当然,也有不要微处理器的节点。下面以can通信控制器sja1000为例,对can总线系统智能节点硬件和软件设计作一下全面的介绍。 一、can通信控制器sja1000功能简介 can的通信协议主要由can控制器完成。can控制器主要由实现can总线协议的部分和实现与微处理器接口部分的电路组成。对于不同型号的can总线通信控制器,实现can协议部分电路的结构和功能大多相同,而与微处理器接口部分的结构和方式存在一些差异。这里主要以sja1000为代表对can控制器的功能作一个简单介绍。 sja1000是一种独立can控制器。它是philips公司的pca82c200 can控制器的替代产品。sja1000具有basic can和peli can两种工作方式。pelican工作方式支持具有很多新特性的can 2.0b协议。 sja1000在软件和引脚上都是与它的前一款pac82c200独立can控制器兼容的(sja1000引脚功能如表1所列),在此基础上增加了很多新的功能。为了实现软件兼容,sja1000采用了两种工作方式:basic can方式(pca82c200兼容方式)和peli can方式(扩展特性方式)。工作方式通过时钟分频寄存器中的can方式位来选择。上电复位默认工作方式是basic can方式。basic can和pelican方式的区别如下: 在pelican方式下,sja1000有一个重新设计的含很多新功能的寄存器组。sja1000包含pca82c200中的所有位,同时增加了一些新的功能位。pelican方式支持can2.0b协议规定的所有功能(29位的标识符)。
表1 sja1000引脚功能 符 号 引 脚 功 能 ad0ad7 2,1,2823 地址/数据复用总线 ale 3 ale信号(intel方式)或as信号(motorola方式) cs 4 片选输入,低电允许访问sja1000 rd 5 微控制器的读信号(