引言
RS422是串行通讯中应用较广的标准总线。他能很方便地把各种计算机、外部设备、测量仪器有机地连接起来,构成一个测量、控制系统。但是,他传输速率低、传输距离短并且接口处信号间易产生串扰,因此不能直接应用于工业控制。
CAN总线刚好以其高性能、高可靠性及独特的设计赢得了工业界的高度重视。例如,奔驰S型轿车上采用的就是CAN总线系统,美国商用车辆制造商们也将注意力转向了CAN总线,美国一些企业已将CAN作为内部总线应用在生产线和机床上。同时,由于CAN总线可以提供较高的安全性,因此在医疗领域、纺织机械及电梯控制中也得到了广泛应用。可见,实现RS422总线和CAN总线之间的转换非常有必要。
2硬件设计
2.1总体设计分析
在该系统中,采用AT89C52单片机。RS422总线传输过来的信号经过收发器后进入89C52,处理后送到CAN控制器中,然后到收发器,最后由CAN出口发出。为了保证系统的安全工作,在CAN控制器上加了一个“看门狗”。总体设计框图如图1所示。
2.2CAN控制器与CPU接口设计
对于CPU来说,CAN控制器是确保双方独立工作的存贮器映象外围设备。CAN控制器与外部CPU的接口是通过控制器接口逻辑(CIL)实现的, AT89C52 CPU通过将地址总线(AB)和数据总线(DB)连接到CIL上来完成与CAN控制器之间的信息交换,不需要专门的控制总线(CB),CPU与82C200之间的状态、控制和命令信号的交换在CAN控制器中完成。
2.3电子看门狗设计
为了提高系统的抗干扰性能,采用X25045来做一个电子看门狗。X25045把3种常用的功能:看门狗定时器、电压监视和 E2PROM组合在单个封装之内。这种组合降低了系统成本,并减少了对电路板空间的要求。看门狗定时器对微控制器提供了独立的保护系统。当系统出现故障时,在可选的超时周期( timeout interval )之后, X25045 看门狗将以 RESET 信号作出响应。
3软件设计
CAN总线系统的初始化设计是软件设计的关键,在初始化之前,应设置输出控制寄存器(OCR)的复位请求位为高,再设置其他寄存器。命令寄存器(CMR)控制缓存器的收发状态;中断寄存器(IR)、状态寄存器(SR)查询82C200的工作状态;接收码寄存器(ACR)设定工作地址;接收屏蔽寄存器(AMR)设定工作形式;总线定时寄存器(BTR0、BTR1)设定工作频率、采样频率;输出控制寄存器(OCR)一般为正常输出方式,最后应使复位请求位从高变低,使CAN控制器进入正常工作状态。主程序框图如图2。
[page]
3.2转换主程序设计如下:
结语
CAN总线以其高性能、高可靠性及其独特的设计越来越受到人们的重视,并被公认为最有前途的总线之一。把RS422转换到CAN正是适应了这一趋势,期望有更多的智能电子产品设计者加入到这一领域的应用研究中来。
关键字:AT89C52 RS422 CAN总线
引用地址:
用AT89C52单片机实现RS422到CAN总线的转换
推荐阅读最新更新时间:2024-03-16 12:48
基于CAN总线的RS-232串口设备远程通信
摘要:阐述了CAN总线在232串口设备远程通信或自组网络中的应用,介绍了CAN到RS-232转换装置的软硬件设计方法。重点对软件设计中CAN波特率的设置、串口波特率的自动检测以及数据流控制等作为详细的叙述。
关键词:CAN 波特率 流控制
1 引言
工业设备通信通常涉及到很多硬件和软件产品以及用于连通标准计算机平台(个人计算机或工作站)和工业自动化应用设备的协议,而且所使用设备和协议的种类繁多。因此,大部分自动化应用设备都希望执行简单的串行命令,并希望这些命令同个人计算机或者附加的串行端口板上的标准串行端口兼容。RS-232是目前PC机与通信工业中应用最广泛的一种串行接口。RS-232被定义为一种在低速率串行通讯中增加通讯距
[应用]
CAN总线发送与接收函数
初始化CAN模块 void INIT_CAN0(void) { if(CAN0CTL0_INITRQ==0) // 查询是否进入初始化状态 CAN0CTL0_INITRQ =1; // 进入初始化状态 while (CAN0CTL1_INITAK==0); //等待进入初始化状态 CAN0BTR0_SJW = 0; //设置同步 CAN0BTR0_BRP = 7; //设置波特率 CAN0BTR1 = 0x1c; //设置时段1和时段2的Tq个数 ,总线频率为250kb/s // 关闭滤波器 C
[单片机]
基于单片机AT89C52的频率特性测试仪设计
引言 频率特性测试仪也叫扫描仪,早期的频率特性测试仪是通过手动改变频率的方法逐点测量完成的,后来按照这种方法设计了专门的扫描仪用于频率特性的测量。早期的测量仪大都采用分立元件来实现各种功能,显示部分也是用传统的示波器。所以体积大、设备重、故障率高、操作复杂、价格昂贵,有的只能测量幅频特性,且精度不高。像BT6型超低频频率特性测试仪,就是采用分立元件。由于分立元件分散性大,参数变化与外部条件有关,因而产生的频率稳定度差、精度低、抗干扰能力不强,成本反而高。 随着频率合成技术及微电子技术的发展,频率特性测试仪也得到改进,扫频源采用数字量进行控制,数字化信号源可以弥补分立元件的不足,测量部分也进行了数字化的改进,大多都在低
[单片机]
基于CAN总线和MSP430的CO红外检测系统设计
1 引言 一氧化碳(CO)是剧毒性气体,人体吸人后造成人体组织和细胞缺氧,导致引起中毒窒息。在煤矿井下,CO也是引起瓦斯爆炸的主要气体之一。CO无论是对工业生产还是人类都造成巨大的损害,因此,CO检测尤为重要,特别在煤矿井下,《煤矿安全规程》规定,井下作业场所的CO浓度应控制在0.002 4%以下。因此,实时、准确地测出井下CO气体浓度,对保障煤矿工业安全生产具有重要意义。 目前检测CO的方法主要有化学法、电化学法、气相色谱法等。这些方法普遍存在价格高、普适性差等问题,且测量精度较低。这里设计一种新的检测系统,选用红外CO传感器和MSP430单片机作为核心信号处理电路,结合数字滤波、温度补偿运算.具有检测浓度范围宽、使用
[单片机]
基于CAN总线的老化测试系统的设计方案
1 引言 汽车上用的电子设备的可靠工作与优良性能关系者驾驶者的生命安全。车用电子设备出厂前要求对设备内部电路板进行长时间老化测试,以检测电路板在高温环境和各种输入信号条件下,是否仍正常工作。只有经过老化测试的电路板才能出厂。由于需要老化测试的电路板数量巨大,要求该系统能同时老化测试许多块被检测电路板,因此设计了本老化测试系统。整个老化测试由 1个通信模块、 10个测试模块、1个温控模块及上微机软件构成。本老化检测系统的系统结构图如图 1所示。
图 1 系统结构图在本系统中,每个检测模块最多可同时检测 10块电路板,共有 10个检测模块,因此,整个系统在一次老化检测过程可以同时检测100块电路板。检测模块将检测的数据通
[嵌入式]
AT89C52单片机的SD卡读写设计原理
本文主要介绍了SD卡在电能监测及无功补偿数据采集系统中的应用方案。 设计方案 应用AT89C52读写SD卡有两点需要注意。首先,需要寻找一个实现AT89C52单片机与SD卡通讯的解决方案;其次,SD卡所能接受的逻辑电平与AT89C52提供的逻辑电平不匹配,需要解决电平匹配问题。 通讯模式 SD卡有两个可选的通讯协议:SD模式和SPI模式。SD模式是SD卡标准的读写方式,但是在选用SD模式时,往往需要选择带有SD卡控制器接口的MCU,或者必须加入额外的SD卡控制单元以支持SD卡的读写。然而,AT89C52单片机没有集成SD卡控制器接口,若选用SD模式通讯就无形中增加了产品的硬件成本。在SD卡数据读写时间要求不
[单片机]
can总线与485总线有什么区别
以往,PC与智能设备通讯多借助RS232、RS485、以太网等方式,主要取决于设备的接口规范。但RS232、RS485只能代表通讯的物理介质层和链路层,如果要实现数据的双向访问,就必须自己编写通讯应用程序,但这种程序多数都不能符合ISO/OSI的规范,只能实现较单一的功能,适用于单一设备类型,程序不具备通用性。在RS232或RS485设备联成的设备网中,如果设备数量超过2台,就必须使用RS485做通讯介质,RS485网的设备间要想互通信息只有通过“主(Master)”设备中转才能实现,这个主设备通常是PC,而这种设备网中只允许存在一个主设备,其余全部是从(Slave)设备。而现场总线技术是以ISO/OSI模型为基础的,具有完整的软件
[嵌入式]
基于C8051F系列单片机和CAN总线技术实现电动汽车数字控制系统的设计
电动汽车是集计算机技术、通信技术、电子技术、新材料技术等一体化的高科技产品,其结构复杂,有多种相互作用却又相对独立的部件,且车载环境较恶劣,有很强的干扰,用模拟量的控制可靠性不高。先进高效的控制体系结构,可以使电动汽车各系统之间的数据交换满足简单迅速、可靠性高、抗干扰能力强、实时性好、系统错误检测和隔离能力强等要求。本文采用了先进的计算机技术和CAN总线技术,集智能控制、信号采集、数据处理和通信于一体,控制实时性好,可实现整车控制智能化和多传感器信息的有效融合。 1 CAN总线的简介 CAN(ControllerAreaNewtork)即控制器局域网,是一种先进的串行通信协议,属于现场总线范围。CAN总线是最初由德国Bosch
[单片机]