第7章CAN总线控制器SJA1000
- 格式:ppt
- 大小:4.99 MB
- 文档页数:128
外文资料翻译译文SJA1000 独立的CAN控制器应用指南1 介绍SJA1000是一个独立的CAN控制器,它在汽车和普通的工业应用上有先进的特征。
由于它和PCA82C200 在硬件和软件都兼容,因此它将会替代PCA82C200。
SJA1000有一系列先进的功能适合于多种应用,特别在系统优化、诊断和维护方面非常重要。
本文是要指导用户设计基于SJA1000 的完整的CAN节点。
同时本文还提供典型的应用电路图和编程的流程图。
2 概述SJA1000 独立的CAN控制器有2个不同的操作模式:BasicCAN模式(和PCA82C200)兼容PeliCAN模式BasicCAN模式是上电后默认的操作模式。
因此,用PCA82C200开发的已有硬件和软件可以直接在SJA1000上使用,而不用作任何修改。
PeliCAN模式是新的操作模式,它能够处理所有CAN2.0B 规范的帧类型。
而且它还提供一些增强功能使SJA1000能应用于更宽的领域。
2.1 CAN 节点结构通常,每个CAN 模块能够被分成不同的功能块。
SJA1000使用[3] [4] [5]最优化的CAN收发器连接到CAN 。
收发器控制从CAN控制器到总线物理层或相反的逻辑电平信号。
上面一层是一个CAN 控制器,它执行在CAN规范[8]里规定的完整的CAN协议。
它通常用于报文缓冲和验收滤波,而所有这些CAN功能,都由一个模块控制器控制它负责执行应用的功能。
例如,控制执行器、读传感器和处理人机接口(MMI)。
如图1所示,SJA1000独立的CAN控制器通常位于微型控制器和收发器之间,大多数情况下这个控制器是一个集成电路。
图1 CAN模块装置2.2 结构图下图是SJA1000 的结构图图2 SJA1000的结构图根据CAN规范,CAN核心模块控制CAN帧的发送和接收。
接口管理逻辑负责连接外部主控制器,该控制器可以是微型控制器或任何其他器件。
经过SJA1000复用的地址/数据总线访问寄存器和控制读/写选通信号都在这里处理。
实验一SJA1000的初始化一、实验目的:学习并完成SJA1000的初始化二、实验设备:EL-8051-III型单片机实验箱三、实验原理:SJA1000的初始化只有在复位模式下才可以进行,初始化主要包括工作方式的设置、接收滤波方式的设置、介绍屏蔽寄存器(AMR)和接收代码寄存器(ACR)的设置、波特率参数设置和中断允许寄存器(IER)的设置等。
在完成SJA1000的初始化设置以后,SJA1000就可以回到工作状态,进行正常的通信任务。
初始化流程:四、实验内容及步骤:初始化CAN节点,使SJA1000处在准备工作状态。
1.给试验箱换上CAN控制器;2.编写并编译初始化程序;3.下载程序并调试。
编写的程序如下:MODE EQU 0DE00H ;模式寄存器CMR EQU 0DE01H ;命令寄存器SR EQU 0DE02H ;状态寄存器IR EQU 0DE03H ;中断寄存器IER EQU 0DE04H ;中断使能寄存器BTR0 EQU 0DE06H ;总线定时寄存器一BTR1 EQU 0DE07H ;总线定时寄存器二OCR EQU 0DE08H ;输出控制寄存器ALC EQU 0DE0BH ;仲裁丢失捕捉寄存器ECC EQU 0DE0CH ;错误代码捕捉寄存器TXERR EQU 0DE0FH ;发送错误计数器ACR0 EQU 0DE10H ;验收代码寄存器0ACR1 EQU 0DE11H ; 1ACR2 EQU 0DE12H ; 2ACR3 EQU 0DE13H ; 3AMR0 EQU 0DE14H ;验收屏蔽寄存器0AMR1 EQU 0DE15H ; 1AMR2 EQU 0DE16H ; 2AMR3 EQU 0DE17H ; 3FIN EQU 0DE10H ;发送/接收帧信息ID1 EQU 0DE11H ;发送/接收缓冲区之标示符一ID2 EQU 0DE12H ;发送/接收缓冲区之标示符二DATA1 EQU 0DE13H ;发送/接收数据首址RBSA EQU 0DE1EH ;接收缓冲器起始地址寄存器CDR EQU 0DE1FH ;时钟分频寄存器DAMR EQU 40HDACR EQU 50HORG 4000HJMP STARTORG 4080HSTART:mov dptr,#modemov a,#01hmovx @dptr,amov dptr,#acr0mov a,#00hmovx @dptr,amov dptr,#acr1mov a,#60hmovx @dptr,amov dptr,#acr2mov a,#00hmovx @dptr,amov dptr,#acr3mov a,#00hmovx @dptr,amov dptr,#amr0mov a,#00hmovx @dptr,amov dptr,#amr1mov a,#0fhmovx @dptr,amov dptr,#amr2mov a,#0ffhmovx @dptr,amov dptr,#amr3mov a,#0ffhmovx @dptr,amov dptr,#btr0mov a,#01hmovx @dptr,amov dptr,#btr1mov a,#1chmovx @dptr,amov dptr,#ocrmov a,#0aahmovx @dptr,amov dptr,#cdrmov a,#89hmovx @dptr,amov dptr,#mode ;退出复位模式mov a,#00hmovx @dptr,amov dptr,#sr ;判断状态寄存器是否初始化成功,成功则点亮P1口的灯movx a,@dptrcjne a,#0ch,startmov P1,#00hend五、实验结果P1口连接的灯均亮了,外部存储器DE00H~DE30H的值为下图所示:六、实验心得。
SJA1000简介2010SJA1000简介2010-3-17 5:57:00PCA82C250提供对总线的差动发送和对CAN控制器的差动接收功能,也增大了通信距离,提高了系统的瞬间抗干扰能力,保护总线,降低射频干扰(RFI),实现了热防护等功能。
发送子程序负责节点报文的发送,由CAN控制器SJA1000独立完成,将命令寄存器里的发送请求标志置位,即可发送SJA1000发送缓冲区中的报文。
CAN总线及CAN控制器SJA1000简介CAN总线最初是德国Bosch公司在1986 年为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种支持分布式实时控制系统的串行数据通讯总线。
CAN总线与其它通信网的显著不同之处在于:(1)报文传送中不包含目标地址,它是以全网广播为基础,各接收站根据报文中反映数据性质的标识符过滤报文,该收的收下,不收的弃用。
其好处是可线上网下网、即插即用和多站接收。
(2)特别强化了对数据安全性的关注,满足控制系统及其它较高数据要求的系统需求。
另外CAN总线采用短帧结构,借助接收滤波的多地址帧传送,受干扰概率低,每帧信息都有CRC校验及其它检错措施。
响应远程数据请求,配置灵活,具有全系统的数据相容性。
节点数主要取决于总线驱动电路,目前最多可达110个节点。
CAN总线符合ISO11898标准,通信速率高,最大传输速率可达1Mbit/S,最大传输距离为10km,传输介质可为双绞线。
基于CAN总线以上的特点,把它应用于系统分布比较分散且需要在同一总线上挂接多个节点的场合是非常适合的。
目前广泛流行的CAN总线器件有两大类:一类是独立的CAN控制器,如PhilipS 公司的PCA82C200,SJA1000及Intel82256/82257等;另一类是带有在片CAN的微控制器,如P8XC582等。
其中Philips公司的PCA82C200是符合CAN2. 0A协议的总线控制器,SJA1000是它的替代产品,它是应用于汽车和一般工业环境的独立CAN总线控制器。
SJA1000简介2010-3-17 5:57:00PCA82C250提供对总线的差动发送和对CAN控制器的差动接收功能,也增大了通信距离,提高了系统的瞬间抗干扰能力,保护总线,降低射频干扰(RF I),实现了热防护等功能。
发送子程序负责节点报文的发送,由CAN控制器SJA 1000独立完成,将命令寄存器里的发送请求标志置位,即可发送SJA1000发送缓冲区中的报文。
CAN总线及CAN控制器SJA1000简介CAN总线最初是德国Bosch公司在1986 年为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种支持分布式实时控制系统的串行数据通讯总线。
CAN总线与其它通信网的显著不同之处在于:(1)报文传送中不包含目标地址,它是以全网广播为基础,各接收站根据报文中反映数据性质的标识符过滤报文,该收的收下,不收的弃用。
其好处是可线上网下网、即插即用和多站接收。
(2)特别强化了对数据安全性的关注,满足控制系统及其它较高数据要求的系统需求。
另外CAN总线采用短帧结构,借助接收滤波的多地址帧传送,受干扰概率低,每帧信息都有CRC校验及其它检错措施。
响应远程数据请求,配置灵活,具有全系统的数据相容性。
节点数主要取决于总线驱动电路,目前最多可达110个节点。
CAN总线符合ISO11898标准,通信速率高,最大传输速率可达1Mb it/S,最大传输距离为10km,传输介质可为双绞线。
基于CAN总线以上的特点,把它应用于系统分布比较分散且需要在同一总线上挂接多个节点的场合是非常适合的。
目前广泛流行的CAN总线器件有两大类:一类是独立的CAN控制器,如PhilipS公司的PCA82C200,SJA1000及Intel82256/82257等;另一类是带有在片CAN的微控制器,如P8XC582等。
其中Philips公司的PCA82C200是符合CAN 2. 0A协议的总线控制器,SJA1000是它的替代产品,它是应用于汽车和一般工业环境的独立CAN总线控制器。