位置:51电子网 » 技术资料 » 显示光电

基于CAN 控制器SJA1000的智能高速控制系统设计

发布时间:2007/8/23 0:00:00 访问次数:480

摘要:本文介绍了一种新型的现场总线控制器SJA1000的基本原理结构及功能特点,重点叙述了基于CAN控制器SJA1000的智能控制系统硬件电路及软件设计,给出了初始化程序。 关键词:CAN总线、SJA1000、智能控制、系统设计SJA1000的特点及功能
SJA1000是一种应用于汽车和一般工业环境的独立CAN总线控制器,经过简单总线连接可完成CAN总线的物理层和数据链路层的所有功能。其硬件与软件设计和PCA82C200的基本CAN模式BasicCAN兼容。同时,新增加的增强CAN模式PeliCAN还可支持CAN2.0B协议。SJA1000的主要特性如下:1、管脚及电气特性与独立CAN总线控制器PCA82C200兼容;2、软件与PCA82C200兼容(缺省为基本CAN模式);3、扩展接收缓冲器(64字节FIFO);4、支持CAN2.0B时支持11和29位标识符;5、位通讯速率为1Mbits/s;6、增强CAN模式(PeliCAN);7、采用24MHz时钟频率;8、支持多种微处理器接口;9、可编程CAN输出驱动配置;10、工作温度范围为-40~+125℃。

CAN控制模块构成
CAN控制模块由接口管理逻辑、发送缓冲器、接收缓冲器(RXFIFO)、接收过滤器、位流处理器 (BSP)、位时序逻辑 (BTL)和错误管理逻辑(EML)组成。(如图1)

新增功能
PeliCAN模式,将识别码从11位扩展到29位,使CAN总线的节点数大大地扩大,从而使得CAN总线的适用范围更加广泛。除了扩展了识别码,PeliCAN模式还有以下扩展功能:1、可读/写访问的错误计数器;2、可编程的错误计数器;3、最近一次错误代码寄存器;4、对每一个CAN总线错误的中断;5、具体控制为控制的仲裁丢失中断;6、单次发送 (无重发);7、只听模式 (无确认,无活动的出错标志);8、支持热插拔 (软件位速率检测);9、接收过滤器扩展 (4字节代码,4字节屏蔽);10、自身信息接收 (自接收请求)。以上扩展功能为用户更好地识别和处理发送和接收错误、更好地应用和调试CAN控制器提供了方便。

智能控制系统硬件电路设计
根据SJA1000的功能特点以及课题的实际需要,我们选用SJA1000作为CAN控制器,并且使用了CAN控制器接口芯片PCA82C250,PCA82C250是CAN协议控制器和物理总线之间的接口。此器件对总线提供差动发送能力,对CAN控制器提供差动接收能力。整个系统以Intel 16位单片机80C196KC为核心。INTEL 80C196KC采用68脚PLCC封装形式,内部寻址采用寄存器结构,从而避免了以往8位单片机只能用累加器参与寻址而产生的瓶颈效应,大大提高了工作效率。其内部设有256个字节的RAM,带有28个中断源,可形成16个中断矢量。在16MHz的晶振下,16乘16位的乘法只需1.75ms,32除16位除法指令只需3.2ms,尤其适合于高采样频率快速控制系统,它本身还带有3路PWM输出引脚,可直接驱动三相电动机,内部设有3个H窗口和1个V窗口,使特殊功能寄存器的数量和保护功能倍增。由于采用的是CMOS工艺,其功耗小,并有掉电保护和闲置功能。因此,采用INTEL公司生产的16位单片机80C196KC机作为控制系统的主控制器是十分理想的选择。SJA1000在智能控制系统中的硬件配置与CAN总线接口的电路如图1所示。硬件电路中使用 PCA82C250的目的是为了增大通信距离,提高系统的瞬间抗干扰能力,保护总线,降低射频干扰,实现热防护等。
SJA1000在电路中是一个总线接口芯片,实现从上位机PC-CAN接口到现场微处理器之间的数据通信。对于微处理器而言,SJA1000是一个总线接口,SJA1000片内的存储单元相对80C196KC来说是片外的数据存储器,因此,可以按照扩展片外数据存储器的形式来访问SJA1000的寄存器地址。80C196KC是CAN控制器的微处理器,把80C196KC的ALE、RD、WR和 SJA1000的ALE、RD、WR相连就构成一个最小系统节点。80C196KC通过地址总线经GAL译码来选通 SJA1000,并由此决定CAN控制器各寄存器的地址,通过读、写外部数据存储器的形式来访问 SJA1000。在系统中我们将SJA1000的TX1脚悬空,RX1引脚接地,形成CAN协议所要求的电平逻辑。该电路的主要功能就是通过CAN总线接收来自上位机的数据进行分析组态,然后下传给下位机的控制电路实现控制功能,当智能控制系统接收到下位机的上传数据,SJA1000的中断输出INT脚就会被激活,出现一个由高电平到低电平的跃变,产生一个中断,从而引发微处理器80C196KC产生中断,通过中断处理程序接收每一帧信息并通过CAN总线上传给上位机进行分析,以便及时纠正误码、错码。
在进行电路设计时应当注意:为进一步提高系统抗干扰能力,在CAN控制器SJA1000和CAN控制器接口82C250之间加接6N137光电隔离芯片,并采用DC-DC变换器隔离电源;通信信号传输到导线的端点时会发生反射,反射信号会干扰正常信号的传输,因而总线两端两个124W的电阻对匹配总线阻抗起着相当重要的作用,忽略掉它们,会使数据通信的抗干扰性和可靠性大大降低,甚至无法通信;82C250第8脚与地之间的电阻RS称为斜率电阻,它的取值决定了系统处于高速工作方式还是斜率控制方式。把该引脚直接与地相连,系统将处于高速工作方式。在这种方式下,为避免射

摘要:本文介绍了一种新型的现场总线控制器SJA1000的基本原理结构及功能特点,重点叙述了基于CAN控制器SJA1000的智能控制系统硬件电路及软件设计,给出了初始化程序。 关键词:CAN总线、SJA1000、智能控制、系统设计SJA1000的特点及功能
SJA1000是一种应用于汽车和一般工业环境的独立CAN总线控制器,经过简单总线连接可完成CAN总线的物理层和数据链路层的所有功能。其硬件与软件设计和PCA82C200的基本CAN模式BasicCAN兼容。同时,新增加的增强CAN模式PeliCAN还可支持CAN2.0B协议。SJA1000的主要特性如下:1、管脚及电气特性与独立CAN总线控制器PCA82C200兼容;2、软件与PCA82C200兼容(缺省为基本CAN模式);3、扩展接收缓冲器(64字节FIFO);4、支持CAN2.0B时支持11和29位标识符;5、位通讯速率为1Mbits/s;6、增强CAN模式(PeliCAN);7、采用24MHz时钟频率;8、支持多种微处理器接口;9、可编程CAN输出驱动配置;10、工作温度范围为-40~+125℃。

CAN控制模块构成
CAN控制模块由接口管理逻辑、发送缓冲器、接收缓冲器(RXFIFO)、接收过滤器、位流处理器 (BSP)、位时序逻辑 (BTL)和错误管理逻辑(EML)组成。(如图1)

新增功能
PeliCAN模式,将识别码从11位扩展到29位,使CAN总线的节点数大大地扩大,从而使得CAN总线的适用范围更加广泛。除了扩展了识别码,PeliCAN模式还有以下扩展功能:1、可读/写访问的错误计数器;2、可编程的错误计数器;3、最近一次错误代码寄存器;4、对每一个CAN总线错误的中断;5、具体控制为控制的仲裁丢失中断;6、单次发送 (无重发);7、只听模式 (无确认,无活动的出错标志);8、支持热插拔 (软件位速率检测);9、接收过滤器扩展 (4字节代码,4字节屏蔽);10、自身信息接收 (自接收请求)。以上扩展功能为用户更好地识别和处理发送和接收错误、更好地应用和调试CAN控制器提供了方便。

智能控制系统硬件电路设计
根据SJA1000的功能特点以及课题的实际需要,我们选用SJA1000作为CAN控制器,并且使用了CAN控制器接口芯片PCA82C250,PCA82C250是CAN协议控制器和物理总线之间的接口。此器件对总线提供差动发送能力,对CAN控制器提供差动接收能力。整个系统以Intel 16位单片机80C196KC为核心。INTEL 80C196KC采用68脚PLCC封装形式,内部寻址采用寄存器结构,从而避免了以往8位单片机只能用累加器参与寻址而产生的瓶颈效应,大大提高了工作效率。其内部设有256个字节的RAM,带有28个中断源,可形成16个中断矢量。在16MHz的晶振下,16乘16位的乘法只需1.75ms,32除16位除法指令只需3.2ms,尤其适合于高采样频率快速控制系统,它本身还带有3路PWM输出引脚,可直接驱动三相电动机,内部设有3个H窗口和1个V窗口,使特殊功能寄存器的数量和保护功能倍增。由于采用的是CMOS工艺,其功耗小,并有掉电保护和闲置功能。因此,采用INTEL公司生产的16位单片机80C196KC机作为控制系统的主控制器是十分理想的选择。SJA1000在智能控制系统中的硬件配置与CAN总线接口的电路如图1所示。硬件电路中使用 PCA82C250的目的是为了增大通信距离,提高系统的瞬间抗干扰能力,保护总线,降低射频干扰,实现热防护等。
SJA1000在电路中是一个总线接口芯片,实现从上位机PC-CAN接口到现场微处理器之间的数据通信。对于微处理器而言,SJA1000是一个总线接口,SJA1000片内的存储单元相对80C196KC来说是片外的数据存储器,因此,可以按照扩展片外数据存储器的形式来访问SJA1000的寄存器地址。80C196KC是CAN控制器的微处理器,把80C196KC的ALE、RD、WR和 SJA1000的ALE、RD、WR相连就构成一个最小系统节点。80C196KC通过地址总线经GAL译码来选通 SJA1000,并由此决定CAN控制器各寄存器的地址,通过读、写外部数据存储器的形式来访问 SJA1000。在系统中我们将SJA1000的TX1脚悬空,RX1引脚接地,形成CAN协议所要求的电平逻辑。该电路的主要功能就是通过CAN总线接收来自上位机的数据进行分析组态,然后下传给下位机的控制电路实现控制功能,当智能控制系统接收到下位机的上传数据,SJA1000的中断输出INT脚就会被激活,出现一个由高电平到低电平的跃变,产生一个中断,从而引发微处理器80C196KC产生中断,通过中断处理程序接收每一帧信息并通过CAN总线上传给上位机进行分析,以便及时纠正误码、错码。
在进行电路设计时应当注意:为进一步提高系统抗干扰能力,在CAN控制器SJA1000和CAN控制器接口82C250之间加接6N137光电隔离芯片,并采用DC-DC变换器隔离电源;通信信号传输到导线的端点时会发生反射,反射信号会干扰正常信号的传输,因而总线两端两个124W的电阻对匹配总线阻抗起着相当重要的作用,忽略掉它们,会使数据通信的抗干扰性和可靠性大大降低,甚至无法通信;82C250第8脚与地之间的电阻RS称为斜率电阻,它的取值决定了系统处于高速工作方式还是斜率控制方式。把该引脚直接与地相连,系统将处于高速工作方式。在这种方式下,为避免射

相关IC型号

热门点击

 

推荐技术资料

按钮与灯的互动实例
    现在赶快去看看这个目录卞有什么。FGA15N120AN... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!