全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 接口/总线/驱动 >

采用TMS320F2812总线接口通过MCP2515实现CAN总线扩展

时间:2020-03-24 10:53

人气:

作者:admin

标签: 德州仪器  总线  CAN 

导读:采用TMS320F2812总线接口通过MCP2515实现CAN总线扩展设计-CAN(Controller Area Network)即控制器局域网络总线,是德国Bosch公司在1986年面向汽车各子系统间通信而开发出的通信协议,被认为是目...

CAN(Controller Area Network)即控制器局域网络总线,是德国Bosch公司在1986年面向汽车各子系统间通信而开发出的通信协议,被认为是目前最有前途的现场总线之一,广泛应用于工业自动化监控网络中,具有高质量、低成本、易实现、安全性高的特点。TMS320F2812数字信号处理器TITexas Instruments)美国德州仪器公司最新推出的32位定点DSP控制器,是目前控制领域最先进的处理器之一,其频率高达150 MHz,提高了控制系统的精度和芯片的处理能力。TMS320F2812本身集成了一路CAN总线接口,仅依靠TMS320F2812不能满足本测试设备对双冗余的CAN总线设计要求。文中采用TMS320F2812作为测试设备的主控制器。虽然TMS320F2812本身只带一路CAN总线,但同时又自带一路SPI(Serial PeripheralInterface)即串行外围设备接口总线,而且MCP2515是一款具有SPI接口的独立CAN控制器,完全支持CANV2.0B技术规范。因此采用TMS320F2812通过MCP2515实现其CAN总线扩展,文中即给出该应用实例,包括硬件设计电路原理图,软件系统程序设计流程图和简单的子程序流程,并加以说明。

1 芯片介绍

Microchip推出的MCP2515是一款完全支持CANV2.0B技术规范、具有SPI接口的独立CAN控制器,内含2个接收缓冲器、3个发送缓冲器、6个29位验收滤波寄存器以及2个29位验收屏蔽寄存器。具有灵活的中断性能和接收过滤及信息管理能力,另外还有帧屏蔽和过滤、帧优先级设定等特性,能减少对MCU资源的占有。MCP2515的SPI接口时钟频率最高可达10 MHz,同时具备最高40 MHz的时钟输入速度,在实际应用中其通信速率最高可达1 Mbit·s-1,能够发送和接收标准/扩展数据帧以及远程帧。

MCP2515具有配置模式、正常模式等5种工作模式。利用CANCTRL REQOP位可进行工作模式的选择,能够灵活应用于不同的系统,通过其监听模式还能在CAN网络中实现自动波特率检测

MCP2515的内部结构框图如图1所示,共包括CAN模块、SPI模块以及其他模块共3部分。其中CAN模块完成CAN总线上所有报文的收发,SPI模块实现MCU和MCP2515间的SPI总线的数据通信,控制逻辑/寄存器实现对MCP2515的设置和控制,对外接口提供MCP2515的多个中断引脚,用户可根据需要自由选择,其内部结构框图如图1所示。

采用TMS320F2812总线接口通过MCP2515实现CAN总线扩展设计

2 系统硬件电路结构设计

该测试设备的硬件电路结构原理如图2所示,其虚线部分是对TMS320F2812进行CAN总线扩展的硬件原理。MCU是使用TI公司的TMS320F28 12,通过其内部集成的SPI总线接口和MCP2515连接,CAN收发器采用TI公司的SN65HVD230Q,FPGA采用Xinlix公司的XC2V1000_FG456,由其分别产生TMS320F2812和MCP2515所需的时钟、复位信号及一些离散控制信号。MCP2515的中断输出引脚直接接到TMS320F2812的外部中断输入引脚上。该硬件电路结构原理表示出简单的电气连接关系,在实际应用中,会根据实际应用条件的不同,进行相应的适应性改进。例如,如果TMS320F2812和MCP2515所使用的电源不同,就需要在TMS320F2812和MCP2515之间加电平转换芯片,以满足其不同的电源要求;并且还可在MCP 2515和CAN收发器之间,增加光耦隔离器以增加系统的抗干扰能力,并能有效提高系统的可靠性。

采用TMS320F2812总线接口通过MCP2515实现CAN总线扩展设计

TMS320F2812可通过SPI接口和MCP2515直接连接,MCP2515的CLK和TMS320F2812的SPICLKA连接,为数据的发送和接收提供同步时钟信号。

TMS320F2812的SPI接口有主和从两种操作模式,在该测试设备中其工作在主模式。

TMS320F2812和MCP2515之间以SCK作为同步时钟信号进行通信。在时钟上升沿,命令和数据通过SI引脚送入MCP2515,在时钟下降沿通过SO引脚把数据从MCP2515中读出。TMS320F2812通过SPI总线读取MCP2515接收缓冲器里的数据,MCP2515对CAN总线的数据发送则没有限制,只要用TMS320F2812通过SPI接口将待发送的数据写入MCP2515的发送缓冲器,然后再调用发送请求命令即可将数据发送到CAN总线上。

TMS320F2812通过标准SPI读写命令,对MCP2515寄存器进行读写操作,完成系统CAN总线的收发,最终实现系统CAN总线的通信。TMS320F2 812和MCP2515的通信指令有复位指令、读指令、读RX缓冲器指令、写指令、装载TX缓冲器指令、请求发送(RTS)指令、读状态指令、RX状态指令和位修改指令等8条指令。

责任编辑:gt

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信