1、第 1 页,共 35 页RS232/CAN 互联适配器的设计及实现摘要: 由于 CAN 属于现场总线范畴,具有通信实时性好、纠错能力强,结构简单等优点。RS-232 为计算机串行通信接口,已经被广泛的使用。RS-232 的缺点就是传输距离短,而且只能点对点通信,无法组建多点通信网络。CAN 总线正好弥补了 RS-232 的这些缺点。因此设计 RS-232 与 CAN总线协议的互联适配器,既可以发挥 RS-232 的通用性强的优点,又可以利用 CAN 总线解决远程通信网络的问题,具有很高的应用价值。本文完成了基于单片机控制的 CAN 与 RS-232 转换器的研究与设计, 设计了 AT89C51
2、 单片机对 RS-232 接口和 CAN 模块的控制,解决了 CAN 总线与 RS-232 接口数据通信速率以及通信帧格式不同的技术,实现了 RS-232 接口数据与 CAN 总线数据的传输。关键词: 单片机;CAN 总线;RS-232第 2 页,共 35 页CAN and the RS-232 switch controls which based on the monolithic integrated circuit designsAbstract: As the CAN bus belonging to the scope of real good with communication
3、, error correction capability, and simple structure. RS-232 serial communication interface, as has been widely used. RS-232s shortcomings is the transmission distance is short, and can only point to point communication, not set up multi-point communications network. CAN bus, RS-232 has made up for t
4、hese shortcomings. Therefore, this design, both RS-232 can play the advantages of versatility, they can use CAN-bus communication network to solve the problem remotely, has a high application value.This article has completed CAN and the RS-232 switch research which controls based on the monolithic i
5、ntegrated circuit and designs, Has designed AT89C51 monolithic integrated circuit to the RS-232 connection and CAN module control, Has solved the CAN main line and the RS-232 connection data communication speed as well as correspondence frame form different technology, Has realized the RS-232 connec
6、tion data and CAN main line data transmission.第 3 页,共 35 页Key words: Monolithic integrated circuit ; CAN main line;RS-2321 引言1.1 本课题研究的目的及意义由于 CAN 属于现场总线范畴,具有通信实时性好、纠错能力强,结构简单等优点。RS-232 是美国电子丁业协会 EIA 制定的一种串行物理接口标准。它作为计算机串行通信接口,已经被广泛的使用。RS-232 的缺点就是传输距离短,而且只能点对点通信,无法组建多点通信网络。CAN 总线正好弥补了 RS-232 的这些缺点
7、1。因此设计 RS-232 与 CAN 总线协议的互联适配器,既可以发挥 RS-232 的通用性强的优点,又可以利用 CAN总线解决远程通信网络的问题,具有很高的应用价值。1.2 本设计系统简介及关键技术本设计完成了 CAN 总线与 RS-232 转换器的电路与软件设计。由于 CAN 总线与 RS-232 接口数据通信速率以及通信帧格式都不同。本设计解决了这两点不同,从而实现了数据在 CAN 总线与 RS-232 接口之间的传输。在设计中由于使用了CAN 总线进行数据传输这就使得通信方式多主性。网络上任意节点可以任意时刻主动地向网络上其他节点发送信息而不分主从。可以点对点,点对多点或全局广播方
8、式发送和接收数据。CAN总线与Rs-232转换器电路包括:主控制模块、RS-232接口转换电路和CAN控制模块3个主要部分。主控制模块的功能是处理CAN总线以及RS-232接口的数据通信和控制,本设第 4 页,共 35 页计应用AT89C51完成对转换器各个接口的控制,实现CAN总线和RS-232接口两种协议数据帧的转换,使用带有SPI总线接口的X25045实现硬件看门狗功能。RS-232接口电路由MAX232芯片构成,实现将单片机串口的TTL电平与RS-232电平的相互转换,完成RS-232接口信息的输入输出传输。CAN控制器使用SJAl000芯片,完成数据链路层功能,实现CAN总线信息的输
9、入输出传输。而使用AT89C51作为CAN总线与RS-232转换器的控制器,从而实现两种帧数不同的信息传输。1.3 本课题的国内外研究现状CAN 在微控制器之间需要互相通信,或微控制器和远程的外围器件要互相通信的情况下,是一个理想的解决方法。在它的原始应用环境车中,CAN 最初用于关键任务的实时监控系统。例如,引擎管理系统和变速箱控制交换信息。而在这里,CAN 的短报文和有保证的报文延迟时间,允许每一个网络的端口都能用当前的数据工作,甚至数据的改变时间在上百个微秒时标的情况下,也可以使用这些系统。都利用 CAN 控制器的 PeliCAN 将不需要的报文滤出,以减少主CPU 的负载。但是低成本的
10、独立 PeliCAN 设备就允许不是实时的任务。例如,门系统带有窗的升降镜子控制等,逐步成为 CAN 网络的一部分。实际上,传统的线束 CAN 网络在一些情况下甚至在普通的器件上,譬如刹车灯和指示灯,只是附加的节点代替了两线的 CAN 网络。传统上 CAN 是一个基于微控制器的器件互相连接的网络。这意味着其每个节点的成本并不是特别的低。最有趣的发展成果就是 SLIO 模块这个概念,它是一个单芯片,能够在 CAN 网络里充当一个沉默的输入输出网关,并把报文转化为实际的数字 IO 信号。它能读 IO 引脚,并把数据当作报文传输。它还能使用集成 A/D 转换器来生成报文,并传输引进到网络上。这些装置
11、非常便宜,并且对于驱动远程感应器、执行器或采集数字和模拟数据都非常理想。它们能够被看作中央微控制器的远程附件,现今来说只能使用 BasicCAN SLIO。 但毫无疑问 Philips 和其他 PeliCAN 厂家将生产出相应的 PeliCAN 的设备。在过去的20年的时间里,建议性标准RS-485作为一种多点差分数据传输的电气规范,被应用在许多不同的领域。作为数据传输链路,目前在我国应用的现场总线中,RS-485半双工全双工异步通信总线也是被各个研发机构广泛使用的数据通信总线。但是基于在RS-485总线上,只能有一个主机的特点,它往往第 5 页,共 35 页应用在集中控制枢纽与分散控制单元之
12、间。由于RS-485总线本身存在的许多局限性,随着科技的发展,RS-485的总线效率低、系统的实时性差、通讯的可靠性低、后期维护成本高、网络工程调试复杂、传输距离不理想、单总线可挂接的节点少、应用不灵活等缺点慢慢的暴露出来。虽然许多工程师生产厂商等提出了改进的方法和建议,但都不能从根本上解决RS-485这些先天性的问题。于是应用RS-485的生产厂商开始寻求一种更好的更彻底的解决方案。CAN-bus总线在通信能力可靠性实时性灵活性易用性传输距离远成本低等方面有着明显的优势,成为业界最有前途的现场总线之一。据CIA统计,2001年仅在欧洲就销售了超过1亿个CAN-bus节点,几乎淘汰了所有的RS
13、-485系统。但在国内基于历史或者其他的原因,大多数的厂商工程师在设计产品工程立项时,第一想到的是应用RS-485总线系统。这不能不说是一种遗憾,所以在国内的RS-485总线仍然会有一段生命周期。CAN的发展前景非常乐观,尽管CAN协议已经有15年的历史,但它仍处在改进之中。从2000年开始,一个由数家公司组成的ISO任务组织,定义了一种时间触发CAN 报文传输的协议Bernd Mueller。博士Thomas Fuehrer Bosch 公司人员和半导体工业专家学术研究专家将此协议定义为时间触发通讯的新计划。在将来标准化为ISO11898-4。这个CAN的扩展已在硅片上实现,不仅可实现闭环控
14、制下支持报文的时间触发传输而且可以实现CAN的x-by-wire应用。因为CAN协议并未改变,所以在同一个的物理层上既可以实现传输时间触发的报文,也可以实现传输事件触发的报文。TTCAN将为CAN延长5-10年的生命期,现在CAN在全球市场上仍然处于起始点,当得到重视时,谁也无法预料CAN总线系统在下一个10到15年内的发展趋势。这里需要强调一个现实,近几年内美国和远东的汽车厂商将会在他们所生产汽车的串行部件上使用CAN。另外大量潜在的新应用,例如娱乐。正在呈现不仅可用于客车也可用于家庭消费,同时结合高层协议应用的特殊保安系统对CAN的需求也正在稳健增长。1.4 本课题的主要研究工作以及本设计
15、的组织结构本设计完成了 CAN 总线与 RS-232 转换器的电路与软件设计。由于 CAN 总线与 RS-232 接口数据通信速率以及通信帧格式都不同。为了解决以上两点不同,我们采用 AT89C51 完成对转换器各个接口的控制,使用带有 SPI 总线接口的第 6 页,共 35 页X25045 实现硬件看门狗功能。RS-232 接口电路由 MAX232 芯片构成,实现将单片机串口的 TTL 电平与 RS-232 电平的相互转换,完成 RS-232 接口信息的输入输出传输。CAN 控制器使用 SJAl000 芯片,完成数据链路层功能,而使用AT89C51 作为 CAN 总线与 RS-232 转换器
16、的控制器,从而实现两种帧数不同的信息传输。基于此目的我对各种实现方法进行理论研究分析的基础上,主要完成以下几个方面的工作:(1) 研究分析 CAN 总线以及 RS232 的数据通信速率以及通信帧格式。(2) 研究所选单片机的原理及应用,研究所选接口芯片的原理及功能以及电路主要组成部分的性能与连接问题。(3) 对于本设计的软件进行程序原理图设计。(4) 通过所学软件绘制电路图并且实现其功能。本设计的组织结构:第一章对于基于单片机 CAN/RS232 适配器的系统进行大体介绍以及说明。第二章采用分块方式,介绍 CAN 总线的分层结构,及介绍其功能。第三章介绍 RS232 其接口电路及其功能特性。第
17、四章介绍各个单元以及功能,并对所采用元件进行解析。第五章进行汇总,对前面几章进行概括,进行汇总,设计出整个结构并绘制总电路图。第 7 页,共 35 页2 CAN 总线部分2.1 CAN 概述CAN 是 Controller Area Network 的缩写(以下称为 CAN),是 ISO 国际标准化的串行通信协议。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应“减少线束的数量”、“通过多个 LAN,进行大量数据的高速通信
18、”的需要,1986 年德国电气商博世公司开发出面向汽车的 CAN 通信协议。此后,CAN 通过 ISO11898 及 ISO11519 进行了标准化,现在在欧洲已是汽车网络的标准协议 2。目前 CAN 总线主要用于汽车自动化领域,如发动机自动点火、注油、复杂的加速刹车控制(ASC) 、抗锁定刹车系统(ABS)和抗滑系统等。BENZ、BMW 等著名汽车上已经采用 CAN 来满足上述功能。在工业过程控制领域,CAN 也得到了广泛的应用。CAN 总线采用分层结构,规范规定了任意两个节点之间的兼容性。包括电气特件利数据解释协议。CAN 协议可分为: 目标层、传送层、 物理层。其中目标层和传送层包括了
19、ISO/OSI 定义的数据链路的所有功能。目标层的功能包括:确认要发送的第 8 页,共 35 页信息;位应用层提供接口。传送层功能包括:数据帧组织:总线仲裁:检错、错误报告、错误处理。 CAN 总线以报文为单位进行信息交换,报文中含有标示符(ID) ,它既描述了数据的含义又表明了报文的优先权。CAN 总线上的各个协点都可主动发送数据。当同时有两个或两个以上的节点发送报文时,CAN 控制器采用 ID 进行仲裁。ID 控制节点对总线的访问。发送具有最高优先权报文的节点获得总线的使用权,其他节点自动停止发送,总线空闲后,这些节点将自动重发报文。 现在,CAN 的高性能和可靠性已被认同,并被广泛地应用
20、于工业自动化、船舶、医疗设备、工业设备等方面。现场总线是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网 3。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。CAN 属于现场总线的范畴,它是一种有效支持分布式控制或实时控制的串行通信网络。较之目前许多 RS-485 基于 R 线构建的分布式控制系统而言 , 基于CAN 总线的分布式控制系统在以下方面具有明显的优越性:首先,CAN 控制器工作于多主方式,网络中的各节点都可根据总线访问优先权(取决于报文标识符) 采用无损结构的逐位仲裁的方式竞争向总线发送数据,且CAN 协议废除了站地址编码,而代之以
21、对通信数据进行编码,这可使不同的节点同时接收到相同的数据,这些特点使得 CAN 总线构成的网络各节点之间的数据通信实时性强,并且容易构成冗余结构,提高系统的可靠性和系统的灵活性。而利用 RS-485 只能构成主从式结构系统,通信方式也只能以主站轮询的方式进行,系统的实时性、可靠性较差。其次,CAN 总线通过 CAN 收发器接口芯片 82C250 的两个输出端 CANH 和CANL 与物理总线相连,而 CANH 端的状态只能是高电平或悬浮状态,CANL 端只能是低电平或悬浮状态。这就保证不会出现象在 RS-485 网络中,当系统有错误,出现多节点同时向总线发送数据时,导致总线呈现短路,从而损坏某
22、些节点的现象。而且 CAN 节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的操作不受影响,从而保证不会出现象在网络中,因个别节点出现问题,使得总线处于“ 死锁” 状态。而且 ,CAN 具有的完善的通信协议可由 CAN 控制器芯片及其接口芯片来实现,从而大大降低系统开发难度,缩短了开发周期,这些是第 9 页,共 35 页只仅仅有电气协议的 RS-485 所无法比拟的。另外,与其它现场总线比较而言,CAN 总线是具有通信速率高、容易实现、且性价比高等诸多特点的一种已形成国际标准的现场总线。这些也是目前 CAN 总线应用于众多领域,具有强劲的市场竞争力的重要原因。2.2 CAN 协议
23、CAN 支持四类信息帧类型。(1)数据帧 CAN 协议有两种数据帧类型标准 2.0A 和标准 2.0B。两者本质的不同在于 ID 的长度不同。在 2.0A 类型中,ID 的长度为 l l 位;在 2.0B 类型中 ID 为 29 位。一个信息震中包括 7 个主要的域: 帧起始域标志数据帧的开始,由一个显性位组成。 仲裁域内容由标示符和远程传输请求位(RTR)组成,RTR 用以表明此信息帧是数据帧还是不包含任何数据的远地请求帧。当 2.0A 的数据帧和 2.0B 的数据帧必须在同一条总线上传输时,首先判断其优先权,如果 ID 相同,则非扩展数据帧的优先权高于扩展数据帧。控制域r0、r1 是保留位
24、,作为扩展位,DLC 表示一帧中数据字节的数目。 数据域包含 08 字节的数据。 校验域检验位错用的循环冗余校验域,共 15 位。 应答域包括应答位和应答分隔符。正确接收到有效报文的接收站在应答期间将总线值为显性电平。 帧结束由七位隐性电平组成。(2)远程帧 接受数据的节点可通过发远程帧请求源节点发送数据。它由 6 个域组成:帧起始、仲裁域、控制域、校验域、应答域、帧结束。(3)错误指示帧 由错误标志和错误分界两个域组成。接收节点发现总线上的报文有误时,将自动发出“活动错误标志”其他节点检测到活动错误标志后发送“错误认可标志” 。(4)超载帧 由超载标志和超载分隔符组成。超载帧只能在一个帧结束
25、后开始。当接收方接收下一帧之前,需要过多的时间处理当前的数据,或在帧问第 10 页,共 35 页空隙域检测到显性电平时,则导致发送超载帧。(5)帧间空隙 位于数据帧和远地帧与前面的信息帧之间,由帧间空隙和总线空闲状态组成。帧间空隙是必要的,在此期间, CAN 不进行新的帧发送,为的是 CAN 控制器在下次信息传递前有时间进行内部处理操作。当总线空闲时 CAN 控制器方可发送数据。2.3 CAN 主要技术特点CAN 网络上的节点不分主从,任一节点均可在任意时刻主动地向网络上其他节点发送信息,通信方式灵活,利用这一特点可方便地构成多机备份系统CAN 只需通过报文滤波即可实现点对点、一点对多点及全局
26、广播等几种方式传送接收数据,无需专门的“ 调度 “ CAN 的直接通信距离最远可达 10km(速率 5kbps 以下) ;通信速率最高可达 1Mbps(此时通信距离最长为 40m)。CAN 上的节点数主要决定于总线驱动电路,目前可达 110 个;报文标识符可达 2032 种(CAN2.0A) ,而扩展标准(CAN2.0B)的报文标识符几乎不受限制。3 RS232 部分3.1 RS232 简述RS-232 是个人计算机上的通讯接口之一,由电子工业协会(El ectronic Industries Association, EIA) 所 制 定 的 异 步 传 输 标 准 接 口 4。 通 常 R
27、S-232 接 口 以 9 个 引 脚 (DB-9) 或 是 25 个 引 脚 (DB-25) 的 型 态 出 现 。在 多 数 情 况 下 主 要 使 用 主 通 道 , 对 于 一 般 双 工 通 信 , 仅 需 几 条 信 号 线 就可 实 现 , 如 一 条 发 送 线 、 一 条 接 收 线 及 一 条 地 线 。 RS-232-C 标 准 规 定 的 数 据 传 输 速 率 为 每 秒50、 75、 100、 150、 300、 600、 1200、 2400、 4800、 9600、 19200 波特 。 RS-232-C 标 准 规 定 , 驱 动 器 允 许 有 2500pF 的 电 容 负 载 , 通 信 距 离 将受 此 电 容 限 制 , 例 如 , 采 用 150pF/m 的 通 信 电 缆 时 , 最 大 通 信 距 离 为15m; 若 每 米 电 缆 的 电 容 量 减 小 , 通 信 距 离 可 以 增 加 。 传 输 距 离 短 的 另 一 原
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。