基于USB技术的CAN总线接口卡的研究与开发
- 格式:pdf
- 大小:232.72 KB
- 文档页数:4
USBCAN智能CAN接口卡广州周立功单片机发展有限公司依靠强大的开发团队与PHILIPS半导体的领先技术致力于发展中国的CANBUS产品与应用事业目前已开发出多款CANBUS接口产品教学仪器分析仪覆盖了CANBUS 各个层次的应用领域数个型号的产品已经完全领先于国外技术水平并已投入广泛的实际应用ZLGCAN系列CANBUS教学设备z TKS-591仿真器z DP-51下载仿真实验仪DP-668下载仿真实验仪z BasicCAN PeliCAN控制模式源代码及高层协议DeviceNET控制源代码ZLGCAN系列CANBUS接口产品z PCI-5121智能CAN接口卡z PCI-9810非智能CAN接口卡z USBCAN智能CAN接口卡z CAN232 智能CAN接口卡ZLGCAN系列CANBUS分析分析仪仪z CANalyst CANBUS分析软件z USBCAN增强型智能CAN接口卡ZLGCAN系列CANBUS产品的主要应用领域z CANBUS教学示范z CANBUS数据分析z CANBUS应用开发z 智能楼宇控制数据广播系统工业自动化控制系统等CANBUS应用系统广州周立功单片机发展有限公司立志成为国内一流的CANBUS开发服务应用的团队关于CANBUS的详细应用请浏览专业网站一USBCAN 智能CAN接口卡USBCAN智能CAN接口卡是与USB总线兼容的CANBUS数据转换卡通过USB电缆与PC进行连接可应用于CANBUS实验室工业控制智能楼宇等CANBUS应用领域进行CANBUS网络数据分析处理也可单独用作CANBUS网络的网关网桥构成不同层次网络中的数据转换系统同时USBCAN智能CAN转换卡可作为开发模块直接嵌入到用户产品USBCAN智能CAN接口卡集成有2个CAN通道1路USB接口是CANBUS产品开发CANBUS 数据分析的有力工具因为具有体积小即插即用等特点也是便携式系统用户的最佳选择USBCAN智能CAN接口卡采用SMD表面贴装工艺四层电路板技术抗干扰能力强非常适合在长期工作环境下使用而且具有体积小巧即插即用等特点也是便携式系统用户的最佳选择USBCAN智能CAN接口卡提供广泛和强大的软件支持这些软件支持包括通用的ZLGVCI驱动程序接口自动实现安装支持在VC++C++Builder Delphi 和VB 等开发环境下进行设计可适合不同的开发人员使用同样USBCAN 智能CAN 接口卡不仅适应基本的CANBUS 产品也满足基于高层协议如DeviceNetCanOpen 等CANBUS产品的开发另外USBCAN 智能CAN 接口卡可以与CANalyst CAN 数据分析软件接口是实现CANBUS 产品开发数据分析的得力工具二产品特点z 支持CAN2.0A 和CAN2.0B 协议符合ISO/ISO 11898规范z 支持1-2路CAN 控制器每路均可单独控制z CAN 控制器波特率在5Kbps 1Mbps 之间可选 z 采用PHILIPS USB 接口芯片符合USB1.1协议规范z 可以直接使用USB 总线电源或使用外接电源+9V +36V400mA z CANBUS 接口采用光电隔离DC-DC 电源隔离隔离模块绝缘电压1000Vrms z 单通道工作时数据流量最高3000帧/秒z即插即用 z 工作温度70z 外形尺寸115mm*76mm三应用领域z CANBUS 产品开发 z CANBUS 数据分析 z CANBUS 主从式网络z CANBUS 教学应用 z CANBUS 网关网桥z CANBUS 工业自动化控制系统z 智能楼宇控制数据广播系统等CANBUS 应用系统z 不同CANBUS 网络间的数据转换四硬件接口外接电源接口指示灯1指示灯2指示灯3接口1接口图2 硬件接口示意4.1 电源接口通过该电源接口USBCAN智能接口卡可以由一个9V36V DC的外部电源为系统供电外部电源并不是必需的当该系统连接到一个USB总线供电的集线器上时必须连接外部电源4.2 CAN接口该接口采用针式的DB9插座其接口定义符合ISO/IS 11898规范表1 CAN接口插座管脚定义管脚定义12 CAN_L3 CAN_GND456 CAN_GND7 CAN_H89同时该接口兼容CANopen DeviceNET规范中的相关标准4.3 信号指示灯系统中应用3个双色二极管来指示系统的运行状态其具体意义如下表2 指示灯状态说明指示灯状态指示状态红色系统初始化状态指示LED1绿色USB接口信号指示红色CAN1接口运行状态LED 2绿色红色CAN2接口运行状态LED 3绿色z 系统上电初始系统初始化状态指示灯点亮LED1 红色表明系统正在初始化否则此时系统电源故障或系统有严重的错误z USB接口连接正常后USB信号指示灯点亮LED1 绿色系统初始化状态指示灯灭USB 接口有数据传输时该指示灯会闪烁z CAN控制器初始化时CAN接口运行状态指示灯红绿色会交替闪烁初始化完毕绿色指示灯亮该状态会一直保持当CAN总线上出现错误时该指示灯转变为红色表3 CANBUS指示灯状态指示灯状态CAN总线状态全暗CAN控制器与总线断开仅绿灯亮CAN总线运行正常绿灯亮红灯闪一下数据溢出有可能丢失帧绿灯亮红灯闪烁CANBUS总线有错误4.4 CAN 总线连接图3 CAN 网络结构为了增强系统的可靠性CAN 总线的两端通常要加入终端匹配电阻如图2-2所示终端匹配电阻的大小是由传输电缆的特性阻抗所决定例如双绞线的特性阻抗为120则如果总线上的节点集成了终端电阻则总线的终端电阻为120注本系统中CAN 通道焊接有120集成终端电阻。
33科技资讯科技资讯S I N &T NOLOGY I NFO RM TI ON 2008NO .28SC I EN CE &TECH NO LOG Y I N FOR M A TI O N 信息技术C A N 总线自诞生以来,以其独特的设计思想,良好的功能特性越来越受到工业界欢迎,目前已在汽车电子、工业控制、电力通讯网络以及高速大数据量通讯得到了广泛应用。
在C A N 总线组成的测控网络中,需设计一个网络适配器与上位机监控单元实现数据通信,针对这一需求,市场出现了基于CA N 总线的接口卡。
传统网络适配器的设计于P C 机的通信多为I S A 、EI S A 、RS 232串行总线等,但由于宽带限制,已不能满足高速传输的需要。
U S B 通用串行总线的出现解决了这个问题。
鉴于US B 接口宽带高、便携性以及即插即用等优点,采用CA N -U S B 总线接口卡可以满足CAN 总线测控网络的各项要求。
该适配器目前已处于开发研究阶段,其技术规范也在酝量和改进中,市场已出现C A N -U S B 适配器,但其产品的芯片没有同时包含C AN 和U S B ,这样硬件电路比较复杂,价格昂贵,同时也降低了稳定性。
而本课题采用L PC2300系列ARM 7微处理器,它包含了US B2.0全速接口和2路CAN 通道,只要外接C A N 收发器就可以实现数据传输功能,硬件结构比较简单,稳定性好。
1系统硬件设计NXP 微控制器LP C23xx 系列使用了一个高性能的32位ARM 7内核,该系列的每个微控制器都包含1个U SB 2.0全速(12M bps)设备、2路CAN 2.0B 通道。
硬件接口只要外加一个CAN 收发器(CT M 8251T)和少量的元器件就可以了。
2系统软件设计2.1USB 程序编写思路2.1.1USB 固件程序设计思想U S B 设备硬件抽象层主要任务初始化I /O 口和U S B 设备控制器的中断配置;US B 设备控制器的访问是通过对一些寄存器的读/写操作来实现的,US B 设备命令接口层将对其中一些寄存器的操作打包成一个个命令函数,方便协议层及应用层调用;U S B 设备控制器协议的实现可以通过写命令代码寄存器(US BCmdCod e )和读命令数据寄存器(USBCm dDa t a )来完成。
2017年第5期信息与电脑China Computer&Communication网络与通信技术基于USB 接口的CAN 总线设计与研究李新中(焦作大学 远程教育学院,河南 焦作 454000)摘 要:笔者以USB 总线和CAN 总线为研究对象,设计了一种基于CH372的CAN 总线适配器系统。
整个系统包括单片机控制、USB 总线接口、CAN 总线接口和光电隔离等电路模块。
主要完成了由单片机、USB 接口芯片、CAN 控制器、CAN 收发器、光电隔离器件等构成的CAN 总线适配器的总体设计,进行了各模块的电路设计和相应的程序设计。
关键词:CAN 总线;USB 总线;适配器;光电隔离中图分类号:TP273.5 文献标识码:A 文章编号:1003-9767(2017)05-174-02Design and Research of CAN Bus based on USB InterfaceLi Xinzhong(School of Distance Education, Jiaozuo University, Jiaozuo Henan 454000, China)Abstract: The author designs a CAN bus adapter system based on CH372 with USB bus and CAN bus as the researchobject. The whole system includes single-chip control, USB bus interface, CAN bus interface and optical isolation circuit modules. The main design of the CAN bus adapter, which consists of single chip microcomputer, USB interface chip, CANcontroller, CAN transceiver, optoelectronic isolating device and so on, is finished. The circuit design and corresponding programdesign of each module are carried out.Key words: CAN bus; USB bus; adapter; optical isolation1 CAN 总线1.1 CAN 总线的应用CAN 总线适配器应用领域广泛,在建筑工程机械传感器、医疗化工设备温度传感采样分析处理器模块以及汽车ECU 开发等中都有应用。
CAN总线USB接口卡的软件设计与实现——基于CAN总线的通信系统研究导师罗玉平学生陈善品第一章概述1.1课题的来源及研究意义随着计算机硬件、软件技术及集成电路技术的迅速发展,工业控制系统已成为计算机技术应用领域中最具活力的一个分支,并取得了巨大的进步。
由于对系统的可靠性和灵活性的高要求,工业控制系统的发展主要表现为:控制的面向段化,系统面向分散化,即负载分散、功能分散、危险分散和地域分散。
分散式工业控制系统就是为适应这种需要而发展起来的。
这类系统是以微机为核心,将5c技术——compuLer(计算机技术)、Control(自动控制技术)、Communication(通信技术)、CRT(显示技术)和Change(转换技术)紧密结合的产物。
它在适应范围、可扩展性、可维护性以及抗故障能力等方面,较之分散型仪表控制系统和集中型计算机控制系统都具有明显的优越性。
传统的DCS(DistributedControlSystem)控制系统由调度管理站和各种过程测控站组成,调度管理站完成系统的组态、监视操作和运行管理,而现场过程测控站完成生产过程信息的采集和控制。
DCS的核心思想是分散控制、集中管理,但是与工业过程打交道的过程测控站功能较强,一般是一个完整的测控系统,采用的仍是集中控制的,现场信号的检测,传输和控制还是采用4、20mA的模拟信号,信息量有限,难以实现设备与外界的信息交换,使自动控制系统成为].厂中的“信息孤岛”,严重制约了企业信息集成及企业综合自动化的实现。
信息技术的飞速发展,逐渐形成了自动化领域的开放系统互连通信网络,形成r全分布式网络集成化自动控带4技术,这就是现场总线技术。
随着现场总线的国际标准的制定与完善,采用现场总线将现场仪表与控制室内仪表连接起来,用数字信号取代模拟信号,组成全数字化、双向、多站的通信网络。
而现场总线网络的每一个节点都是一台智能化仪表,包括变送器、检测仪表、执行器等现场仪表和控制室内仪表装景,这些仪表都遵循统一的标准化和规范,按照系统化和开放型的要求,实现数字化、智能化、标准化,并且增加远距离操作、故障自诊断6和就地控制功能,这样就实现了真正意义上的分散控制,集中管璐。
基于USB的CAN总线适配器设计摘要提出一种使用接口实现总线网络与计算机连接的方案。
讨论了总线与计算机之间的硬件接口电路,同时分析了固件编程方法及驱动程序设计思路。
关键词总线固件编程适配器现场总线作为二十世纪80年代发展起来的新兴技术,在工业现场已有了广泛的应用。
在比较有影响力的几种现场总线中,总线以其突出的优点不仅大量应用于工业现场,而且在楼宇自动化、智能终端设备等民用领域也有了长足的发展。
现场总线网络技术的实现需要与计算机相结合。
以往总线网络与计算机的连接采用232、或接口。
但是随着计算机接口技术的发展,接口已经逐渐被淘汰;232接口数据传输率太低;虽然仍是高速外设与计算机接口的主要渠道,但其主要缺点是占用有限的系统资源、设计复杂、需有高质量的驱动程序保证系统的稳定,且无法用于便携式计算机的扩展。
随着11、20规范的相继制定,为外设与计算机的接口提出了新的发展方向。
的主要特点有外设安装简单,可实现热插拨;通讯速率高,11全速传送速率为12,与标准串行端口相比,大约快100倍;支持多设备连接;提供内置电源。
本文给出一种在2000下使用11协议实现总线适配器的设计方法。
整个设计主要开发适配器的固件及计算机的驱动程序、应用程序,以达到用接口连接现场总线网络的目的。
图11适配器硬件接口设计适配器硬件电路由微控制器、总线接口、总线接口和-隔离电源模块等组成。
原理框图如图1所示。
微控制器89512是公司生产的增强型-51兼容单片机,片内集成64闪存和1扩展,双数据指针,4级中断优先级,7个中断源,范文先生网收集整理内置看门狗,可编程时钟输出,在6时钟模式下工作,速度是标准51单片机的两倍。
此时外部最高频率可达20。
在高速、大程序容量、中小规模数据处理场合是一款非常理想的单片机型。
专利名称:基于CAN总线的USB接口卡专利类型:实用新型专利
发明人:蔡旸,陈晓青,曹晨光,沈准
申请号:CN201220089404.9
申请日:20120309
公开号:CN202472641U
公开日:
20121003
专利内容由知识产权出版社提供
摘要:本实用新型涉及一种基于CAN总线的USB接口卡,其包括主控芯片、底层模块芯片、电源芯片和USB接口端,且底层模块芯片包括CAN模块控制子芯片和USB模块控制子芯片,主控芯片分别连接所述的CAN模块控制子芯片和USB模块控制子芯片,所述的USB模块控制子芯片还连接于所述的USB接口端。
采用该种结构的基于CAN总线的USB接口卡,使得其能够提供一种兼容CAN总线和USB 接口的,高效、可靠的控制网络传输设备,且本实用新型的基于CAN总线的USB接口卡,其结构简单,集成度高,应用简便,成本低廉,应用范围也极为广泛。
申请人:东风电子科技股份有限公司
地址:201206 上海市浦东新区新金桥路828号
国籍:CN
代理机构:上海智信专利代理有限公司
代理人:王洁
更多信息请下载全文后查看。
第12卷 第3期集美大学学报(自然科学版)Vol .12 No .3 2007年7月Journal of J i m ei University (Natural Science )Jul .2007 [收稿日期]2006-09-27[作者简介]蒋妍妍(1982-),女,硕士生,从事控制理论与控制工程方向研究.[文章编号]1007-7405(2007)03-0241-04基于US B 和C AN 总线的通信控制单元的设计蒋妍妍,温阳东,何 (合肥工业大学电气工程与自动化学院,安徽合肥230009)[摘要]介绍了一种US B 和CAN 数据传输系统的实现方法,并结合P D I U S BD12和SJA1000芯片的特性及其工作原理,给出了具体的设计方案、US B 设备驱动程序实现和应用程序主程序流程图.该设备可以与标准的PC 机US B 端口连接,利用CAN 总线对现场的数据进行采集和传输.该设计实现设备与监控系统之间的实时传输,在数据实时采集和处理领域具有广泛的应用.[关键词]US B;驱动程序;CAN 总线;单片机[中图分类号]TP 393104[文献标识码]A0 引言随着计算机外部设备不断地追求高速率和高通用性,在并行端口和RS232成为通信瓶颈的时候,US B (Universal Serial Bus,通用串行总线)应运而生.它采用独特的设计,不仅速度快,而且具有W indo ws 自动检测、无需电源、无用户设置(另一面也可能是缺陷)、占用I RQ 中断少、低耗能、稳定性好等优点.Phili p s 公司的一种专用芯片P D I U S BD12完全符合US B 111规范,还集成了SI E 、320B 的多配置F I F O 存储器、收发器、电压调整器、Soft Connect 、GoodL ink 、可编程时钟输出、低频晶振等,支持双电压和D MA [1].本文所设计的设备拟采用P D I U S BD12和S JA1000实现PC 机与P89C52微处理器之间以及处理器与设备之间的数据传送,该方法在一定程度上能满足数据实时传输的要求.1 系统总体框架及原理本设计是双向数据传输系统.系统框图如图1所示.新式的PC 机都会有1个US B 主控制器,至少带有2个US B 端口连接器.PC 机通过专有的驱动程序从指定的缓冲区中读出数据或写入数据.在一个传输发生前,主机与设备之间必须建立一个管道.US B 管道不是一个实际对象,当设备移除时管道也随之消失[2].不同的外围设备与PC 机建立通信时建立的管道类型也不同.本设计US B 与PC 机建立的是实时双向控制传输类型,允许数据包容量集美大学学报(自然科学版)第12卷为16bp.P89C52所处理的是:响应下位机发送的CAN 中断信息,把CAN 总线上的数据进行格式转化之后写入缓冲区;另一方面将PC 机写入的数据同样进行格式转化,通过CAN 总线发送给指定的下位机,从而实现上位机和下位机的通讯.如果有多个US B 设备,就需要通过US B 集线器.2 硬件电路设计系统以P89C52为核心,控制US B 与CAN之间数据的交换.设备控制选择C 语言来实现,编译软件Keilc 调试方便、简洁易懂、与硬件联系密切、开发速度快.硬件设计结构框图如图2所示.其他的外围模块及功能如下:1)外部数据存储模块 由于P89C52内部只包含256bp 的RAM ,所以必须进行外部RAM扩展.在设备中扩展了一片8Kbp 的6264作为外部数据存储器,它与P89C52之间由74HC753进行地址锁存.2)CAN 总线数据采集模块 本CAN 总线控制器选用Phili p s 公司独立的CAN 控制器SJA1000芯片,SJA1000在电路中是一个总线接口芯片,通过它实现下位机与现场微处理器之间的数据通信.选择PCA82C250为CAN 控制器和物理总线之间的接口,中间加上6N137光耦进行抗干扰和电平转换.3)P D I U S BD12通信模块 P D I U S BD12实现了所有US B 器件的功能,它有与微控制器接口的8位并行数据总线,P D I U S BD12还具有中断服务、掉电和信号恢复接口.P D I U S BD12设计成中断驱动,这样当CP U 处理后台程序时,US B 传输在后台进行,保证了US B 的传输速度.3 US B 到CAN 的数据交换图3显示了US B 与CAN 间的数据交换结构,CAN 总线节点的软件设计主要包括3大部分:CAN 节点初始化、报文发送和报文接收.发送时P89C52只需将待发送的数据按特定格式组合成一帧报文,送入SJA1000缓冲区,然后启动发送即可.接收比发送复杂,因为接收时要对总线脱离、接收溢出等情况进行处理.P D I U S BD12一边要处理驱动程序的请求,如请求描述符、请求或设置设备状态、应用程序的控制指令等请求[3],如果P D I U S BD12接收到PC 机应用程序的令牌包,P D I 2US BD12子程序就会用令牌包向P89C52以发送中断的方式进入CP U 的主循环程序,P89C52主程序执行相应标志位的中断服务程序.4 驱动及设计驱动程序的功能简单地说就是处理内核I RP .驱动程序有一个主要的初始化入口点,并且它必须・242・ 第3期蒋妍妍等:基于US B 和CAN 总线的通信控制单元的设计是以D riverEntry 命名的例程.D riverEntry 有一个标准的函数原型,在D riverEntry ()中设置一系列回调例程来处理I RP [4].当W indows 操作系统检测到US B 设备接入时,查找相应的驱动程序,并调用D riverEntry ()例程,PnP 管理器调用驱动程序的Add Device ()例程.在这个过程中就会调用I RP _MN_ST ART_DE V I CE 来实现功能.本设计包括4个主要的组成模块:初始化模块、即插即用管理模块、电源管理模块以及I/O 功能实现模块.初始化模块主要是D riverEntry ()例程,即插即用模块包括了Add Device ()、移除Re move Device ()例程、停止St opDevice ()例程、卸载Unl oad ()例程,电源管理模块包括电源请求、设置电源、唤醒等,I/O 功能模块主要包括读、写等信息.5 上位机应用程序设计上位机的应用程序用微软的VC ++来实现.应用程序利用createfile ()中的l pfilena me 参数传递管道,readfile 调用I RP_MJ_RE AD 内核I RP 来实现对设备的读,writefile 调用I RP_MJ _WR I TE 内核I RP 来实现对设备的写.应用程序还要实现检测US B 设备、开启/关闭US B 设备、数据的下发、记录的查询、设置数据采集端口状态、显示并分析实时采集的数据.在应用程序中分配并在设备驱动程序中提供存放数据缓冲区大小和结构都相同的缓冲区,以便于应用程序和驱动程序之间数据的交互.设置缓冲区结构如下:struct I O _BUFF {I N unsigned u Offset;//缓冲区首址I N unsigned u Length;//分配缓冲区长度I N OUT P UCHAR pby Data;//数据I N unsigned u I ndex;//类型}由于设备与PC 机建立通信时建立的管道允许数据包容量为16bp,并且由于设备与应用程序的响应之间不可避免会出现不同步,必然会出现数据帧的丢失和数据的延时.为了减少数据包的丢失,所以建立了一个数据等待队列.当1个16bp 数据打包之后,没有被应用程序接收,然而下一个数据到来时把到达数据放入等待队列.由于数据传输的快速性,笔者认为相隔两个应用程序查询时间的两个数据包中的数据是没有变化的或者是变化不大的,这样丢失其中的一个就不会影响实时性.当然数据包的丢失是在等待队列满时不得已的行为.应用程序的读缓冲区框图如图4所示.由于读写缓冲区的流程相同,只要在读缓冲区框图中把读改成写就成了写缓冲区框图.6 结束语CAN 总线已经在工业控制系统中得到了广泛的应用,但CAN 总线不能直接与上位机进行通信.有的系统采用PC I 卡或I S A 卡来实现CAN 总线数据到上位机之间的数据转换.但PC I 卡和I S A 卡占・342・集美大学学报(自然科学版)第12卷用总线资源,安装很不方便,或因上位机的插槽有限(一般为5、6个)而无法安装.并且当电磁环境比较恶劣时,PC I 卡或I S A 卡不能主动监视CAN 总线上的数据通信,因而当程序跑飞或受到电磁干扰而造成通信中断时,无法恢复工作,从而造成巨大的经济损失.而且若上位机采用笔记本电脑时,它根本就不支持PC I 、I S A 总线接口,降低了控制系统的灵活性和移植性.本文通过对设备硬件设计和软件的实现,使数据传输速率达到了实时监控的要求,有效地改善了通信质量,并且利用US B 的即插即用特性方便地实现了设备的连接和转移,为以后更好的利用US B 进行通信打下了基础.[参考文献][1]萧世文.US B 210硬件设计[M ].北京:清华大学出版社,2002.[2]武安河,邰铭,于洪涛.W indows 2000/XP WDM 设备驱动程序开发[M ].北京:电子工业出版社,2003.[3]周立功.P D I U S BD12US B 固件编程与驱动开发[M ].北京:北京航空航天大学出版社,2003.[4]Chris Cant .W indowsWDM 设备驱动程序开发指南[M ].孙义,译.北京:机械工业出版社,1996.A Comm un i ca ti on M odule Ba sed on USB and CANJ I A NG Yan 2yan,W E N Yang 2dong,HE Xuan(School of Electrical and Aut omatizati on Engineering,Hefei University of Technol ogy,Hefei 230009,China )Abstract:This paper intr oduces a kind of realizati on method of US B and CAN data trans m issi on syste m.The characteristics and the operati on p rinci p le of P D I U S BD12and SJA1000chi p are given first,the concrete design p lan,US B equi pment driver realizati on and the app licati on p r ogra m fl ow chart are als o intr oduced .This equi pment can be connected with standard PC US B port .Data can be collected and trans m itted by CAN bus .This method can realize the real 2ti m e trans m issi on bet w een equi pment and monit or and be extensivelyused in the field of gathering and dealing with data in the real 2ti m e .Key words:US B;driver;CAN BUS;MCU(责任编辑 陈 敏)・442・。