0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何将MCP2515CAN总线控制器与Arduino接口

454398 来源:工程师吴畏 2019-07-30 10:51 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在这个项目中,我们将了解MCP2515 CAN控制器模块,如何将MCP2515 CAN总线控制器与Arduino接口,以及如何在两个MCP2515 CAN的帮助下实现两个Arduino板之间的通信控制器和CAN协议。

简介

受控区域简单CAN网络是一种总线标准,允许微控制器及其外围设备在不需要主机设备或计算机的情况下进行通信。

由Robert Bosch GmbH开发的CAN协议主要用于汽车,用于控制单元及其组件之间的通信。

例如,发动机控制单元是汽车中使用的主要控制装置。该装置连接到许多传感器和执行器,如气流,压力,温度,阀门控制,空气控制电机等。这些模块和控制单元之间的通讯是通过CAN总线进行的。

为了更多地了解CAN总线,CAN控制器和其他重要方面,MCP2515 CAN总线控制器模块非常有用。

同时阅读: SPI通讯基础。

简要说明MCP2515 CAN总线控制器模块

MCP2515 CAN总线控制器是一个简单的模块,支持CAN协议版本2.0B,可用于1Mbps的通信。为了建立一个完整的通信系统,您需要两个CAN总线模块。

项目如下图所示。

此特定模块基于MCP2515 CAN控制器IC和TJA1050 CAN收发器IC 。 MCP2515 IC是一个独立的CAN控制器,集成了SPI接口,用于与微控制器通信。

来自TJA1050 IC,它充当MCP2515 CAN控制器IC和物理CAN总线。

下图显示了典型MCP2515模块上的组件和引脚。

MCP2515 CAN总线模块示意图

在查看模块原理图之前,您需要了解一个有关IC的一些事项,即MCP2515和TJA1050。

MCP2515 IC是主控制器,内部由三个主要子组件组成:CAN模块,控制逻辑和SPI阻止。

CAN模块负责在CAN总线上发送和接收消息。控制逻辑通过连接所有模块来处理MCP2515的设置和操作。 SPI模块负责SPI通信接口

来到TJA1050 IC,由于它充当MCP2515 CAN控制器和物理CAN总线之间的接口,因此该IC负责从控制器获取数据并将其中继到总线上。

下图显示了MCP2515 CAN模块的原理图,并显示了模块上MCP2515 IC和TJA1050 IC的连接方式。

MCP2515与Arduino接口的电路图

下图显示了电路图MCP2515 CAN模块与Arduino的接口以及两个Arduino over CAN协议之间可能的通信。

如果MCP2515模块的引脚不清楚,以下图片可能有用。

所需组件

Arduino UNO x 2 [购买]

MCP2515 x 2 [在此处购买]

USB电缆x 2

连接线[在此处购买]

电路设计

As前面提到过,CAN控制器IC有助于SPI通信协议与任何微控制器连接。因此,将SPI引脚即SC25,MOSI(SI),MISO(SO)和MCP2515模块的CS连接到Arduino的相应SPI引脚(参见电路图)。

进行两次这样的连接:一对作为发射器,另一对作为接收器。现在,对于此发送器和接收器之间的通信,连接每个MCP2515模块的CANH和CANL引脚。

代码

在进入代码之前,您需要下载一个库MCP2515模块。有很多库,但我使用了这个特定的库。

下载并将提取的内容放在Arduino的libraries目录中。

由于通信涉及发送器模块和接收器模块,因此代码也分为发送器代码和接收器代码。

发送器代码

接收器代码

工作

此项目的工作非常简单,因为所有工作都由库(SPI和CAN)完成。由于CAN是基于消息的通信,因此您需要在0到8个字节之间的任何地方发送消息。

在此项目中,发送器正在发送消息为1 1 2 3 0 5 6 7.此消息通过CAN总线传输,接收器接收此消息并显示在其串行监视器上。

此外,0 th 和4 th 位,即上述序列中的1和0由接收器分别提取,并接通和断开连接到Arduino引脚2的LED

应用

如前言所述,CAN广泛应用于汽车领域。部分应用包括:

电子换档系统

自动化中的主界面(如工业)

医疗设备

机器人技术

自动启动/停止汽车发动机

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 总线控制器
    +关注

    关注

    0

    文章

    31

    浏览量

    13068
  • Arduino
    +关注

    关注

    190

    文章

    6527

    浏览量

    197431
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    MCP2542FD/4FD 和 MCP2542WFD/4WFD:高速CAN FD应用的理想之选

    MCP2542WFD/4WFD是为高速CAN FD应用设计的,通信速度最高可达8 Mbps。它能作为CAN协议控制器和物理总线之间的
    的头像 发表于 03-29 16:55 1111次阅读

    MCP2517FD:高性能CAN FD控制器的技术剖析与应用指南

    MCP2517FD:高性能CAN FD控制器的技术剖析与应用指南 一、引言 在当今的电子系统设计中,CAN FD(Controller Area Network with Flexib
    的头像 发表于 03-02 17:50 1391次阅读

    MCP2510:独立CAN控制器的技术剖析与应用指南

    MCP2510概述 MCP2510是一款独立的CAN控制器,旨在简化与CAN总线
    的头像 发表于 01-28 16:15 310次阅读

    MCP2515:独立CAN控制器的卓越之选

    MCP2515:独立CAN控制器的卓越之选 在电子工程师的日常工作中,CAN(Controller Area Network)总线通信是一个
    的头像 发表于 01-22 15:30 435次阅读

    MCP2551高速CAN收发:特性、应用与设计要点

    MCP2551高速CAN收发:特性、应用与设计要点 在CAN总线通信领域,收发扮演着至关重要
    的头像 发表于 01-22 15:20 605次阅读

    MCP2502X/5X:CAN I/O 扩展的详细解析

    MCP2502X/5X:CAN I/O 扩展的详细解析 在嵌入式系统的设计中,CAN(Controller Area Network)总线
    的头像 发表于 01-18 17:20 1535次阅读

    深入解析MCP2510:独立CAN控制器的卓越之选

    深入解析MCP2510:独立CAN控制器的卓越之选 在当今的电子系统设计中,CAN(Controller Area Network)总线以其
    的头像 发表于 01-15 17:40 651次阅读

    MCP2515:独立CAN控制器的深度解析

    MCP2515:独立CAN控制器的深度解析 在电子工程师的日常工作中,CAN(Controller Area Network)总线凭借其高可
    的头像 发表于 01-05 17:15 894次阅读

    深入剖析PCA82C250 CAN控制器接口:性能、应用与设计要点

    CAN协议控制器与物理总线之间的关键接口,在CAN网络中扮演着举足轻重的角色。今天,我们就来深入探讨一下PCA82C250这款器件。 文件下
    的头像 发表于 12-30 16:30 697次阅读

    MCP2502X/5X CAN I/O 扩展:功能、应用与设计要点

    于汽车、工业自动化等众多领域。而 MCP2502X/5X 系列 CAN I/O 扩展,为实现简单 CAN 节点提供了一种无需微控制器的解决
    的头像 发表于 12-28 17:25 1245次阅读

    IKSEMI发布高性能车规级CAN芯片组:IN2515与ILA82C251,全面替代MCP2515及PCA82C251

    半导体品牌IKSEMI凭借其自主研发的IN2515CAN控制器与ILA82C251CAN收发,为汽车电子系统提供了安全、可靠且完整的CAN
    的头像 发表于 12-02 09:25 592次阅读
    IKSEMI发布高性能车规级<b class='flag-5'>CAN</b>芯片组:IN<b class='flag-5'>2515</b>与ILA82C251,全面替代<b class='flag-5'>MCP2515</b>及PCA82C251

    MCP251863 CAN FD控制器技术解析与应用指南

    Microchip Technology MCP251863外部CAN FD控制器在小尺寸封装中集成了 CAN FD控制器 (
    的头像 发表于 10-14 15:43 1240次阅读
    <b class='flag-5'>MCP</b>251863 <b class='flag-5'>CAN</b> FD<b class='flag-5'>控制器</b>技术解析与应用指南

    CAN总线控制器:智能设备的“交通指挥官”

    本文导读在汽车、工业自动化、医疗设备等场景中,无数电子设备通过CAN总线高效通信。而这场“数据交通”的背后,离不开一位隐形指挥官——CAN总线控制器
    的头像 发表于 07-25 11:35 826次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b><b class='flag-5'>控制器</b>:智能设备的“交通指挥官”

    纳祥科技独立CAN控制器NX8615,带SPI接口的,兼容替代MCP2515MCP2515-I/ST

    控制器
    深圳市纳祥科技有限公司
    发布于 :2025年06月19日 09:52:35

    MCP2515同时收发出现bug

    MCP2515,产生接收缓冲溢出中断,导致无法接受数据,如何处理
    发表于 05-10 15:08