目前在以计算机为上位机的应用领域,都首选USB口作为计算机与外设的接口。由于CAN总线具有可靠性高、功能完善、成本合理、实时性等优点,被广泛应用于各个自动化控制系统中,CAN总线是国际上应用最广泛的现场总线之一。为了更好的将USB的通用性和CAN的专业性结合起来,通过计算机的USB接口接入CAN专业网络,实现系统控制的便利性和应用的高效性。本文讲述了一种基于ARM7处理器实现USB接口与CAN总线的实例,通过其可以在PC实现对CAN总线上设备的监控。
处理器简介及其外围电路
LPC2119是基于一个支持实时仿真和跟踪的16/32位ARM7TDMI- STM CPU,并带有128 KB嵌入的高速FLASH($44.9500)存储器。128位宽度的存储器接口和独特的加速结构使32位代码能够在最大时钟速率下运行。对代码规模有严格控制的应用可使用 16位Thumb($66.9600)模式将代码规模降低超过30%,而性能的损失却很小。实行流水线作业,提供Embedded($474.0000)ICE逻辑,支持片上断点和调试点,具有先进的软件开发和调试环境。LPC2119具有非常小的64脚封装、极低的功耗、多个32位定时器、4路10位 ADC、2路CAN、PWM通道、多个串行接口,包括2个16C550工业标准UART、高速I2C接口和2个SPI接口,46个GPIO以及多达9个外部中断,特别适用于汽车、工业控制应用以及医疗系统和容错维护总线。
图1LPC2119外围电路
LPC2119内部集成2个CAN控制器,每一个CAN控制器都与独立CAN控制器SJA1000($2.8080)有着相似的寄存器结构。它的主要特性有:单个总线上的数据传输速率高达1 Mb/s;32位寄存器和RAM访问;兼容CAN2.0B,ISO11898-1规范;全局验收滤波器可以识别所有的11位和29位标识符;验收滤波器为选择的标准标识符提供Full CAN-style自动接收。图1所示为LPC2119外围电路,为保证可靠复位,采用外部复位电路STM809($0.1276)。
USB接口电路设计
USB接口采用沁恒电子的CH375。CH375是一个USB总线的通用接口芯片,支持USB-HOST主机方式和USB- DEVICE/SLAVE设备方式。在本地端,CH375具有8位数据总线和读、写、片选控制线以及中断输出,可以方便地挂接到单片机/DSP/MCU/MPU等控制器的系统总线上。CH375提供了串行通信方式,通过串行输入、串行输出和中断输出与单片机/DSP/MCU/MPU等相连接。图2所示为CH375的接口电路。
图2 USB接口电路
CAN总线接口电路设计
CAN总线收发器采用82C250,并选用6N137($0.2160)作隔离,LPC2119的TD和RD引脚不是直接与82C250的TX、RX引脚相连,而是通过高速光耦6N137($0.2160)与82C250相连,这样可增强CAN总线节点的抗干扰能力,从而实现总线各节点间电气隔离。高速光耦6N137($0.2160)用于保护LPC2119内部CAN总线控制器,该光耦两侧采用5 V的DC-DC电源,可使器件的VCC与VCC1完全隔离,提高系统的抗干扰能力以及节点的稳定性和安全性。图3所示为LPC2 119与CAN驱动器82C250的连接电路。DC-DC电源模块采用B0505LS-2W,电路在图4中所示。
图3 CAN驱动器82C250的连接电路
图4 DC-DC隔离电路
本系统设计采用内置CAN控制器的LPC2119作为主控制器,CH375作为USB接口芯片,实现USBCAN转换器,论述了LPC2119的外围电路、CAN总线驱动电路以及LPC2119与CH375之间的接口连接,并在软件给出LPC2119使用通用I/O模拟并口读写时序的方法,对LPC2119,CH375及CAN总线的实际应用具有一定的参考价值。