基于SJA1000的CAN总线接口电路的设计与实现

上传人:飞*** 文档编号:35672038 上传时间:2018-03-18 格式:DOC 页数:5 大小:85KB
返回 下载 相关 举报
基于SJA1000的CAN总线接口电路的设计与实现_第1页
第1页 / 共5页
基于SJA1000的CAN总线接口电路的设计与实现_第2页
第2页 / 共5页
基于SJA1000的CAN总线接口电路的设计与实现_第3页
第3页 / 共5页
基于SJA1000的CAN总线接口电路的设计与实现_第4页
第4页 / 共5页
基于SJA1000的CAN总线接口电路的设计与实现_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《基于SJA1000的CAN总线接口电路的设计与实现》由会员分享,可在线阅读,更多相关《基于SJA1000的CAN总线接口电路的设计与实现(5页珍藏版)》请在金锄头文库上搜索。

1、 查看文章 基于 SJA1000 的 CAN 总线接口电路的设计与实现 2007-01-11 19:07摘摘 要:要:介绍了基于 SJA1000 的 CAN 总线接口电路的软硬件设计方法,给出了 CAN 总线接口电路、SJA1000 初始化程序、接收及发送数据程序的框图。关键词:关键词:CAN 总线;接口电路;SJA1000引 言控制器局部网(CANController Area Network)属于现场总线的范畴,它是一种有效支持分 布式控制或实时控制的串行通讯网络,其总线规范已被 ISO 国际标准化组织制定为国际标准,并被 公认为是最有前途的现场总线之一。CAN 总线的应用范围遍及从高速网

2、络到低成本的多线路网络,广 泛应用于控制系统中的各检测和执行机构之间的数据通信。现场总线领域中,CAN 总线得到了计算机芯片商的广泛支持,他们纷纷推出直接带有 CAN 接口的 微处理器(MCU)芯片。带有 CAN 的 MCU 芯片总量已经达到 1 亿 3 千万片(不一定全部用于 CAN 总线) ;因此在接口芯片技术方面,CAN 已经遥遥领先于 FF、PROFIBUS、LONWORKS 等其它所有现场总线。现场总线标准及其技术日益成为国际自动控制领域关注的一大焦点,其原因是它改变了传统控制 系统的结构,形成了全新的网络集成分布式控制系统。在我国,现场总线已经发展到推广应用阶段, 中国已经成为各种

3、现场总线激烈争夺的重要战场。因此研究现场总线技术及其产品就显得尤为重要。1 CAN 总线技术的特点CAN 总线与其它通信网的不同之处有二:一是报文传送中不包含目标地址,它是以全网广播为基 础,各接收站根据报文中反映数据性质的标识符过滤报文,该收的收下,不该收的弃而不用。其好 处是可在线上网下网、即插即用和多站接收;二是特别强化了对数据安全性的关注,满足控制系统 及其它较高数据要求的系统需求。CAN 具有以下主要技术特性:(1)CAN 遵从 ISO/OSI 模型,采用了其中的物理层、数据链路层与应用层。采用双绞线,通信 速率最高可达到 1Mbps/40m,直接传输距离最远可达 10km/5kbp

4、s.同一段总线内最多可挂接 110 个设 备。(2)CAN 的信号传输采用短帧结构,每一帧有效字节数为 8 个。因而传输时间短,受干扰的概 率低。当节点发生严重错误时,具有自动关闭的功能,切断该节点与总线的联系,使总线上其它节点不受影响,具有很强的抗干扰能力。(3)CAN 支持多主工作方式,网络上任一节点均可在任何时候主动向其它节点发送信息,支持 点对点、一点对多点和全局广播方式接收/发送数据,而优先级低的节点则主动停止发送,从而避免 了总线冲突。2 CAN 总线接口硬件电路的设计硬件电路的设计主要是 CAN 通信控制器与微处理器之间和 CAN 总线收发器与物理总线之间的接 口电路的设计。CA

5、N 通信控制器是 CAN 总线接口电路的核心,主要完成 CAN 的通信协议,而 CAN 总线 收发器的主要功能是增大通信距离,提高系统的瞬间抗干扰能力,保护总线,降低射频干扰(RFI), 实现热防护等。2.1 CAN 节点核心器件及其选择目前广泛流行的 CAN 总线器件有两大类:一类是独立的 CAN 控制器,如 82C200、SJA1000 及 Intel82526/82527 等,另一类是带有在片 CAN 的微控制器,如 P8XC582 及 16 位微控制器 87C196CA/CB 等。本课题选取 PHILIPS 公司的 SJA1000 CAN 控制器以及 82C250 总线收发器,主要是

6、考虑到 SJA1000 支持 CAN 2.0A/B 规约。而 82C250 可以支持 110 个 CAN 节点,并且国内市场上 PHILIPS 的产品型号比较多,购买比较方便。2.2 CAN 总线接口电路SJA1000 在电路中是一个总线接口芯片,通过它实现上位机与现场微处理器之间的数据通信。该 电路的主要功能是通过 CAN 总线接收来自上位机的数据进行分析组态然后下传给下位机的控制电路 实现控制功能,当 CAN 总线接口接收到下位机的上传数据,SJA1000 就产生一个中断,引发微处理器 产生中断,通过中断处理程序接收每一帧信息并通过 CAN 总线上传给上位机进行分析。AT89C51 是 C

7、AN 总线接口电路的核心,其承担 CAN 控制器的初始化、CAN 的收发控制等任务。 CAN 总线接口框图 见图 1.图 1 CAN 总线接口框图2.3 节点主要元件电路原理接口主要元件电路原理图见 图 2,在进行电路设计时应注意 以下几点,否则达不到预期的效 果。(1)总线两端必须接两个 终端匹配电阻 RT,忽略掉它们, 会使数据通信的抗干扰性及可靠 性大大降低。(2)PCA82C250 为 CAN 控制 器和物理总线之间的接口,它可 以提供向总线的差动发送能力和 CAN 控制器的差动接收能力, TXD 和 RXD 引脚分别发送经过驱 动后的发送和接收信号。其引脚 8(RS)可以选择 2 种

8、不同的工 作方式:把该引脚直接与地相连, 系统将处于高速工作方式,在这 种方式下,为避免射频干扰,建 议使用屏蔽电缆作总线;而在波 特率较低,总线较短时,一般采 用斜率控制方式,上升及下降的 斜率取决于 RS的阻值,实践表 明 15-200k 为 RS较理想的取值 范围,在这种方式下,可以使用 双绞线作总线(本系统采用该工 作方式)。图 2 接口主要元件电路原理图(3)SJA1000 的 TX1 脚悬空,RX1 引脚的电位必须维持在约 0.5VCC上,否则,将不能形成 CAN 协议要求的电平逻辑。因本系统传输距离近,环境干扰小,可以不用电流隔离,这样可以直接把 82C250 的 VREF端(约

9、为 0.5VCC)与 SJA1000 的 RX1 相连,从而简化了电路。(4)设计时将 SJA1000 的 CLOCKOUT 的时钟信号接至 AT89C51 的时钟电路输入端,作为 AT89C51 的外部时钟输入,解决了时钟同步问题;SJA1000 中断输出信号/INT 接至 AT89C51 的/INT0 端,通过 中断方式与 AT89C51 通信。3 CAN 总线接口软件设计CAN 接口通信软件分为 3 部分:CAN 初始化、数据发送、数据接收。CAN 初始化主要是设置 CAN的通信参数。需要初始化的 CAN 控制寄存器有:模式寄存器、时分寄存器、接收代码寄存器、屏蔽 寄存器、总线定时寄存器

10、、输出控制寄存器等。值得注意的是:这些寄存器只能在 CAN 控制器处于 复位状态下才可写访问。发送数据程序把数据存储区中待发送的数据取出,组成信息帧,并将主机的 ID 地址,填入帧头,然后将信息帧发送到 CAN 控制器的发送缓冲区。在接收到主机的发送请求后, 发送程序启动发送命令。信息从 CAN 控制器发送到总线是由 CAN 控制器自动完成的。信息从 CAN 总 线到 CAN 控制器的接收缓冲区也是由 CAN 控制器自动完成的。接收程序只需从接收缓冲区读取信息, 并将其存储在数据存储区。3.1 CAN 控制器 SJA1000 的初始化程序设 SJA1000 的首地址是 8000H;CR EQU

11、 8000H;控制寄存器CMR EQU 8001H;命令寄存器SR EQU 8002H;状态寄存器IR EQU 8003H; 中断寄存器ACR EQU 8004H;验收码寄存器AMR EQU 8005H;验收屏蔽寄存器BTR0 EQU 8006H;总线定时寄存器 0BTR1 EQU 8007H;总线定时寄存器 1OCR EQU 8008H;输出控制寄存器DILDB CL, #03HSTB CL, CR;开放接收中断,复位请求位置 1,开始初始化LDB CL, #01HSTB CL, ACR;将节点 1 标识符送给 ACRLDB CL, #0FFHSTB CL, AMR;验收滤波LDB CL,

12、#00HSTB CL, BTR0;波特率为 250kbps图 3 接收数据的中断服务程序流程图图 4 发送数据中断服务程序流程图LDB CL, #14HSTB CL, BTR1;定义位周期宽度,采样点位置及采样次数LDB CL, #0AAHSTB CL, 0CHLDB CL, #1AHSTB CL, CR;复位请求位置 0,初始化结束EI3.2 SJA1000 接收与发送数据程序流程程序流程见图 3、图 4.4 结 语该接口电路利用 Xeltek 公司的 TOPICE-52 仿真器进行调试,能模拟实现通信功能。在此基础上 构建 CAN 总线控制系统具有实际意义,但针对不同的控制系统,在硬件和软件上需作相应的改动。参考文献参考文献: :1 邬宽明.CAN 总线原理和应用系统设计M.北京:北京航空航天大学出版社,1996.2 周凤余,鲁守银,李贻斌,等.CAN 总线系统智能节点设计与实现J.微计算机信息,1999,(6):25-27.3 高强,董力川,朱宁.嵌入式 CAN 总线控制系统设计J.自动化技术与应用,2002,(2):33-34.4 陆前锋.基于 SJA1000 的 CAN 总线智能控制系统设计J.自动化技术与应用,2003,(1):61-64

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 教育/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号