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总线数据。经实践证明,该模块工作稳定、可靠,且成本低,完全能够满足系统的指标要求,取得了良好的应用效果。
关键字:电平 协议 逻辑 信号
引用地址:
CAN-RS232通信转换模块的设计与实现
推荐阅读最新更新时间:2024-05-13 18:35
泰克TLA6204逻辑分析仪特性
逻辑分析仪是分析数字系统逻辑关系的仪器。逻辑分析仪是属于数据域测试 仪器中的一种总线分析仪,即以总线(多线)概念为基础,同时对多条数据线上的数据流进行观察和测试的仪器,这种仪器对复杂的数字系统的测试和分析十分有效。逻辑分析仪是利用时钟从测试设备上采集和显示数字信号的仪器,最主要作用在于时序判定。由于逻辑分析仪不像示波器那样有许多电压等级,通常只显示两个电压(逻辑1和0),因此设定了参考电压后,逻辑分析仪将被测信号通过比较器进行判定,高于参考电压者为High,低于参考电压者为Low,在High与 Low之间形成数字波形。 一套全面的信号完整性工具,使您可快速隔离、发现和解决复杂的信号完整性问题 毛刺触发和存储-允许用户触发并突出
[测试测量]
AD8309用于接收信号强度指示
摘要: 本文介绍了中频(5-500MHz)对数放大器的主要特性以及在接收信号强度指示中的应用。
关键词: RSSI 对数放大器
一、引言
在无线电产品中,接收信号强度指示(RSSI)是一项重要功能,允许设备自动调节部分参数以使RSSI值最大。对于无线电信号的RSSI,通常的处理是信号经放大后下变频至对数放大器的输入频率范围内,利用对数放大器RSSI端输出电压与输入信号分贝值成正比的特性来完成RSSI的测量。AD8309是ADI公司生产的先进的中频信号处理器件,可用于高性能接收机。它可以提供与输入信号分贝值成正比的解调(基带)输出,用来对输入信号进行精确的对数测量,即完成RSSI
[半导体设计/制造]
声卡和Matlab的虚拟信号发生器的工作原理
声卡从话筒中获取声音模拟信号,通过模数转换器(ADC),将声波振幅信号采样转换成一串数字信号,存储到计算机中。重放时,这些数字信号送到数模转换器(DAC),以同样的采样速度还原为模拟波形,放大后送到扬声器发声,这一技术称为脉冲编码调制技术(PCM)。作为多媒体计算机系统中最基本最常用的硬件之一,其技术已经发展成熟,他同时具有A/D和D/A转换功能,经济方便,目前已经被广泛应用于数据采集和虚拟仪器系统的设计[1,2]。Matlab是一个数据分析和处理功能十分强大的工程实用软件,他的数据采集工具箱(dataacquisitiontoolbox)为实现数据的输入和输出提供了十分方便的函数和命令,利用这些函数和命令可以很容易地实现对外部
[测试测量]
一种矢量信号分析仪计量方法
1.当前矢量信号分析仪计量校准方法概述 目前常用的信号分析仪(VSA)计量方法采用标准矢量信号源来进行,优点是简单方便易于操作,缺点是无法保证“标准源”的准确性、稳定性和重复性。 国际上的计量机构,如德国PTB、英国NPL、美国NIST采用高速采样示波器和多载波信号源,通过同步触发装置进行时间和相位同步并进行系统校准,示波器的采样值,经过软件程序计算后,作为幅度相位参数基准,从而实现信号分析仪参数的计量校准。 多载波信号源+示波器+同步器优点是将矢量参数溯源到功率电平、时间和频率上,缺点是示波器频率范围受限,不确定度较大,同步延时在微波测量时带来较大的相位误差,系统复杂,引入更多的不确定度。 2.本文提出的计量校准技术 本
[测试测量]
数字信号控制器在太阳能逆变器中的应用
1、数字信号控制器(DSC)是数字控制系统的核心 数字信号控制器(DSC)平台是能将微控制器(MCU)的控制外设和—流的DSP(数字信号处理)技术的处理能力与经济性相结合,其特点是简便易用。如今TI、Microchip等公司提供了DSP的高性能及微控制器集成与易用性,优异的处理能力、中断处理功能、控制特定外设集成能力与经济性的独特组合为控制系统提供了实质性的益处。通过这些优势,诸如改善的系统效率及增加的创新性能,能够采用更少的外部组件,更低的成本,为空间受限的应用推出极小化封装产品。 如今把握当前国内外受关注的绿色环保概念,开发与生产太阳能光伏组件及太阳能光伏系统,并不断开发适合国际、国内市场需求的系列应用产品,是
[工业控制]
几种微波信号发生器选择比较
信号发生器在测试系统中有明确规定的任务:模拟被测设备(DUT)在正常工作时可能遇到的信号。这种信号过去只是正弦波、脉冲或经过模拟调制的信号。但随着通信格式不断发展而不再局限于简单的调幅(AM)和调频(FM),对信号发生器的要求正变得越来越高。随着越来越多地设备使用数字调制格式(和非传统的信号格式,如跳频和超宽带(UWB)通信),新的信号发生器必须能够模拟采用复杂数字调制方案的多频信号。不仅如此,信号发生器的外形也在发生变化,从传统的机架式或台式仪器发展到了更紧凑的模块,在曾经是一台信号发生器占用的空间内现在可以摆放多台分立信号源。 传统的机架式信号发生器仍然在执行它们份内的测试任务,有时作为独立的仪器,有时作为自动化系统的一
[测试测量]
如何识别陌生CAN网络的协议?
在CAN网络中,所有节点的数据收发共享一条总线。当面对未知的多节点CAN总线网络时,如何准确分析各节点间的通信协议呢? 一、CAN总线通信方式 与485类似,CAN-Bus也是以总线的方式进行通信的,所有的CAN节点都挂在一对差分线上。但CAN总线中的节点不存在主从的概念,当节点有数据需要上传时可自主、即时发送,先进的仲裁机制保证数据不会冲突。 图1 CAN总线通信方式 二、CAN总线协议分析 对比标准的通信七层模型,CAN总线大体可分为物理层、链路层、应用层。对链路层的解析就能得到节点ID号。若对一个“未加密”CAN总线做链路层的解析,使用CAN总线接口卡(也称CAN盒)即可。这类工具能将CAN通讯转换为USB、
[工业控制]
小模拟信号的精确度测量的设计解析
一个量程10千克的秤若能分辨出1克的重量变化,那么这个秤的主要组件常常是增量累加模数转换器。设计师需要温度测量的精确度达到0.01度时,增量累加ADC也常常成为首选方案。增量累加ADC还能够取代那些前面加有一个增益级的传统型逐次逼近寄存器ADC。由于这些数据转换器非常适用于量度真实世界的微小变化,所以温度传感器、天平、换能器、流量计等精密仪器以及无数其他类型的传感器都非常适合采用增量累加ADC。 增量累加ADC表面上看起来也许很复杂,但实际上它是由一系列简单的部件所构成的精确数据转换器。增量累加ADC由两个主要构件组成:执行模数转换的增量累加调制器和数字低通滤波器/抽取电路。增量累加调制器的基本构件(集成运算放大器、求和节点、比较
[电源管理]