原创 USB-CAN-RS232总线转换电路设计及实现

2006-8-29 09:33 6763 10 12 分类: 通信

USB-CAN-RS232总线转换电路设计及实现

吴志伟,丁铂
(西安科技大学 机械工程学院 陕西 西安 710054)

1 引言

随着电子设备的大量出现及针对各种控制系统的实际需求,各种通信网络相继产生。由于它们的总线结构,通信协议及传输特点各不相同,给不同设备之间的连接带来很多麻烦,因而急需各种总线之间的转换装置。目前较流行的现场通信网络有RS-232,RS422/485、HART、Profield、Dupline、CAN和LonWorks等,本文阐述了一种USB-CAN-RS232三总线转换装置,电路设计简单新颖,并并且携带方便,实用性很强。

2 各种总线的特点

2.1 CAN(Controller Area Netwrok)

CAN是控制器局域网络,属于工业现场总线的范畴。与一般的通信总线相比,CAN总线的数据通信具有突出的可靠性、实时性和灵活性,具有较高的通信速率(最高达1Mb/s),较远的通信距离(最远达10km),良好的抗电磁干扰能力,而且采用总线仲裁技术,通信方式灵活,越来越受到人们的重视,它在汽车领域的应用最为广泛,一些著名的汽车制造厂商如BENZ(奔驰)、BMW(宝马)、PORSCHE(保时捷)、ROLLS-ROYCE(劳斯莱斯)和JAGUAR(美洲豹)等都采用CAN总线实现汽车内部控制系统与各检测和执行机构间的数据通信。

2.2 USB(Universal Serial Bus)

USB即"通用串行总线"是一种应用在PC中的表型总线,由Intel、Microsoft、NEC等公司共同提出,他是一种新型的外接串联口,提出该规格的厂商希望用USB取代现有的外接设备接口,它还具备连接单一化、软件自动侦测以及热插拔(即插即用)的功能,USB具有以下特点:

1)数据传输速率高。USB高速:480Mb/s;USB全速:12Mb/s;USB低速:1.5Mb/s。
2)数据传输可靠。USB事务处理包括错误检测机制,可以确保数据无错误发送,在发生错误时,事务处理可以重新进行。
3)同时挂接多个USB设备,每个USB总线支持127个设备的连接。
4)USB接口能为设备供电。当外界电源要求电压为5V且电流小于500mA时,可以直接从USB总线获取电源,这样,USB设备无需专用电源线,从而降低了设备成本。
5)支持热拔。USB实现了真正的"即插即用"功能,设备连接后由USB自检测,并且由软件自动配置,完成后立刻就能使用,不需要用户进行干涉。

3 器件特性

3.1 SJA1000型CAN总线控制器

SJA1000是Philips公司早期PCA82C200型CAN控制器的代替品,功能更强,具有如下特点:

完成兼容PCA82C200及其工作模式即BASICCAN模式;
具有扩展的接收缓冲器,64字节的FIFO结构;
支持CAN2.0B;
支持11位和29位识别码;
位速率可达1Mbit/s;
时钟频率高达24M赫兹;
支持与不同微处理器的接口;
可编程的CAN输出驱动配置;
工作温度范围宽(-40摄氏度~+125摄氏度)。

SJA1000的引脚排列如图1所示,其内部主要由接口管理逻辑IML、信息缓冲器(含发送缓冲器TXB和接收缓冲器RXFIFO)、位流处理器BSP、接收过滤器ASP、位时序处理逻辑BTL、错误管理逻辑EML、内部振荡器及复位电路等构成,IML接收来自CPU的命令,控制CAN寄存器的寻址并向控制提供中断信息及状态信息,CPU的控制经IML把要发送的数据写入TXB,TXB中的数据由BSP处理后经BTL输出到CAN BUS。BTL始终监视CAN BUS,当检测到有效的信息头"隐性电平-控制电平"的转换时启动接收过程,接收的信息首先要由位流处理器DSP处理,并由ASP过滤,只有当接收的信息的识别码与ASP检验相符时,接收信息才最终被写入RXB或RXFIFO中,RXFIFO最多可以缓存64字节的数据,该数据可被CPU读取,EML负责传递层中调制器的错误管制,它接收BSP的出错报告,促使DSP和IML进行错误统计。

3.2 USBN9603型USB接口电路

USBN9603的引脚排列如图2所示,它是标准的USB接口电路,符合USB1.0和USB1.1协议。USBN9603集成了3.3V的稳定电源、串行接口引擎SIE、多个USB端点缓冲FIFO、1个8位并行微处理器接口和1个时钟源。



xsj062631_1.jpg

xsj062631_2.jpg

USBN9603的性能如下:低电流,低功能,外接24M赫兹晶体振荡器。
增强型的DMA机制支持数据快速自动传输;
集成了64B的双向FIFO存储器;
外处理器接口模式可由软件控制;
支持24M赫兹晶体振荡器和内部48M赫兹时钟产生电路;
时钟频率可由软件控制;
8位并行接口有两种可选模式,包括地址/数据复用型和非地址/数据复用型;
接收和发送端的缓冲为64B;

4 硬件设计

电路中使用的微处理器是ATMEL公司生产的AT89C51型单片机,硬件连接如图3所示,USBN9603的CLKOUT与AT89C51的XTAL1相连,USBN9603的时钟输出为AT89C51提供时钟输入。AT89C51通过并行地址/数据复用的方式访问USBN9603,AT89C51的P2.0通过74HC14反向后片选USBN9603,其地址为0x00-0x1FF。选用SJA1000作为CAN微控制器,SJA1000集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的帧处理,其地址为0x000-0x0FF。AT82C50作为CAN控制器和物理总线之间的接口,用于提供总线的差动发送能力和CAN控制器差动接收能力。通过AT82C50的引脚3可选择3种不同的工作方式(高速、斜率控制和待机)。该引脚接地为高速方式,高速光耦隔离用6N137实现,其作用是防止串入信号的干扰。MAX232用来完成RS232电平到微控制器接口电路的TTL电平转换,同时还可进行一些总线端口的工作参数设置。



xsj062631_3.jpg

5 软件设计

在微控制器的控制下,各总线之间进行数据交换,微控制器先对各个总线工作参数进行初始化,设置好时钟、寄存器、波特率、并选择合适的中断方式,对于SJA1000,主要指对控制寄存器CR、验收码寄存器ACR、验收屏蔽寄存器AMR、时钟分频寄存器CDR、总线定时寄存器BTR0、总线定时器BRT1等的设置。USB的传输方式有4种:控制传输、块传输、同步传输和中断传输。本设计中使用了控制传输和块传输。USBN9603的内部寄存器和FIFO缓冲区分别对每个端点进行控制,当接到主机法来的IN标记包时,发送端点应自动向上发送数据。如果没有数据发送,则回应NAK(Negative Acknowledegment)握手包。其主程序流程如图4所示。



xsj062631_4.jpg


在设计软件时,一定要正确选择需要传输数据的2种总线,可以用软件或硬件进行选择。

6 结束语

这种3总线转换器可方便地实现不同端口设备之间的数据通信,USB-CAN的转换速率可以达到1Mb/s。如果现场条件要求较高且适应性要求较强,可采用双CPU、加数据缓冲区RAM等措施来完善电路。这样无形中增加了硬件电路的复杂性和软件设计的逻辑性。

 

本文摘自《国外电子元器件》

文章评论2条评论)

登录后参与讨论

用户153979 2008-5-22 17:00

USB-CAN总线转换电路设计及实现 的转换电路的完整论文??

computer00 2007-7-22 21:20

来加入我的USB专区吧:

http://group.ednchina.com/93/

 

讨论和学习USB的空间。现在USB技术已经很流行了,就像以前的串口一样。以前的电子工程师不会搞串口通信就落伍了,而现在的电子工程师如果不会搞USB通信,那就落伍了。电子工程师门,还等什么,赶紧加入小组来学习USB吧……

相关推荐阅读
用户40414 2007-03-12 16:10
基于L64724的卫星解码机顶盒设计
基于L64724的卫星解码机顶盒设计1 概述数字压缩技术的发展,为卫星数字视频广播提供了有力的技术支持。目前虽然尚未形成全球公认的标准,但欧洲DVB-S的提出,无疑是一种可资参考的方案。L64724正...
用户40414 2007-03-06 10:24
struct用法深入探索
1. struct的巨大作用  面对一个人的大型C/C++程序时,只看其对struct的使用情况我们就可以对其编写者的编程经验进行评估。因为一个大型的C/C++程序,势必要涉及一些(甚至大量)进行数据...
用户40414 2006-09-29 11:18
google的另类用法
google的另类用法 在搜索框上输入:   "indexof/"inurl:lib   再按搜索你将进入许多图书馆,并且一定能下载自己喜欢的书籍。   在搜索框上输入:   "indexof/"cn...
用户40414 2006-08-31 16:42
做单片机开发,必须跳出芯片型号!
如题!很多人在谈单片机开发时,经常会将重点放在某一款芯片上,其实这是非常不理智的一种做法,芯片只是一种工具,方法才是根本。在做项目的时候,应该关注的是项目的功能和性能要求,然后采用反推法来分析要实现这...
用户40414 2006-08-29 09:57
城市智能安防系统新型终端监控器的研制
城市智能安防系统新型终端监控器的研制成都迅尔科技有限公司 金虹前言随着国民经济的迅速发展和城市规模的不断扩大,工商企业逐渐增多,新建居住小区不断涌现,流动人口迅速增加,这些既带来了经济的繁荣和人民生活...
用户40414 2006-08-29 09:44
模拟I2C总线多主通信研究与软件设计
作 者:■ 西安电子科技大学 郑旭阳 李兵兵 黄新平摘要:介绍模拟I2C总线的多主节点通信原理,并提出一种新的实现方法。这种采用延时接收比较来实现仲裁的方法,可使不具有I2C接口的普通微控制器(MCU...
我要评论
2
10
关闭 站长推荐上一条 /2 下一条