CAN智能节点的设计._第1页
CAN智能节点的设计._第2页
CAN智能节点的设计._第3页
CAN智能节点的设计._第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、CAN智能节点的设计摘要:CAN总线是一种流行的实时性现场总线,文中提出了一种基于 MSP43(单片机,并以MCP251为CANS制器的智能节点设计方案,该方案利用 MSP43®过标准SPI接口可实现对 MCP251(的控制,并能够完全实现 CAN总线 规范。关键词:CAN智能节点;MSP430 MCP2510数据通信1引言CAN总线是控制器局域网(ControllerArea Net - work )总线的简称,它属于现场总线范畴,是一种能有效支持分布式控制或 实时控制的串行通信网络,它可将挂接在现场总线上作为网络节点的智能设备 连接成网络系统,并进一步构成自动化系统,从而实现基本

2、的控制、补偿、计 算、参数修改、报警、显示、监控、优化及控管一体化的综合自动化功能。CAN总线智能节点在分布式控制系统中起着承上启下的作用。它位于传 感器和执行机构所在的现场,一方面和上位机(PC或者工控机)进行通信, 以完成数据交换;另一方面又可根据系统的需要对现场的执行机构或者传感器 进行控制和数据采集。它常常将一些简单的过程控制程序放在底层模块中,从 而减少了通信量,提高了系统控制的实时性。因此,智能化模块设计在CAN 系统中有着十分重要的作用。本文将给出一种用MSP 4 3 0单片机和MCP 2510CAN控制器组成的总线智能节点的设计方案(见图1),该方案中的单片机和CAN控制器 通

3、过标准的SPI接口进行通信,因此,该节点能够完成对被控器件的数据采 集上报,并接受上位机的命令,进而进行解析以完成对执行机构的控制。为了 调试简单,本方案作了一些改动:一是使MCP 2510工作在环回模式,也 就是数据由发送缓存直接发送到接收缓存,由于不经过CAN收发器和CAN 总线,而只是使用了它的一个发送缓存和一个接收缓存,因而方便了调试;二 是把被控器件的数据采集和对执行机构的控制部分略去,而这些功能在以后可 以方便地添加,这样,在实际使用时,只要对程序稍作修改就可应用。2 硬件设计本设计的整个接口模块主要由两部分组成:CAN控制器MCP 2510 和微控制器MSP 4 3 0。图2所示

4、是该智能节点的部分电路硬件原理图。下 面对主要部分功能作一介绍。2.1 MSP 430F1232 简介MSP 4 3 0系列微控制器是TI公司推出的功能强大的超低功耗16位 微处理器。它集成了丰富的片上外围资源,因而开发方式十分简便,可以用C 语言编写出效率很高的程序。所选MSP 4 3 0 F 1 2 3 2的工作电压为1.83.6V,内含8kBFLASH存储空间。片内集成了看门狗定时器(WTD)、基本时钟模块、US - ART、1 0位ADC、和带有3个捕获 /比较器的16位定时器,因而片上资源十分丰富,完全可以满足一般的需 要,同时减少了设计的复杂度。与其它单片机相比,MSP 4 3 0

5、的I/O端 口功能更强,可实现双向的输入、输出,并可完成一些特殊的功能,如A/D 转换、捕获比较等;另外,它还可以实现I/O的各种中断。0以实现CAN规范。本设计中,MSP 4 3 0的作用有两个:一是对执行机构的控制以及对输 入模拟量或者开关量的信号采集;二是利用UART模块通过SPI模式与M CP 2 5 1 0通信并控制MCP 2512.2 MCP 251 0简介r ochip公司推出的功能很强的CA2.0A及2.0B规范;其内部结构MCP 2 5 101 是MicN控制器芯片,它支持CAN1.2、见图3所示。该芯片内含3个发送缓存和2个接收缓存,可以对发送优先级进 行管理,可滤除无用信

6、息,MCP 2 5 1 0有6个可编程滤波器,而且中断资 源十分丰富。最可贵的是,它可以通过标准的SPI接口与微控制器进行通 信,从而放宽了MCU的选择范围使得所有单片机都有接入的可能。MCP 2 5 1 0的主要功能是在MCU的控制下实现CAN规范,它内部 的所有寄存器和控制寄存器都映射到一个地址表上,MCU可以使用相应的命 令格式通过标准的SPI接口来完成对MCP 251 0的初始化、工作状态的 控制以及数据的读写。此外,MCP 2 5 1 0产生的中断还可以反馈给MCU 来处理。2.3系统时钟由于MSP 4 3 0的时钟频率决定着指令周期,因而该时钟直接影响S PI接口的速率。MSP 4

7、 3 0 F 1 2 3 2有两个可选的时钟:一是外部低速 3 2.7 6 8 kHz的时钟晶体;二是采用内部数控DCO的可调频率。本设 计直接采用它内部的数控DCO作为它的主时钟MCLK和SMCLK,由于 直接工作在8 0 0 kHz,因而免去了使用晶体。MCP 251 0采用标准的 4MHz晶体。MSP 4 3 0中USART模块的CLK可由系统时钟分频得 到,速率设定也十分方便。实际上,MCP2 5 1 0输出到总线的速率也可通 过设置内部寄存器的控制分频系数来调节。此外,由于MCP 2 5 1 0的输出信号驱动能力不够,而且与CAN总线 物理接口的要求存在很大的差异,所以,在实际应用中

8、必须使用CAN收发器 (如MCP 2 5 5 1等),它可支持的CAN速率最高可达1 Mbps,而且 容错能力很强。此外,它内部还有很强的保护电路,可以防止总线的其它节点 对它的影响。3 软件设计在进行本系统节点的软件设计前,首先简要说明一下MCP 251 0的指 令格式,MCP 251 0的5条指令如表1所列。表1 MCP 2510旨令格式指 令指令格式复位 1100 0000 使内部寄存器复位 ,进入配置模式读取 0000 0011 从寄存器读取 数据,指令在前,地址随后写入 0000 0010 写数据到寄存器 ,指令在前,地址和数 据随后发送请求 1000 0nnn 对发送缓存发送信息进

9、行初始化状态读取 1010 0000读取常用状态寄存器的某些位数据位修改 0000 0101 对豁口的某几件位修 改在使用时,可以把这些旨令直接编写成函数形式,这样可使程序简练易 读。同时,发送请求的硬件触发只需把TXnRTS置低即可。实际上,接收 缓存收到信息后也能产生硬件触发,并在TXnRTS引脚产生低电平输出。本设计的主程序流程图如图4所示。上电复位后,MSP 4 3 0首先完成自身外围模块的初始化,其任务主要 是选择时钟模块中的时钟、使USART模块工作于SPI模式、以及对看门 狗定时器的配置等;然后对MCP 251 0进行初始化,以对寄存器进行设 置。需要注意的是,MCP 2 5 1

10、 0只有在配置模式下才可以对控制参数进行 配置,但它在复位以后就是配置模式。当配置MCP 251 0到环回模式后,MSP 4 3 0将写数据到MCP2 5 10的发送缓存并控制其发送,此后,在接收缓存收到数据后,INT引脚 将产生低电平中断以通知MSP 4 3 0,MS P430响应中断后将读取数 据,并和发送的数据进行比较,以验证程序的可行性。需要注意的是,无论是 对MCP 251 0的读还是写,都必须使它的CS引脚处于低电平。在实际应用中,MSP 4 3 0和MCP 2 5 1 0都可以进入睡眠模式,并 可以由中断来激活。整个节点的主要功能均由中断子程序来完成,其中的一部 分是MSP 4 3 0自身的中断(看门狗定时器溢出中断、SPI接收发送中 断、ADC中断等),另一部分是MCP 251 0引起的中断,这部分中断资 源十分丰富,包括信息接收发送中断、信息错误中断、总线激活中断等。它产 生的所有中断都能使INT引脚为低电平,单片机在检测到这些中断后,将通过SPI接口读取MCP 251 0内部的中断标志寄存器以判断是何中断,然 后再进行进一步处理。4 结束语MSP 4

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论