当前位置:首页 > 通信技术 > 通信网络
[导读] 利用芯片CH372可在不了解任何USB协议或固件程序甚至驱动程序的情况下,轻松地将并口或串口产品升级到USB接口。该系统在工业现场较之以往的系统,可以更加灵活、高速、高效地完成大量数据交换,并可

利用芯片CH372可在不了解任何USB协议或固件程序甚至驱动程序的情况下,轻松地将并口或串口产品升级到USB接口。该系统在工业现场较之以往的系统,可以更加灵活、高速、高效地完成大量数据交换,并可应用于多种控制系统之中,具有很大的应用价值。

引言

现场总线网络技术的实现需要与计算机相结合。目前,在微机上扩展CAN总线接口设备一般采用PCI总线或者RS-232总线。PCI虽然仍是高速外设与计算机接口的主要渠道,但其主要缺点是占用有限的系统资源、扩展槽地址;中断资源有限;并且插拔不方便;价格较贵;而且设计复杂、需有高质量的驱动程序保证系统的稳定;且无法用于便携式计算机的扩展;RS-232虽然插拔方便,但是传输速率太慢。

本文的设计思想是通过使用USB接口芯片CH372,将计算机与CAN网络控制节点参数相互准确快速地传输。CH372是一种USB总线通用接口芯片,在计算机系统中,通过CH372的配套软件可提供简洁易用的操作接口,从而使其与本地端的单片机通讯就如同读写硬盘中的文件一样简单,由于CH372屏蔽了USB通讯中的所有协议,因而可在计算机应用层与本地端控制器之间提供端对端的连接,在不需要了解任何USB协议或者固件程序甚至驱动程序的情况下,就可轻松地将并口、串口产品升级到USB接口。

CAN适配器用于完成USB总线和CAN总线之间的数据交换。使用MCU统筹安排数据在USB总线和CAN总线之间的数据交换。以MCU为界可以将硬件分为两部分:一是MCU和USB总线交换数据;二是MCU控制CAN控制器,完成CAN数据包到CAN总线位序列协议解释,该系统结构如图1所示。

硬件设计

USB接口电路在微控制器和USB接口的选择上有两种方式:一种是采用具备USB通讯功能的微处理器。随着USB应用的日益广泛,IntelCypress、Philips等芯片厂商都推出了具有USB通信接口的微处理器,如8X930A、8X931A、EZ-USB等。由于这些微处理器具有USB接口,它们与过去的开发系统不兼容,需要购买新的开发系统,投资较高。另一种是采用普通微处理器加上专用的USB通信芯片。

现在的专用芯片中较流行的有USBN9602、SL11、PDIUSBD12等。但是,USB接口的开发一般要求设计人员对USB的标准、Firmware编程及驱动程序编写等有较深入的理解,因此限制了一般的硬件工程师对USB接口产品的开发使用。本系统中使用了USB接口芯片CH372,使用非常简单,开发人员只要熟悉单片机的编程及简单的VB或者VC应用程序编程,在较短的时间内就可开发出相应的USB产品。

CH372是一个USB总线的通用设备接口芯片,遵守USB1.1协议。在本地端,CH372具有8位数据总线和读、写、片选控制线以及中断输出,可以方便地挂接到单片机、DSP等控制器的系统总线上;在计算机系统中,CH372的配套软件提供了简洁易用的操作接口,与本地端的单片机通信就如同读写硬盘中的文件。CH372内置了USB通讯中的底层协议,具有内置固件模式和外置固件模式。在内置固件模式下CH372屏蔽了USB通信中的所有协议,在计算机应用层与本地端控制器之间提供端对端的连接。使用CH372,不需要了解任何USB协议或者固件程序,甚至驱动程序,就可以轻松地将并口、串口的产品升级到USB接口。

CH372芯片的RD和WR可以分别连接到单片机的读选通输出引脚和写选通输出引脚。CS由地址译码电路驱动,用于当单片机具有多个外围器件时进行设备选择。INT可以连接到单片机的中断输入引脚,中断请求是低电平有效。当CS和RD以及A0都为低电平时,CH372中的数据通过D7~D0输出;当CS和WR以及A0都为低电平时,D7~D0上的数据被写入CH372芯片中;当CS和WR都为低电平而A1为高电平时,D7~D0上的数据被作为命令码写入CH372芯片中。CH372芯片的UD+和UD-引脚应该直接连接到USB总线上。如果为了芯片安全而串接保险电阻或者电感,那么交直流等效串联电阻应该在5Ω之内。CH372芯片内置了电源上电复位电路,一般情况下,不需要外部提供复位。

CH372芯片正常工作时需要外部为其提供12MHz的时钟信号。一般情况下,时钟信号由CH372内置的反相器通过晶体稳频振荡产生。外围电路只需要在X1和X0引脚之间连接一个标称频率为12MHz的晶体,并且分别为X1和X0引脚对地连接一个容量为30pF的高频振荡电容。CH372芯片支持5V电源电压或者3.3V电源电压。当使用5V工作电压时,CH372芯片的VCC引脚输入外部5V电源,并且,V3引脚应该外接容量为0.1μF左右的电源退耦电容。当使用3.3V工作电压时,CH372芯片的V3引脚应该与VCC引脚相连接,同时输入外部的3.3V电源,并且与CH372芯片相连接的其它电路的工作电压不能超过3.3V。接口电路如图2所示。

CAN总线接口电路这部分由CAN控制器、CAN接口芯片和光耦组成。CAN控制器完成CAN通讯协议的所有要求,CAN接口芯片是CAN控制器和物理总线间的接口,并经由光耦将数据发往CAN总线,接口电路图如图3所示。

CAN总线控制器采用Philips公司的SJA1000,并辅以该公司的PCA82C250接口驱动器,通过光电隔离器件6N137实现了总线与控制器的隔离。SJA1000是一款独立的控制器,用于汽车和一般工业环境中,从软件的角度来看,对SJA1000的操作通过单片机的访问外部存储器指令来完成,所以,SJA1000可以被视为一种扩展RAM,SJA1000具有标准模式和Peli模式两种应用模式。标准模式符合CAN2.0A协议标准,接收缓冲器有64个字节;Peli模式符合2.0B标准,能处理扩展数据格式,具有仲裁丢失捕获、代码读取等功能。

PCA82C250是CAN控制器和物理总线之间的接口,它具有限定的电流值以保护接收器输出级,避免阳极和阴极的短路,以防止输出级的损坏,PCA82C250CAN接口控制器提供了总线驱动发送和接收能力,高速可达1Mbps,具有较强的抗干扰能力。

为了增强系统抗干扰能力,在SJA1000和CAN总线收发器82C250之间使用两个高速光电隔离器件6N137实现总线和控制器的隔离,以避免干扰,提高工作可靠性。CAN控制器可以选择从RX0、TX0或RX1、TX1接收和发送数据,当使用RX0、TX0工作时,须将RX1接到一个稳定的电平上。高速光耦6N137的最高速度可达10Mbps,利用它可以在隔离的状态下保证系统的高速可靠。

软件设计

本设计中采用的微控制器为P89C51RD2,它是采用先进的CMOS工艺的单片8位微处理器。工作在6时钟模式时,速度是标准51单片机的两倍,此时最高外部晶振可达20MHz。此外,该机型支持ISP编程和IAP编程。软件主程序的流程图如图4所示。

首先进行MCU、SJA1000和USB的初始化,初始化后系统处于循环等待状态,若有中断产生,就进入相应的中断服务程序,如果CAN总线有数据上传,则转入CAN中断服务程序,由微处理器从SJA1000缓冲区接收数据,写入微处理器的数据缓冲区,并置标志返回,如果上位机有数据下传,则转入USB中断服务程序(下位机中断服务程序流程如图5所示),微处理器从USB缓冲区中读取数据,存入缓冲区,并置标志返回,接收数据是将数据从缓冲区读出发送到USB总线,通过USB总线传送到上位机(下位机数据上传子程序流程简图如图6所示),发送数据是将数据从缓冲区读出写入SJA1000的缓冲区,由CAN节点读取,这种处理可以使微处理器在执行完相应的中断程序后只需读取缓冲区,然后执行相应的接收或发送程序即可完成上位机和下位机的数据交换。对于计算机应用层的程序,在计算机上装载WINCHIPHEAD提供的CH372的通用驱动程序后,不必再考虑USB通信协议、固件程序、驱动程序、自动配置过程和底层数据传输过程。只需要根据提供的动态连接库的接口函数,用VB或VC编制自己的应用程序即可。

结束语

综上所述,本系统为计算机与CAN总线之间的直接通信提供了一种有效的方法,适应网络和接口技术的发展,探索现场总线网络和计算机接口的新方法,是很有实践意义的。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭