版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、USB/CAN通信转换器设计方案本文阐述了一种 USB - CAN总线转换装置,方便 CAN总线与计算机进行链接。本设计方案主要包括:任务说明、总线简介、硬件设计、软件设计、总结等5部分。一、任务说明设计一种USB-CAN总线转换器。完成从一台计算机的 USB把1个数据帧(自己定义) 通过USB/CAN转换器将数据发到 CAN总线上;另一台计算机 CAN/USB转换接受数据。二、总线介绍CAN总线是一种流行的现场总线,其协议分为物理层和数据链路层。物理层定义信号 如何发送,涉及位编码,位定时和同步,没有定义驱动器和接收器的特性,以便根据具体情况灵活应用。数据链路层又包括媒体访问子层MAC层和逻
2、辑链路子层 LLC层。MAC子层是CAN协议的核心,它可响应报文帧,仲裁,应答,错误检测和标定。LLC子层主要功能是报文滤波,超载通知和恢复管理。CAN总线主要有以下特点:.以多主方式工作,没有主节点和从节点之分;.节点信息分为不同优先级,可满足不同实时要求;.采用非破坏性总线仲裁技术,不同于以太网的碰撞检测技术,而是按位对标识符进行仲 裁,优先级最高的节点获得总线的使用权;.采用报文滤波实现多种通信方式,无需专门调度。在验收滤波器的帮助下,CAN节点只接收识别码与验收滤波器中预设值一致的信息;.直接通信距离最远达到 10km (5kbps以下),通信速率最高可达 1Mbps (通信距离最长为
3、 40m);. CAN报文数据帧由7个不同的位场组成,即帧起始,仲裁场,控制场,数据场,CRC校验场,ACK应答场和帧结束。仲裁场包括标识符(11位或29位),控制场包括数据场的字节数目,数据场可包括 08个字节;. CAN总线协议固化在相关芯片中,主要有总线控制器和总线收发器。前者完成CAN总线协议中物理层和数据链路层中所有功能,后者提供总线驱动能力。USB即通用串行总线”是一种应用在 PC中的表型总线,由Intel、Microsoft、NEC等公司共同提出,他是一种新型的外接串联口,提出该规格的厂商希望用USB取代现有的外接设备接口,它还具备连接单一化、软件自动侦测以及热插拔(即插即用)的
4、功能,USB具有以下特点:1)数据传输速率高。 USB高速:480Mb/s; USB全速:12Mb/s; USB低速:1.5Mb/s。2)数据传输可靠。USB事务处理包括错误检测机制,可以确保数据无错误发送,在发生错误时,事务处理可以重新进行。3)同时挂接多个 USB设备,每个USB总线支持127个设备的连接。USB接口能为设备供电。 当外界电源要求电压为 5V且电流小于500mA时,可以直接从USB总线获取电源,这样,USB设备无需专用电源线,从而降低了设备成本。5)支持热拔。USB实现了真正的 即插即用 功能,设备连接后由 USB自检测,并且由软 件自动配置,完成后立刻就能使用,不需要用户
5、进行干涉。三、系统硬件设计系统硬件结构主要包括主控制芯片,USB通信部分以及CAN通信部分。总体结构如下图所示:USB电源USB控制器一AT89C52 CAN控制器主控制芯片选用 Atmel公司的AT89C52。USB通信采用USB控制器PDIUSBD12及USB 接口。CAN通信采用CAN总线控制器 SJA1000和CAN总线收发器82C250,在SJA1000 和CAN总线收发器82C250之间使用了 2个高速光电隔离器件 6N137实现了总线与控制器 的隔离,以避免干扰提高工作可靠性。USB总线接口的设计在微控制器和USB接口的选择上有2种方式,一种是采用具备 USB通信功能的微处理器。
6、随着USB应用的日益广泛,Intel, Cypress, Cypress, Philips等芯片厂商都推出了具备USB通信接口的微处理器。其中有 8x930A, 8x931A, EZUSB等。由于这些单片机具需要购买新的开发系统, 投资较高。有USB接口,这些芯片与过去的开发系统是不兼容的, 另一种是采用普通微处理器加上专用的 USB通信芯片。现在的专用芯片中较流行的有Nationalsemiconductor公司的 USBN9602 , ScanLogic公司的SL11 , Philips的PDIUSBD12等。其中PDIUSBD12是一款性价比很高的 USB接口器 件,他通过并行接口与微处
7、理器进行通信,这种接口方式使得设计者可以选择自己熟悉的控制器进行开发,简化了开发难度,加快了系统的设计。所以本系统采用PDIUSBD12与Atmel 的AT89C52连接的方式进行开发。原理图如图1所示。图1: USB总线接口设计CAN总线接口的设计这部分由微处理器、CAN控制器和CAN收发器组成,微处理器负责将数据发送给 CAN 控制器,并经由 CAN控制器、光耦以及 CAN收发器将数据发往 CAN总线,原理图如图2 所示。CAN总线控制器采用 Philips公司的SJA1000,并辅以该公司的 PCA82C250接口驱动 器。为了增加系统抗干扰能力,在 SJA1000和CAN总线收发器82
8、C250之间使用了 2个高 速光电隔离器件6N137实现了总线与控制器的隔离,以避免干扰提高工作可靠性。CAN控制器可以选择从 RX0, TX0或RX1 , TX1接受发送数据,当使用 RX0, TX0工作时,需要将RX1接到一个稳定的电平上。ri口二二三 刘D区口区 4g图2: CAN总线接口设计四、系统软件设计设备程序主要包括: 初始化程序,前台主程序循环,相关通信子程序,后台中断服务程序等组成。系统上电后首先对相关设备及存储器进行初始化操作,然后进入主程序循环, 在主程序里通过查询状态位执行相关通信程序,包括向USB发送数据子程序及向 CAN总线发送数据子程序。后台中断服务程序与前台主程序之间的数据交换通过事件标志和数据缓冲区来实 现。当PDISUBD12从USB收到一个数据包,或者CAJ1000从C AN总线上收到数据包时, 对微处理器产生一个中断请求,微处理器立即响应中断。 后台中断服务程序流程如图3所示。总体软件流程如图4所示。图3 :后台中断服务程序流程图4:程序流程框图具体程序略。五、总结随着电子设备的大量出现及针对各种控制系统的实际需求,各种通信网络相继
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 员工工位调整安排
- 电影产业园租赁合同
- 珠宝行业合同归档方案
- 危险品事故应急法规
- 校园道路铺设工程合同
- 水产加工鱼塘施工合同模板
- 建筑绿化工程劳务分包合同
- 商业综合体合同
- 旅游发展专项资金管理办法
- 建筑智能化交货期承诺书范本
- 杭州会展业发展与对策研究文献综述
- 完整版方法验证报告模板最终
- 2022年物业管理师《物业管理实务》考试题库大全-下(多选题、简答)
- 电力管道资料表格(共30页)
- 大班科学活动教案《豆豆家族》含PPT课件
- 压力管道检验员在线考试习题与答案
- 【精品试卷】部编人教版(统编)一年级上册语文第一单元测试卷含答案
- 金属有机化学ppt课件
- 应急管理试题库
- 工地观摩学习心得体会三篇
- 当当网与电子商务47条标准
评论
0/150
提交评论