位置:51电子网 » 技术资料 » 控制技术

SJA1000型CAN控制器在深海测控中的应用

发布时间:2007/8/24 0:00:00 访问次数:472

摘要:讨论以PHILIPS公司的SJA1000型控制器为核心、基于CAN总线的深海测控系统的设计过程,围绕C8051F020型单片机与SJA1000型控制器详细阐述测控系统的性能要求、组成、硬件连接和软件设计。该系统具有结构简单、价格低和可靠性等优点。


关键词:SJA1000;控制器;深海;测控;应用


1 引言


为了开发海洋资源,人类必须首先了解海底环境。然而,海底环境十分复杂,对海底探测的要求很高,深海环境下需要采集的参数比较多,包括深度、温度、盐度、PH值、溶解氧及各种化学元素等。


深海测控系统工作时需要接收来自甲板控制中心的命令,同时要将采集到的数据反送到甲板控制中心,二者之间的最大通信距离大于5km,因此,它们之间的通信要求很高。CAN总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。CAN的直接通信距离最远可达10km(速率在5kb/s以下),报文采用短帧结构,传输时间短,受干扰概率低,保证了数据出错率极低。为此,笔者采用CAN总线作为通信方式。


2 深海测控系统的基本组成


深海测控模块由二大部分组成:测控子模块和通信子模块。测控子模块的主要功能是根据甲板控制中心的命令启动系统并完成参数提取、转换、数据处理、存储及发送等操作。通信子模块的功能是完成甲板与水下测控系统的通信。


测控子模块以Cygnal公司的C8051F020型单片机为核心,扩展信号调理电路及与CAN总线的接口。通信子模块是Philips公司的SJA1000型CAN控制器。


2.1 测控子模块


深海测控子模块由微控制器系统和I/O系统组成。


微控制器是Cygnal公司的C8051F020型单片机。C8051F020采用CIP-51型微控制器内核及流水线指令结构,70%的指令执行时间为1个或2个系统时钟周期,峰值速度达到25MI/s,能满足深海环境下多路数据的快速采集与分析。C8051F020型单片机内部集成1个12位8通道带可编程增益放大器的A/D转换器和1个8位8通道A/D转换器,能满足深海多路环境参数采集;2路12位电压输出D/A转换器;16位可编程定时/计数器阵列PCA可用于输出PWM以控制步进电机的运转;64个耐5V电压的通用I/O口可控制开关器件的启动和停止。



微控制器系统还包括了单片机的一些基本外围电路。系统还开展了1片容量达64Mbyte的串行Flash存储器,用以保存采集到的数据,以避免CAN通信不畅时造成数据丢失。使用时只要微控制器外接相应的传感器、继电器、电机等就可以完成各种环境下参数的采集及相应的控制


2.2 通信子模块


SJA1000是PHILIPS公司推出的一款独立的CAN控制器,主要用于移动目标和一般工业环境中的区域网络控制。它是PCA82C200型CAN控制器(BasicCAN)的替代产品,而且增加了一种新的操作模式--PeliCAN,这种模式支持具有很多新特征的CAN2.0B协议。


SJA1000的基本特征如下:


·引脚与PCA2C200型CAN控制器兼容。
·有扩展的接收缓冲器(64字节,先进先出FIFO)。
·支持CAN2.0A和CAN2.0B协议。
·支持11位和29位标识码。
·通信位速率可达1Mb/s。
·可与不同的微处理器接口。
·可编程的CAN输出驱动器配置。


SJA1000的引脚排列如图1所示,主要引脚的功能如下所述。


AD7-AD0:地址数据复用线。
ALE/AS:ALE输入信号(Intel模式)或AS输入信号(Motorola模式)。
CS:片选信号,低电平允许访问SJA1000。
RD/E:来自微控制器的RD信号(Intel模式)或E使能信号(Motorola模式)。
WR:来自微控制器的WR信号(Intel模式)或RD/WR使能信号(Motorola模式)。
CLKOUT:SJA1000产生用于微控制器的时钟输出信号;时钟信号由内置晶体振荡器通过可编程除法器产生;时钟除法寄存器中的时钟停止位能使该引脚无效。
VDD1和VSS1:逻辑电路5V电源和逻辑电路地。
XTAL:晶体振荡器放大器输入,外部晶体振荡器信号由该脚输入。
XTAL2:晶体振荡器放大器输出,当使用外部晶体振荡器信号时,该输出引脚必须开路。
VDD3和VSS3:输出驱动5V电源和输出驱动地。
TX0和TX1:CAN输出驱动器0和1输出到物理总线。
INT:中断输出,用于触发微控制器中断;内部中断寄存器的任何位置位,INT将低电平输出;INT为开环输出;该引脚为低电平将电路从睡眠状态激活。
RST:复位输入,用于复位CAN接口(低电平有效)。
VDD2和VSS2:输入比较器5V电源和输入比较器地。
RX0和RX1:从物理CAN总线输入到SJA1000的输入比较器。


SJA1000与微处理器的接口非常简单,微处理器以访问外部存储器的方式来访问SJA1000。由于SJA1000的内部寄存器分布在连续的地址内,所以完全可以把SJA1000当作外部RAM。在设计接口电路时,SJA1000的片选地址应与其他外部存储器的片选在逻辑上无冲突。

摘要:讨论以PHILIPS公司的SJA1000型控制器为核心、基于CAN总线的深海测控系统的设计过程,围绕C8051F020型单片机与SJA1000型控制器详细阐述测控系统的性能要求、组成、硬件连接和软件设计。该系统具有结构简单、价格低和可靠性等优点。


关键词:SJA1000;控制器;深海;测控;应用


1 引言


为了开发海洋资源,人类必须首先了解海底环境。然而,海底环境十分复杂,对海底探测的要求很高,深海环境下需要采集的参数比较多,包括深度、温度、盐度、PH值、溶解氧及各种化学元素等。


深海测控系统工作时需要接收来自甲板控制中心的命令,同时要将采集到的数据反送到甲板控制中心,二者之间的最大通信距离大于5km,因此,它们之间的通信要求很高。CAN总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。CAN的直接通信距离最远可达10km(速率在5kb/s以下),报文采用短帧结构,传输时间短,受干扰概率低,保证了数据出错率极低。为此,笔者采用CAN总线作为通信方式。


2 深海测控系统的基本组成


深海测控模块由二大部分组成:测控子模块和通信子模块。测控子模块的主要功能是根据甲板控制中心的命令启动系统并完成参数提取、转换、数据处理、存储及发送等操作。通信子模块的功能是完成甲板与水下测控系统的通信。


测控子模块以Cygnal公司的C8051F020型单片机为核心,扩展信号调理电路及与CAN总线的接口。通信子模块是Philips公司的SJA1000型CAN控制器。


2.1 测控子模块


深海测控子模块由微控制器系统和I/O系统组成。


微控制器是Cygnal公司的C8051F020型单片机。C8051F020采用CIP-51型微控制器内核及流水线指令结构,70%的指令执行时间为1个或2个系统时钟周期,峰值速度达到25MI/s,能满足深海环境下多路数据的快速采集与分析。C8051F020型单片机内部集成1个12位8通道带可编程增益放大器的A/D转换器和1个8位8通道A/D转换器,能满足深海多路环境参数采集;2路12位电压输出D/A转换器;16位可编程定时/计数器阵列PCA可用于输出PWM以控制步进电机的运转;64个耐5V电压的通用I/O口可控制开关器件的启动和停止。



微控制器系统还包括了单片机的一些基本外围电路。系统还开展了1片容量达64Mbyte的串行Flash存储器,用以保存采集到的数据,以避免CAN通信不畅时造成数据丢失。使用时只要微控制器外接相应的传感器、继电器、电机等就可以完成各种环境下参数的采集及相应的控制


2.2 通信子模块


SJA1000是PHILIPS公司推出的一款独立的CAN控制器,主要用于移动目标和一般工业环境中的区域网络控制。它是PCA82C200型CAN控制器(BasicCAN)的替代产品,而且增加了一种新的操作模式--PeliCAN,这种模式支持具有很多新特征的CAN2.0B协议。


SJA1000的基本特征如下:


·引脚与PCA2C200型CAN控制器兼容。
·有扩展的接收缓冲器(64字节,先进先出FIFO)。
·支持CAN2.0A和CAN2.0B协议。
·支持11位和29位标识码。
·通信位速率可达1Mb/s。
·可与不同的微处理器接口。
·可编程的CAN输出驱动器配置。


SJA1000的引脚排列如图1所示,主要引脚的功能如下所述。


AD7-AD0:地址数据复用线。
ALE/AS:ALE输入信号(Intel模式)或AS输入信号(Motorola模式)。
CS:片选信号,低电平允许访问SJA1000。
RD/E:来自微控制器的RD信号(Intel模式)或E使能信号(Motorola模式)。
WR:来自微控制器的WR信号(Intel模式)或RD/WR使能信号(Motorola模式)。
CLKOUT:SJA1000产生用于微控制器的时钟输出信号;时钟信号由内置晶体振荡器通过可编程除法器产生;时钟除法寄存器中的时钟停止位能使该引脚无效。
VDD1和VSS1:逻辑电路5V电源和逻辑电路地。
XTAL:晶体振荡器放大器输入,外部晶体振荡器信号由该脚输入。
XTAL2:晶体振荡器放大器输出,当使用外部晶体振荡器信号时,该输出引脚必须开路。
VDD3和VSS3:输出驱动5V电源和输出驱动地。
TX0和TX1:CAN输出驱动器0和1输出到物理总线。
INT:中断输出,用于触发微控制器中断;内部中断寄存器的任何位置位,INT将低电平输出;INT为开环输出;该引脚为低电平将电路从睡眠状态激活。
RST:复位输入,用于复位CAN接口(低电平有效)。
VDD2和VSS2:输入比较器5V电源和输入比较器地。
RX0和RX1:从物理CAN总线输入到SJA1000的输入比较器。


SJA1000与微处理器的接口非常简单,微处理器以访问外部存储器的方式来访问SJA1000。由于SJA1000的内部寄存器分布在连续的地址内,所以完全可以把SJA1000当作外部RAM。在设计接口电路时,SJA1000的片选地址应与其他外部存储器的片选在逻辑上无冲突。

相关IC型号
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!