一种can总线控制器sja1000与dsp的接口控制方法

xiaoxiao2021-3-1  160

一种can总线控制器sja1000与dsp的接口控制方法
【技术领域】
[0001]本发明属于数据通信技术领域,特别是涉及一种CAN总线控制器SJA1000与DSP的接口控制方法。
【背景技术】
[0002]目前,控制器局域网络CAN(ControlArea Network)总线是能够有效支持分布式控制或实时控制的串行通信网络,具有结构简单、通信灵活、实时性高、可靠性高、较强的抗干扰性以及良好的错误检测能力。
[0003]实现智能自主控制是基于CAN总线的电子系统智能管控单元的普遍要求。这类智能管控单元需要快速获取并存储各类敏感器的大量测量数据,快速处理数据并作出正确的控制决策,立即给出控制指令。这不仅要求处理器具有更高的运算速度、更大的存储能力,同时也要求总线具有更高的通信速率和更可靠的工作特性。
[0004]DSP芯片可以作为电子系统处理器的最佳选择,其运行速度和计算能力远远超过单片机,尤其适用于数据量大、要求快速运算的工业场合,是智能管控单元比较常用的一类处理器。目前,CAN总线应用最广泛的控制器是Philips公司的SJA1000独立CAN控制器。但是,DSP芯片的片外引脚一般采用地址线和数据线分离的结构,不再使用地址/数据分时复用线,而CAN控制器SJA1000采用地址/数据分时复用,所以不能将DSP与SJA1000的地址和数据总线直接相连。国内外没有专用集成芯片实现两者的转换。虽然有部分DSP内部的事件管理器包含了一个eCAN模块,配合CAN总线驱动器PCA82C250即可构成CAN节点,但是目前构成CAN总线网络最常用的CAN控制器是地址/数据分时复用的结构,也就是说其它CAN控制器和SJA1000类似,而且存在DSP内部的eCAN模块不能满足双总线的要求等技术问题。

【发明内容】

[0005]本发明为解决公知技术中存在的技术问题而提供一种CAN总线控制器SJA1000与DSP的接口控制方法。
[0006]本发明的目的是提供一种具有时间资源和空间资源配置合理,接口和时序匹配可靠,简单易行,实现手段多样,应用领域广泛等特点的CAN总线控制器SJA1000与DSP的接口控制方法。使地址线和数据线独立的DSP芯片可以和地址/数据分时复用的CAN控制器SJA1000组成电子系统智能管控单元的CPU最小系统。
[0007]本发明涉及的控制器SJA1000与DSP的接口逻辑方法主要包括把DSP和CAN控制器的相关控制信号通过时序及控制逻辑电路、地址产生电路相匹配的方法,以及CAN控制器的数据/地址总线是如何在控制信号的作用下进行时分复用的。
[0008]本发明CAN总线控制器SJA1000与DSP的接口控制方法所采取的技术方案是:
[0009]—种CAN总线控制器SJA1000与DSP的接口控制方法,其特征是:CAN总线控制器SJA1000与DSP的接口采用微控制器和CAN控制器的接口电路进行控制,将地址线和数据线独立的DSP芯片和地址/数据分时复用的CAN控制器SJA1000组成智能管控单元;微控制器和CAN控制器的接口电路由时序及控制逻辑产生电路、地址产生电路和数据/地址总线驱动电路组成;读、写信号的控制总线和地址总线作为时序及控制逻辑产生电路的输入,经过地址产生电路,二者生成的控制信号构成CAN控制器的控制总线。
[0010]本发明CAN总线控制器SJA1000与DSP的接口控制方法还可以采用如下技术方案:[0011 ]所述的CAN总线控制器SJA1000与DSP的接口控制方法,其特点是:微控制器的数据总线在时序及控制逻辑产生电路输出信号的控制下,经过数据/地址总线驱动电路生成数据/地址总线作为CAN控制器的数据/地址总线。
[0012]所述的CAN总线控制器SJA1000与DSP的接口控制方法,其特点是:CAN控制器的控制信号决定当前时刻的总线是数据总线还是地址总线,实现地址/数据分时复用。
[0013]本发明具有的优点和积极效果是:
[0014]CAN总线控制器SJA100 0与D SP的接口控制方法由于采用了本发明全新的技术方案,与现有技术相比,本发明具有以下明显特征:
[0015]1、本发明提供了一种CAN总线控制器SJA1000与DSP的接口控制方法,实现了时间资源和空间资源的合理配置。
[0016]2、本发明涉及的控制器SJA1000与DSP的接口逻辑电路可以通过CPLD实现,也可以通过门电路实现。可以结合自身情况,选择适合的方法和手段。
[0017]3、本发明利用DSP和SJA1000现有的硬件资源和自身的时序要求,把二者时序相关的信号经过重新梳理、整合,通过硬件的方式实现接口和时序的匹配,相比软件方式更可
A+-.与巨Ο
[0018]4、本发明涉及的接口控制方法可解决使用DSP作为处理器的CAN总线冗余备份的要求。只需给两个CAN控制器的相关控制信号分配不同的地址即可,DSP的两个外部中断可以作为两个CAN控制器的中断信号。方法简单易行,解决了 DSP内部只有一个eCAN模块只能实现单总线的问题。
[0019]5、本发明控制器SJA1000与DSP的接口控制还适用其它地址/数据分时复用的CAN控制器和DSP的总线场合。对于地址/数据独立的处理器和地址/数据分时复用的控制器之间的接口和时序匹配问题,都可以使用本发明介绍的接口逻辑设计思路解决这一类问题。处理器并不局限于DSP,总线也不局限于CAN总线。因此,该类数字系统的应用领域不受限制。
【附图说明】
[0020]图1是微处理器与CAN控制器的接口设计原理框图;
[0021 ]图2是CAN控制器SJA1000读周期时序图(Intel模式);
[0022]图3是CAN控制器SJA1000写周期时序图(Intel模式);
[0023]图4是TMS320F2812与CAN控制器接口电路,其中虚线部分是数据/地址总线驱动电路;
[0024]图5虚线部分是DSP与SJA1000之间的时序及控制逻辑产生电路,其它部分是地址产生电路;
[0025]图6是SJA1000的CAN总线发送流程图;
[0026]图7是SJA1000的CAN总线接收流程图。
【具体实施方式】
[0027]为能进一步了解本发明的
【发明内容】
、特点及功效,兹例举以下实施例,并配合附图详细说明如下:
[0028]参阅附图1至图7。
[0029]实施例1
[0030]一种CAN总线控制器SJA1000与DSP的接口控制方法,采用微控制器和CAN控制器的接口电路进行控制。使地址线和数据线独立的DSP芯片可以和地址/数据分时复用的CAN控制器SJA1000组成电子系统智能管控单元的CPU最小系统。
[0031]微控制器和CAN控制器的接口电路主要由时序及控制逻辑产生电路、地址产生电路和数据/地址总线驱动电路组成。控制总线(读、写信号)和地址总线(A15-A13)作为时序及控制逻辑产生电路的输入,经过地址产生电路,二者生成的控制信号构成CAN控制器的控制总线。
[0032]微控制器的数据总线在时序及控制逻辑产生电路输出信号的控制下,经过总线驱动器生成数据/地址总线作为CAN控制器的数据/地址总线。CAN控制器的控制信号决定了当前时刻的总线是数据总线还是地址总线,也就是地址/数据分时复用。
[0033]微控制器的数据总线在时序及控制逻辑产生电路输出信号的控制下,经过数据/地址总线驱动电路生成数据/地址总线作为CAN控制器的数据/地址总线。CAN控制器的控制信号决定当前时刻的总线是数 据总线还是地址总线,实现地址/数据分时复用。
[0034]本实施例的具体结构和控制过程:
[0035]微处理器与CAN控制器的接口,重点介绍CAN控制器与TMS320系列DSP的接口方法和接口电路。
[0036]DSP芯片以TI公司生产TMS320X系列产品为国内的主流产品,采用了先进的哈佛结构,内部采用多总线结构和流水线的工作方式,从而大大地提高了系统的运行速度和数字信号处理能力,DSP的指令执行时间在ns数量级,内部程序和数据存储器目前己达几十K字,并带有内部的硬件乘法器,这些都为DSP提供了广阔的应用空间。本发明使用TI公司的2000系列的微处理器TMS320F2812作为CPU。
[0037]SJA1000是一种独立的CAN总线控制器,该器件有8根地址/数据分时复用总线,弓丨脚ALE控制地址锁存,CS控制片选。当MODE引脚接高时SJA1000工作在Intel总线时序方式,其Intel模式下总线读周期时序如图2所示。
[0038]当读周期来临时,首先CS有效,接下来地址信息出现在地址数据复用总线AD0?AD7上,然后地址锁存信号变低,该地址信息被锁存;之后读信号RD变为低电平有效,SJA1000内部RAM内的数据会出现在地址数据复用总线AD0?AD7上,读信号RD变高时,该数据就会被控制器获取;最后ALE、CS恢复为高电平,读取数据操作完成。
[0039]图3是SJA1000在Intel模式下写周期时序图。SJA1000的写周期过程和读周期类似,这里不作分析。
[0040]SJA1000的地址总线和数据总线是复用结构,通过ALE信号来锁存地址。而TMS320F2812的地址总线和数据总线分开。为使二者通信,需要将TMS320F2812的读写时序转换成符合SJA 1000时序关系的信号。[0041 ] 图4中虚线部分是数据/地址总线驱动电路。TMS320F2812的数据线XD0-XD7两次通过74LVTH16245导出的信号AD0-AD7在SJA1000的地址/数据总线上相连。具体硬件原理图如图4所示。本文将DSP的数据线改为适应CAN控制器的地址/数据线。CAN控制器SJA1000的地址线和数据线是分时复用的。
[0042]图5虚线部分是DSP与SJA1000之间的时序及控制逻辑产生电路,其它部分是地址产生电路。DSP的读写选择信号R/W、地址ΧΑ0、地址空间选择信号CS_CAN通过逻辑变换产生能够控制SJA1000的地址和数据读写时序。控制SJA1000的读写时序的信号包括CAN_ALE,CAN_CS,CAN_RD和CAN_WR。信号之间的逻辑关系图5已说明。
[0043]下面详细介绍DSP与SJA1000之间地址产生电路的工作原理。用DSP芯片TMS320F2812产生的片选信号CS_CAN,将DSP的ΧΑ0作为地址/数据选择线。当ΧΑ0 = 0时,数据有效,产生SJA1000的CAN片选信号CAN_CS;当ΧΑ0 = 1时,地址有效,在DSP的读写选择信号R/W的作用下,经过组合逻辑电路产生SJA1000的地址有效信号CAN_ALE。在地址有效期间只产生满足CAN的地址有效信号,在数据有效期间只产生满足CAN的读和写逻辑信号时序。奇数地址选择端口,偶数地址传送数据。以上都是通过信号的逻辑组合实现的。
[0044]SJA1000读写信号CAN_WR和CAN_RD是时序及控制逻辑信号,是在片选信号CAN_CS的基础上,结合DSP的读写选择信号R/W,二者进行逻辑运算得到。具体过程参见图5的虚线部分。
[0045]以上关于DSP与SJA1000之间的时序及控制逻辑和地址产生电路的描述也可以通过复杂可编程逻辑器件CPLD实现,根据图5所示硬件原理图可以总结出SJA1000相关的控制信号的表达式。本发明详细介绍CAN控制器SJA1000与TMS320F2812之间的接口逻辑电路,目的是启示可以研制类似数字系统的具体过程。
[0046]通过以上设计可知,要访问CAN控制器寄存器时要分两步来实现,首先给出该寄存器的地址,然后访问该寄存器地址中的数据进行读写操作。图6和图7分别为增加了接口逻辑电路后的CAN总线发送流程图和接收流程图。下面详细介绍在CAN发送和接收过程中是进行读写操作的具体步骤。
[0047]CAN发送过程的开始阶段,先将地址切换至SJA1000状态寄存器,再读状态寄存器,判断SJA1000的发送缓冲器是否为空。如果不空,继续判断,直到检测到SJA1000的发送缓冲器为空,然后进行后续的发送过程。继续将地址切换至SJA1000发送缓冲区,再分别写入仲裁场、N个字节的数据场的内容。最后,将地址切换至SJA1000命令寄存器,写入命令寄存器相关内容,启动发送。
[0048]CAN接收过程和发送过程类似,先将地址切换至SJA1000中断寄存器,再读中断寄存器,判断当前有无接收中断。如果没有接收中断,继续判断,直到检测到SJA1000的接收中断为止,然后进行后续的接收过程。继续将地址切换至SJA1000接收缓冲区,再分别读取仲裁场、N个字节的数据场的内容。最后,将地址切换至SJA1000命令寄存器,写入命令寄存器相关内容,包括释放接收缓冲器、清除数据溢出和中止发送。
[0049]本实施例具有所述的时间资源和空间资源配置合理,接口和时序匹配可靠,简单易行,实现手段多样,应用领域广泛等积极效果。
【主权项】
1.一种CAN总线控制器SJA1000与DSP的接口控制方法,其特征是:CAN总线控制器SJA1000与DSP的接口采用微控制器和CAN控制器的接口电路进行控制,将地址线和数据线独立的DSP芯片和地址/数据分时复用的CAN控制器SJA1000组成智能管控单元;微控制器和CAN控制器的接口电路由时序及控制逻辑产生电路、地址产生电路和数据/地址总线驱动电路组成;读、写信号的控制总线和地址总线作为时序及控制逻辑产生电路的输入,经过地址产生电路,二者生成的控制信号构成CAN控制器的控制总线。2.根据权利要求1所述的CAN总线控制器SJA1000与DSP的接口控制方法,其特征是:微控制器的数据总线在时序及控制逻辑产生电路输出信号的控制下,经过数据/地址总线驱动电路生成数据/地址总线作为CAN控制器的数据/地址总线。3.根据权利要求1或2所述的CAN总线控制器SJA1000与DSP的接口控制方法,其特征是:CAN控制器的控制信号决定当前时刻的总线是数据总线还是地址总线,实现地址/数据分时复用。
【专利摘要】本发明涉及一种CAN总线控制器SJA1000与DSP的接口控制方法。本发明属于数据通信技术领域。一种CAN总线控制器SJA1000与DSP的接口控制方法,其特点是:CAN总线控制器SJA1000与DSP的接口采用微控制器和CAN控制器的接口电路进行控制,将地址线和数据线独立的DSP芯片和地址/数据分时复用的CAN控制器SJA1000组成智能管控单元;微控制器和CAN控制器的接口电路由时序及控制逻辑产生电路、地址产生电路和数据/地址总线驱动电路组成;读、写信号的控制总线和地址总线作为时序及控制逻辑产生电路的输入,经过地址产生电路,二者生成的控制信号构成CAN控制器的控制总线。本发明具有时间资源和空间资源配置合理,接口和时序匹配可靠,简单易行,实现手段多样,应用领域广泛等优点。
【IPC分类】G05B19/042
【公开号】CN105487438
【申请号】CN201510847081
【发明人】李见敏, 徐伟
【申请人】中国电子科技集团公司第十八研究所
【公开日】2016年4月13日
【申请日】2015年11月26日

最新回复(0)