当前位置: 首页 > 范文大全 > 公文范文 >

基于AVR处理器的RS232-CAN通信转换模块的设计

时间:2022-03-23 09:18:58  浏览次数:

【摘要】简要介绍了CAN总线的原理,提出了以内置CAN控制器的微处理器AT90CAN128为核心的,以TJA1050为CAN收发器的通信转换模块硬件电路的设计,并结合软件设计进行数据的收发,实现了RS232与CAN总线的互相通信。

【关键词】CAN总线;RS232串行口;AT90CAN128;TJA1050

1.引言

目前在工业测控设备和系统中有很多是采用RS232接口,但是由于RS232通信距离较短(根据EAT/TAI-232标准,仅为15m),传输速率低,接口容易损坏,而且只能进行点到点通信,难以组成多点通信网络[1]。为了延长RS232的通信距离,并将RS232节点组成通信网络,由于CAN总线在组网和通信上的能力能完全满足这些要求,本文介绍一种可以将RS232转换成CAN总线的设计方法,以更好地解决这些问题。

2.CAN总线简介

CAN全称为Controller Area Net,即控制器局域网,是一种有效的支持分布式控制或实时控制的串行通信网络。CAN是德国Bosch公司为汽车的检测、控制系统而设计的,非常适合工业过程监控设备互联。

CAN控制器工作于多主站方式,网络中的各节点可分为不同的优先级,满足不同的实施要求。采用非破坏性总线仲裁技术,有效避免了总线冲突。CAN的最远通信距离可达到10Km,最高通信速度可达1Mbps。CAN协议废除了传统的站地址编码,可使网络内的节点个数在理论上不受限制,通信实时性强,提高系统的可靠性和系统的灵活性[2]。

CAN采用短帧结构,缩短了传输时间,因而受干扰的概率低,重新发送时间短。CAN每帧信息都有CRC码校验及其他检错措施,保证了数据的出错率极低。CAN的通讯介质可以为双绞线、同轴电缆或光纤,选择灵活,成本低。CAN节点在错误严重的情况下具有自动关闭功能,以使总线上其它节点的操作不受影响。CAN总线通过两个输出端CANH和CANL与物理总线相连,不会出现损坏某些节点的现象[3]。

由于CAN具有这些卓越的特性和极高的可靠性,因而非常适合工业过程监控设备的互连。目前CAN已成为国际标准(ISO—11898),并被公认为最有前途的现场总线之一。

3.总体设计及工作原理

RS232串口通信与CAN通信是两种不同的通信方式,数据的传输方式和逻辑电平的电压表示都是不同的,该设计主要是完成RS232与CAN总线之间的转换,并进行数据的双向传输。设计原理如图1所示。

从RS232向CAN总线传送数据时,数据通过RS232串口传送到RS232电平转换器进行电平转换,将232电平转换成TTL电平,经光电隔离,由内置CAN控制器的微处理器对数据进行提取,将有效的数据提取出来,增加帧的结构、帧类型、字节长度和标识符等,生成CAN报文格式,经光电隔离最后由CAN收发器发送到CAN总线。

从CAN总线向RS232传送数据时,CAN收发器接收到数据,并输送给微处理器,经微处理器对数据进行提取、转换,再传送给RS232电平转换器进行电平转换,转换成RS-232格式的数据。

4.软硬件设计

4.1 硬件设计

本设计采用的232电平转换器为MAX232-CPE,微处理器为内置CAN控制器的AVR单片机AT90CAN128,6N137高速光耦合器可实现光电隔离作用,TJA1050高速CAN收发器为其CAN收发器。AT90CAN128是该模块的控制中心,控制着RS232和CAN总线的通信。

4.1.1 微处理器

微处理器采用的是具有片内CAN控制器的高性能AVR单片机AT90CAN128,AT90CAN128是一功能强大的、低功耗的具有RISC内核的单片机,是以高密度非易失性内存技术生产,具有64个管脚,128K字节的FLASH,4K字节EEPROM和4K字节SRAM。该单片机具有15个分别带有标识符标签和掩码的全报文对象,完全履行CAN2.0A和CAN2.0B格式,可在现场编程[4]。该单片机能够实现CAN数据的传输、接收、自动回复等,也能够处理各种的帧类型,AT90CAN128主要实现RS232串口的初始化、CAN通讯的初始化、信息的发送与接收等。

4.1.2 RS-232通信接口部分

RS-232通信接口部分的电路图如图2所示。

RS-232通信接口部分由MAX232CPE芯片构成。实现TTL/CMOS电平和RS-232电平之间的相互转换。MAX232CPE的12脚(R1OUT)、11脚(T1IN)通过高速光耦合器6N137分别与AT90CAN128的2脚(PE0)、3脚(PE1)相连,光耦合器6N137能增强RS232节点的抗干扰能力,并能使各节点间电气隔离。该光耦合器两侧采用5V的DC-DC电源B0505LS-1W,可使器件的VCC与V3完全隔离,进而提高了系统的抗干扰能力及节点的稳定性、安全性。

4.1.3 CAN总线通信接口部分

CAN总线通信接口部分的电路连接如图3所示。

TJA1050是一种高速CAN收发器,最高速率可达到1Mbps,并包含有电流限制电路和温度保护电路。通过其引脚8(S)可以选择两种工作模式:高速模式或静音模式。当引脚8接地,就选择的是高速模式,高速模式就是普通的工作模式。当引脚8接高电平,则TJA1050进入静音模式,此时发送器是禁止的[5]。

AT90CAN128的30脚(PD5)、31脚(PD6)分别通过高速光耦合器6N137与TJA1050的1脚(TXD)、4脚(RXD)相连,光耦合器6N137能增强RS232节点的抗干扰能力,并能使各节点间电气隔离。该光耦合器两侧采用5V的DC-DC电源B0505LS-1W,可使器件的VCC与V6完全隔离,进而提高了系统的抗干扰能力及节点的稳定性、安全性。

4.2 软件设计

程序主要包括:RS232串口的初始化程序、AT90CAN128单片机及其内部CAN控制器的初始化程序、单片机接收串口中断服务子程序、单片机发送数据到串口终端服务子程序、单片机接收CAN数据子程序、单片机发送CAN数据子程序等。程序流程图如图4所示。

5.结论

本文简要介绍了一种以AT90CAN128微控制器为核心的RS232-CAN通信转换模块的主要软硬件设计。该通信模块已成功运用于大成公司的全电子执行模块的硬件检测模块,方便地实现RS232多点组网,且不需要更改原有RS232通信软件。目前,该模块运行稳定,能够很好的实现预期功能。与目前同类型的转换模块相比较,大大降低成本,简化硬件结构,提高通信效率、抗干扰性,更加安全、稳定、可靠。

参考文献

[1]杨春杰,王曙光,亢红波.CAN总线技术[M].北京:北京航空航天大学出版社,2010

[2]杜尚丰,曹晓钟,徐津.CAN总线测控技术及其应用[M].北京:电子工业出版社,2007

[3]王强,张建喜.RS232通信网络与CAN总线通信网络互联设计[J].电子技术应用,2010,36(9):188-160

[4]杨鹏,王晓雷,徐晓云,郭欣.RS-232-CAN智能转换卡的设计[J].仪表技术与传感器,2009(12):97-98

[5]王丽梅,陈光武,魏宗寿.AT90CAN128的开关量控制单元设计[J].单片机与嵌入式系统应用,2008(4):41-44

作者简介:刘虎啸(1986—),男,河南周口人,兰州交通大学硕士研究生,主要从事铁路信号方面的研究。

推荐访问: 处理器 模块 转换 通信 设计