CAN总线控制器与DSP的接口

时间:2020-08-28 16:38:39 理工毕业论文 我要投稿

CAN总线控制器与DSP的接口

摘要:讨论了CAN总线控制器与DSP之间的接口,介绍了流行的CAN控制器芯片SJA1000和TMS320系列DSP芯片的接口时序,并给出了它们的接口方法和电路。

现场总线是一种开放式、数字化、多点通信的控制系统局域网络,是当今自动化领域中最具有应用前景的技术之一。CAN总线是现场总线中的应用热点,CAN总线支持分布式控制和适时控制的串行通信网络。由于CAN总线具有通信速率高、开放性好、报文短、纠错能力强以及控制简单、扩展能力强、系统成本低等特点,越来越受到人们的关注。基于CAN总线的CAN控制器具有完成CAN总线通信协议所要求的全部必要功能,因此CAN控制器与其它微处理器的接口成为设计CAN总线系统的首要工作。当前已有一些微处理器将CAN控制器嵌入到系统之中,成为在片的策处理器,例如,P8XC592(其内核即为80C51的CPU),MCS96系列中的87C196CA、87C196CB,TMS320系列中的在片CAN微控制器TMS320LF2407、TMS320F2810/F2812,但是仍有大量人们比较熟悉的微处理器并不带有CAN控制器。本文讨论这些微处理器与CAN控制器的接口问题,重点介绍CAN控制器与TMS320系列DSP的接口方法和接口电路。

1 CAN控制器接口信号和时序

CAN控制器(以PCX82C200或SJA1000为例)提供的微处理器的接口信号主要有AD0~AD7共8根地址数据线和ALE、CS、RD、WR、RST、MODE、RESET和INT,控制器的数据和地址分时复用线,其中MODE为接口方式选择信号,可选用INTEL方式或MODTOROLA方式。不同方式下引脚定义如表1,接口时序如图1和图2所示。

表1 SJA1000引脚定义

引脚符号INTEL(MODE=Vdd)MOTOROLA(MODE=Vss)ALEALEASRDRDEWRWRRD/WR

从引脚定义和时序关系可知CAN控制器提供了与INTEL方式和MOTOROLA方式的直接接口信号,其中INTEL方式对于目前流行的51/96系列单片机来说提供了方便快捷的直接接口设计。

2 DSP的接口信号和时序

DSP芯片以TI公司生产TSM320系列产品为国内的`主流产品,TSM320系列产品至今已经历了若干代,有'C1X'、'C2X、'C2XX、'C5X、'C54X、'C62X等定点DSP,有'C3X、'C4X、'C67X等浮点DSP和'C8X多处理器DSP。DSP采用了先进的哈佛结构,内部采用多总线结构和流水线的工作方式,从而大大地提高了系统的运行速度和数字信号处理能力,DSP的指令执行时间在ns数量级,内部程序和数据存储器目前已达几十K字,并带有内部的硬件乘法器,这些都有DSP提供了广阔的应用空间。

DSP芯片的片外引脚一般采用地址线和数据分离的设计方法,不再使用地址数据分时复用线,也没有ALE地址有效信号,这样就给CAN控制器与DSP的接口带来一定困难,且不同的DSP芯片外部引脚和时序也略有区别。要设计CAN控制器与DSP的接口,首先必须讨论一下DSP的时序,下面以DSP中较流行的TMS320LF2407和TMS320VC5402为例进行讨论。

2.1 TMS320LF2407 DSP的I/O时序

DSP的存储器分为三个空间:程序存储器空间、数据存储器空间和I/O空间。I/O空间有专用的输入指令PORIR和输出指令PORTW以及专用的I/O空间选择信号IS,TMS320LF2407的I/O信号与存储器操作信号复用,它们是存储器和I/O设备选通信号STBR、写选通信号WR、读选通信号RD和读写信号R/W,TMS320LF2407的I/O时序如图3和图4所示。