电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > 接口/总线/驱动 > 详细信息
接口/总线/驱动:用87C196NT单片机实现CAN总线通信
来源: http://www.ic37.com   时间: 2007-9-25 10:34:52    
  摘要:主要介绍CAN总线的原理及如何用87C196NT单片机实现基于CAN总线的网络通信;对其硬件和软件设计作详细的分析,最后给出下位机程序。
  关键词:单片机 CAN总线 87C196NT PCA82C200

1 CAN总线简介

  CAN(Controller Area Network)即控制器局域网,主要用于各种设备监测及控制的一种现场总线。CAN总线最初是由德国Bosch公司为汽车的监测、控制系统而设计的。CAN总线具有独特的设计思想,良好的功能特性和极高的可靠性,现场抗干扰能力强。具体来讲,CAN总线具有如下特点:

  *结构简单,只有2根线与外部相连,且内部含有错误探测和管理模块。

  *通信方式灵活。可以多主方式工作,网络上任意一个节点均可以在任意时刻主动地向网络上的其它节点发送信息,而不分主从。

  *可以点对点、点对多点及全局广播方式发送和接收数据。

  *网络上的节点信息可分成不同的优先级,可以满足不同的实时要求。
  
  *CAN总线通信格式采用短帧格式,每帧字节数最多为8个,可满足通常工业领域中控制命令、工作状态及测试数据的一般要求。同时,8个字节也不会占用总线时间过长,从而保证了通信的实时性。
  
  *采用非破坏性总线仲裁技术。当2个节点同时向总线上发送数据时,优先级低的节点主动停止数据发送,而优先级高的节点可不受影响地继续传输数据。这大大地节省了总线仲裁冲突时间,在网络负载很重的情况下也不会出现网络瘫痪。

  *直接通信距离最大可达10km(速率5kb/s以下),最高通信速率可达1Mb/s(此时距离最长为40m);节点数可达110个,通信介质可以是双绞线、网轴电缆或光导纤维。

  *CAN总线通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余检验、优先级判别等多项工作。

  *CAN总线采用CRC检验并可提供相应的错误处理功能,保证了数据通信的可靠性。
CAN总线的以上特点,为工业控制系统中高可靠性的数据传送提供了一种新的解决方案。其在国外工业测控领域已经有了广泛的应用,现国内的许多工业控制领域也开始使用基于CAN的现场总线。CAN总线已成为最有发展前途的4种现场总线之一。

2 单片机控制系统硬件设计

  本设计采用Intel 196系列中的87C196NT单片机。87C196NT具有1MB的寻址空间,本身不带CAN控制器,所以要实现与CAN总线之间的通信,需外加CAN控制器和CAN驱动芯片。在本设计中我们采用LTL-CAN。LTL-CAN是一种CAN总线控制、驱动隔离收发器,由CAN控制器芯片PCA82C200、CAN驱动芯片PCA82C250、16MHz的晶振及光隔电路用厚膜封装而成。它只支持标准信息帧格式,其内部逻辑功能如图1所示。LTC-CAN引脚定义如表1所列。

表1 LTL-CAN引脚定义
引  脚 符  号 功  能 引  脚 符  号 功  能
1 Vcc 电源Vcc 16 INT CAN中断
2 GND 地GND 17 NC
3 CS CAN片选 18~27 NC 未引出
4 ALE 地址锁存 28 CANH CANH
5 RD CAN读 29 CANL CANL
6 WR CAN写 30 ISOGND ISO GND
7~14 AD7~0 数据线 31 ISOVDD ISO VDD
15 RST CAN复位 32 NC
单片机与CAN总线的接口电路如图2所示。图中LTC-CAN是带光隔的CAN控制器和物理总线间的接口,提供对总线的差动发送和接收功能。电阻R1作为CAN终端的匹配电阻。LTL-CAN芯片的片选信号CSCAN通过GAL16V8译码产生,其地址为08000H-08FFFH.87C196NT的P3口是数据/地址复用口,在图2中没有画出地址锁存芯片(74HC573);P1.0接CAN芯片的中断引脚,P1.0为低,表示为CAN中断产生。

3 单片机控制系统软件设计
3.1 CAN信息包格式说明

  一个有效的CAN的数据帧由帧起始、仲裁域、控制域、数据域、校验域、应答域和帧结束组成。CAN控制器有2种不同的帧格式:标准格式和扩展格式。它们的主要区别在于仲裁域格式不同:标准帧仲裁域由11位标志符和远程发送请求位RTR组成;扩展帧仲裁域由29位标志符和替代远程请求SRR位、标志位和远程发送请求位RTR组成,如图3所示。

  标志符作为报文的名称,在仲裁过程期间,首先被送到总线。在接收器的验收判断中和仲裁过程确定访问优先权中都要用到。
远程发送请求位(RTR)用来确定发送远程帧还是数据帧:当RTR为高电平时,CAN控制器发送远程帧;为低电平时,发送数据帧。
数据长度码(DLC)用来确定每帧发送几字节的数据,最多为8字节。

3.2 CAN控制器PCA82C200介绍

  PCA82C200芯片是Philips公司生产的CAN控制器,是一种I/O设备基于内存编址的微控制器。双设备的独立操作是通过像RAM一样的片内寄存器修正来实现的。它只支持标准的信息帧格式。

  PCA82C200的地址区包括控制段和信息缓冲区控制段。在初始化载入时可被编程来配置通信参数(例如,位时序)。微控制器也是通过这个段来控制CAN总线上通信的。

  PCA82C200有2种工作模式:复位模式和工作模式。在复位模式下可以对接收代码、接收屏蔽、总线时序寄存器0和1以及输出控制寄存器进行设置。一般在CAN初始化时完成对以上寄存器的设置,当CAN进入工作模式后,它们的值就不再变化。在工作模式下可以进行数据的发送和接收。特别要注意的是当硬件复位或控制器掉线时会自动进入复位模式,这样就不能进行正常的CAN通信,这就要求对复位进行监控。当发生硬件复位或控制器掉线而进入复位模式时,就要求把复位位置为0进入工作模式,这样CAN就能正常地发送接收了。

3.3 网络通信规则
 
  CAN总线为多主工作方式,网络上任一节点均可在任意时刻主动向网络上其它节点发送信息,而不分主从。通信方式灵活,且无需占地址等节点信息。为禁止总线冲突,CAN总线采用非破坏性总线仲裁技术,根据需要将各个节点设定为不同的优先级,并以标志符ID标定,其值越小,优先级越高。

  在本系统的实际应用中,主站负责整个网络。它向从站发送各种控制命令,从站按照来自主站的命令进行操作。主站可以选择任意一个从站交换数据信息,任一从站一旦被选中,即可以接收来自主站的信息,也可以依据从站的命令和凡站回送信息。当某一从站发生故障时,可以主动向从站发送有关信息。任一从站与主站交换信息时,必须带上从站地址信息。

3.4 下位机软件编程

  单片机87C196NT与上位机之间的CAN通信接口程序见本刊网络补充版。(http://www.dpj.com.cn)。单片机向上位机一直以500 Kbps的波特率发送数据,当单片机接收到上位机下传的数据后,又把接收到的数据转发给上位机。用我国台湾研华公司的CAN卡,调试时用它自带的Monitor程序。

结束语

  将CAN现场总线应用于电力系统线路分段保护监控单元中,有利于实现电力系统中检测的实时性和可靠性。在现有设备的基础上,进一步提高了电网的自动化监测和管理水平,对提高供电的可靠性、增加电网的经济效益有着重大的意义。
相关信息
发表评论
打印本页 关闭本页
彻底看穿双核CPU Intel与AMD多核处理器剖解
   一、双核心的由来   所谓双核心处理器,简单地说就是在一块CPU基板上集成两个处理器核心,并通过并行总线将各处理器核心连接起来。双核心并不是一个新概念,而只是CMP(Chip Multi Processors,单芯片多处理器)中最基本、最简单、最容易实现的一种类型。其实在RISC处理器领域,双核心甚至多核心都早已经实现。CMP最早是由美国斯坦福大学提出的,其思想是在一块芯片内实现SMP(Symmetr...
>>详细内容
安华高科技推出支持Intel QuickPath互连规格的SerDes
    AvagoTechnologies(安华高科技)宣布,推出业内第一款符合IntelQuickPath互连规格的SerDes(串行/解串)知识产权(IP)产品,通过90纳米(nm)CMOS展现IntelQuickPath互连支持,Avago让服务器制造商能够实现采用Intel架构计算应用的ASIC解决方案,同时帮助客户符合性能、上市速度以及批量生产目标的需求。Avago将在9月18日到20日于美国旧金山举办的Intel开发者论坛(IDF)服务器专区演示支持In...
>>详细内容
基于ARM核的Intel XScale嵌入式系统
  摘要:简要介绍Intel XScale的特点以及与Intel StrongARM的区别;重点介绍PXA250处理器和PCM-7210单板计算机的结构、功能和接口特性。 关键词:XScale ARM核 PXA250 PCM-7210 1 简 介  Intel XScale微体系结构提供了一种全新的、高性价比、低功耗且基于ARMv5TE体系结构的解决方案,支持16位Thumb指令和DSP扩充。基于XScale技术开发的微处理器,可用于手机、便携式终端(PDA)...
>>详细内容
Intel无线技术解决方案问答
  Intel无线技术解决方案问答 ChinaECNet Online Seminar on Intel Wireless Solution 问:Intel 在串行存储flash方面有没有产品? 答:没有。Intel 闪存是根据NOR技术的,支持代码+数据一起存储和XIP。 问:Intel闪存工作电压是多少伏? 答:我们有 3V 和 1.8V Vcc 两种产品。 问:大容量的 Intel Flash 最小封装是多大? 答:128J3 VFBGA 是7.3mmx10.8mm。详情请参阅数据表...
>>详细内容
MC74HC573ADWR2G的技术参数
  产品型号:MC74HC573ADWR2G封装/温度(℃):20SOIC/-55~125描述:八D锁存器(三态同相输出)价格/1片(套):¥3.20
>>详细内容
一种基于Intel8253与L298N电机PWM调速法
  摘要:介绍采用Intel8253型微型计算机接口电路产生脉冲宽度调制波,并使用L298N型桥式驱动器,实现对直流电机的一种简单有效的PWM调速方法。 关键词:Intel8253;L298N:脉冲宽度调制:PWM 1引言 脉冲宽度调制(PulseWidthModulation—PWM)是指将输出信号的基本周期固定,通过调整基本周期内工作周期的大小来控制输出功率。原理就是开关管在一个周期内的导通时间为t,周期为T,则电机...
>>详细内容
已有(
)位对此新闻感兴趣的网发发表了看法 >>更多评论
内 容:
     
 
热点新闻
一周排行
关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com