1 引言
RS232作为标准的计算机串行接口已被广泛使用,与此同时,随着现场总线技术的飞速发展,具有实时性好、可靠性高、结构简单等优点的CAN总线在测控系统中也越来越多地被采用,但由于两者的总线结构、通信协议及传输特点各不相同,因而给不同设备之间的连接带来诸多不便。因此,如何以最简单的方式实现CAN节点与RS232串行口的通信就成为工程实践中一个不可回避的问题。
本文采用典型的不具备CAN通信能力的AT89C51单片机作为微处理器,设计了一个简单、实用的通信转换模块。该通信转换模块具有体积小、结构简单、通用性好、使用方便等特点。
2 工作原理
CAN-RS232通信转换模块通过硬件电路的电平标准转换和软件编程的通信协议转换实现相关功能。
2.1 电平标准转换
RS232采用的不是TTL电平的接口标准,而是负逻辑,即逻辑"1"为-3 V~-15 V;逻辑"0"为+3 V~+15 V;而CAN总线是采用"显性"和"隐性"两个互补的逻辑值表示"0"和"1",其信号是以两线之间的"差分"电压形式出现的。这样导致两总线之间的信号电压不匹配。无法直接进行正常的通信,因此,需要相应的硬件接口电路实现电平标准转换。
2.2 通信协议转换
RS232通信属于异步串行通信。一般为两点传输,其每帧的数据格式通常为:起始位+数据位+奇偶校验位(可省略)+停止位;每个数据包的格式通常为:数据包头+数据字节+校验和(溢出不计)。而CAN通信属于总线通信,可以同时存在多个节点,因此通信协议相对也比较复杂,这里以标准帧传输为例,其数据格式通常如表1所列。因此,需要软件处理实现通信协议的转换。
3 硬件设计
模块采用Atmel公司生产的AT89C51型单片机作为微处理器,采用SJA1000和TJA1050分别作为CAN控制器和驱动器,采用MAX202E作为RS232串行接口驱动器,其硬件连接电路图如图1所示。
AF89C51采用外接晶体振荡器提供时钟输入,通过并行地址/数据复用的方式访问CAN控制器SJA1000,P2.0引脚作为片选端口;SJA1000作为CAN控制器,也采用单独的外部时钟输入,由于集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的帧处理,其地址为 0x00~0xFF;TJA1050作为CAN控制器和物理总线之间的接口,采用高速工作模式,用于提供总线的差动发送能力和CAN控制器差动接收能力;MAX202E用于实现RS232电平到微控制器接口电路的TTL电平转换。
4 软件设计
模块的软件设计主要包括RS232通信程序和CAN通信程序两部分,采用中断方式。其中,RS232通信数据传输的波特率为115 200 bit/s,数据格式为1位起始位、8位数据位、1位停止位;CAN总线的传输波特率为500 kbit/s,采用PeliCAN模式的标准数据帧格式,每条报文的标识符ID为11位,有效数据为0~8个字节。其软件流程如图2所示。
在RS232中断程序中,微处理器对接收的串口数据进行处理后提取出数据字节,通过增加帧结构信息、帧类型、字节长度和标识符等生成CAN报文格式,然后由CAN控制器的发送缓冲区发送出去;在CAN中断程序中,微处理器对接收的有效CAN报文进行解析,提取出字节长度和字节内容,通过增加数据头、数据尾和校验和转换为RS232通信格式,完成数据传输。
5 结束语
该设计已应用于笔者开发的项目一某型低空红外预警系统。用CAN-RS232通信转换模块将CAN总线收到的角度传感器测出的空中目标方位角和高低角(10 ms一组测角、波特率为500 kbit/s)实时转换为RS232(波特率为115 200 bit/s)串行口数据,使主控计算机(PC104工控机)接收、处理和显示;同时将RS232输出的主控计算机命令转换为CAN总线数据。经实践证明,该模块工作稳定、可靠,且成本低,完全能够满足系统的指标要求,取得了良好的应用效果。
关键字:AT89C51 CAN RS232 通信转换
引用地址:
基于AT89C51的CAN-RS232通信转换设计
推荐阅读最新更新时间:2024-03-16 14:04
AT89C51电子时钟说明
此电子时钟单片机采用AT89C51,动态显示采用两只4位数码管,程序比较简单,有兴趣的朋友可以做一下试试。 1、功能 开机时,显示12:00:00的时间开始计时; P0.0/AD0控制“秒”的调整,每按一次加1秒; P0.1/AD1控制“分”的调整,每按一次加1分; P0.2/AD2控制“时”的调整,每按一次加1个小时; 2、电路原理图 3、系统板上硬件连线 (1)把“单片机系统”区域中的P1.0-P1.7端口用8芯排线连接到“动态数码显示”区域中的A-H端口上; (2)把“单片机系统:区域中的P3.0-P3.7端口用8芯排线连接到“动态数码显示”区域中的S1-S8端口上; (3)把“单片机系统”区域中的P0.0/AD
[单片机]
CAN总线在混和动力汽车电机控制系统中的应用
CAN(Controller Area Network)总线即控制器局域网络,是一种有效支持分布式控制或实时控制的串行通信网络,属于现场总线的范畴。德国Bosch公司在二十世纪80年代初将其研究成功,最初主要用于汽车内部检测以及控制系统的数据通信。CAN总线通信协议是在充分考虑工业现场环境的背景下制订的,它采用了国际标准化组织 ISO制订的开放系统互连(ISO-OSI)模型中的三层,即物理层、数据层和应用层,是OSI的一种简化网络结构。CAN总线规范已被国际标准化组织制订为国际标准ISO11898,并得到Motorola、Intel、Philips等著名半导体器件生产厂家的支持,进而迅速推出了各种集成有CAN协议的产品。目前,CA
[嵌入式]
德州仪器推出首款符合 DeviceNet 标准的 5 V CAN 收发器
日前,德州仪器 (TI) 宣布推出一款超过所有 DeviceNet™ 物理层规范的控制域网络 (CAN) 收发器。该 SN65HVD252 支持严格的时延时预算,可轻松连接至 3.3 V 微处理器。该器件针对工厂自动化、过程控制设备、网络化的传感器或楼宇自动化等恶劣工业环境下的工作进行了精心设计,具有 –36 V 至 40 V 总线引脚电压保护、驱动器输出电流限制以及过温驱动器关断等功能。下载产品说明书,订购评估板 (EVM) 或申请免费样片: www.ti.com.cn/sn65hvd252-pr 。 SN65HVD252 与 SN65HVD253 的主要特性与优势 • 传播延迟时间比 DeviceNet 标准要求的快
[工业控制]
Cancer Res:新型成像技术助力癌症研究治疗
刊登在过国际杂志Cancer Research上的一篇研究论文中,来自达特茅斯Geisel医学院的研究人员开发了一种新型的荧光成像技术,其可以不在活组织检查的情况下精确鉴别出靶向癌症疗法的特殊受体。
研究者Kimberley S. Samkoe教授说道,蛋白质的过度表达往往是特殊癌症的一个标志,而且也常常在临床肿瘤学领域通过检测肿瘤来用于开发癌症患者的个体化疗法;蛋白质的表达可以通过对肿瘤组织的总蛋白分析测得,而本文中新型技术的开发可以帮助研究者在不进行侵入性活检的情况下精确鉴别出蛋白质受体的含量。
研究者开发的这种双重追踪体内受体浓度成像(RCI)技术包括同时注射靶向和非靶向的成像制剂,随后研究者
[医疗电子]
保时捷Taycan: 前级变速箱和后级两档变速箱
Taycan 这台车在开发中,我们能看到目前保时捷的工程资源,还是围绕整车操控、动力总成特别是变速箱层面的设计在做。前面我们看到围绕 800V 的电机设计和 SiC 逆变器设计,其实我觉得对于保时捷工程团队而言,前后两个变速箱的设计可能是他们最得意的作品。 备注:动力总成这块是以摘录为主,把保时捷的设计中的一些考虑和一些我们之前不清楚的细节介绍清楚,仅供参考 01. 第一部分 前桥变速箱 前桥变速箱由三个总成所组成,轴向排列分别为输入级行星齿轮组、负载级行星齿轮组和直齿轮差速器。 图1 前桥变速箱 输入级唤醒齿轮组在前桥变速箱以第一传动比起作用,负载级行星齿轮脱家同时承担直齿轮差速器驱
[嵌入式]
基于CAN总线的集散控制系统智能节点的设计
引言 现场总线是当今自动化领域技术发展的一个热点,被誉为自动化领域的计算机局域网。它的出现,标志着工业控制技术领域又一个新时代的开始,并对该领域的发展产生了重要的影响。控制器局域网CAN(Controller Aera Network)属于现场总线的范畴,CAN总线的数据通信具有极高的可靠性、实时性和灵活性的特点,是一种有效支持集散控制系统和实时控制的多主串行总线。 1. 基于CAN总线的集散控制系统 图1 基于CAN总线的集散控制系统 基于CAN总线的集散控制系统如图1所示,采用现场总线式控制系统FCS(Fieldbus Control System)结构,由上位机、CAN总线控制网络、CAN智能节点组
[工业控制]
汽车总线CAN BUS的保护设计
近年来人们对车身舒适性,安全性及信息娱乐性的智能化高度要求,汽车电子也持续的高速发展着,目前车用电子所占比汽车成本约为40%~60%,各种的车身电子控制系统和车载电子控制装置持续的引入汽车设计架构中,包含各式的传感器模块单元,如温度,轮速,转角和加速度等传感器,搭载着电动辅助转向和电子式驻煞车系统,不断满足我们驾驶员和乘客的舒适乘坐和安全需求。 而在这些为数众多的车用电子系统之间,车用控制器局域网络接口(CAN Bus)由于采用双线串接拓朴架构,可串接或并接任意节点装置,不仅使布线及维护的复杂度大幅降低,并可一并降低线材及布线成本,因此成为首选的车用系统传输接口。 CAN Bus传输接口所采用的双线差动(Two w
[嵌入式]
基于AT89C51应用系统的串行通信设计
1 引 言 在红外成像技术的电力设备状态检测系统中,基于AT89C51单片机的应用系统,采用美国雷态公司的型号为3iLRL3的非接触式红外测温仪.该测温仪采用的是RS232C串行通信标准接口,该接口在很多通信设备中通用,目前与PC机的直接串行通信也是RS 232C接口。尽管RS232C性能指标并非很好,但还是有广泛的市场支持。串行通信技术在测控系统中占有很重要的地位,只用三根线.就可以方便的在2个数字设备之间进行信息的交换,实现全双工的传送数据,硬件成本低.而且通用性好。 2 串行通信的硬件设计 在所开发的系统中.红外测温仪将检测电力没备的工作和环境温度,通过RS 232C串口传给单片机,同时由单片机控制检测装置的在线工作组态
[应用]