CAN总线系列讲座第五讲——CAN总线硬件电路设计
一  实战学习背景 
CAN总线节点的硬件构成方案有两种,其中的方案:
(1)、MCU控制器+独立CAN控制器+CAN收发器。独立CAN控制器如SJA10000、MCP2515,其中MCP2515通过SPI总线和MCU连接,SJA1000通过数据总线和MCU连接。
该方案编写的CAN程序是针对独立CAN控制器的,程序可移植性好,编写好的程序可以方便的移植到任意的MCU。但是,由于采用了独立的CAN控制器,占用了MCU的I/O资源,并且电路变得复杂。
为了增强针对性,选择”51系列单片机+ SJA1000”的CAN总线节点的硬件构成方案,做入门介绍.
二  51系列单片机CAN总线学习板硬件电路设计 

 
51系列单片机CAN总线学习板采用STC89C52RC作为节点的微处理器。在 CAN 总线通信接口中采用PHILIPS 公司的“独立CAN总线通信控制器SJA1000” 和“高性能CAN总线收发器TJA1040”芯片。图1为51系列单片机CAN总线学习板硬件电路原理图。从图中可以看出,电路主要由七部分构成:微控制器STC89C52RC、独立 CAN 通信控制器 SJA1000、 CAN 总线收发器TJA1040、DC/DC电源隔离模块、高速光电耦合器 6N137、串口芯片MAX232电路、按键及LED灯显示电路。
STC89C52RC初始化SJA1000后,通过控制 SJA1000 实现数据的接收和发送等通信任务。SJA1000 的 AD0~AD7 连接到STC89C52RC的 P0 口,其CS引脚连接到STC89C52RC的 P2.7, P2.7为低电平“0”时,单片机可选中SJA1000,单片机通过地址可控制SJA1000执行相应的读写操作。SJA1000 的 RD、 WR、 ALE 分别与STC89C52RC的对应引脚相连。SJA1000 的INT引脚接STC89C52RC的 INT0,STC89C52RC可通过中断方式访问SJA1000。
为了增强CAN总线的抗干扰能力,SJA1000的TX0和RX0引脚通过高速光耦 6N137与TJA1040的引脚TXD和RXD 相连,这样能够实现总线上各CAN节点间的电气隔离。需要特别注意一点:光耦部分电路所采用的两个电源VCC和CAN_V 必须完全隔离,否则采用光耦也就失去了意义。电源的完全隔离可采用小功率电源隔离模块,51系列单片机CAN总线学习板选用B0505D-1W电源隔离模块。这些电路虽然增加了CAN节点的复杂程度,但是提高了CAN节点的稳定性和安全性。
TJA1040与CAN总线的接口部分采用了一定的安全和抗干扰措施:TJA1040的CANH 和CANL 引脚各自通过一个5欧姆的电阻与 CAN 总线相连,电阻可起到一定的限流作用,保护TJA1040 免受过流的冲击。CANH和CANL与地之间分别并联了一个30P的电容,可以起到滤除总线上的高频干扰的作用,也具有一定的防电磁辐射的能力。另外,在两根CAN总线接入端与地之间分别反接了一个保护二极管IN4148,当 CAN 总线有较高的负电压时,通过二极管的短路可起到一定的过压保护作用。
串口芯片MAX232电路用于“51系列单片机CAN总线学习板”下载程序,也可以实现CAN总线转232串口数据转换功能。

CAN总线系列讲座第五讲——CAN总线硬件电路设计的更多相关文章

  1. CAN总线系列讲座第六讲——SJA1000的滤波器设置

    CAN总线的滤波器设置就像给总线上的节点设置了一层过滤网,只有符合要求的CAN信息帧才可以通过,其余的一概滤除. 在验收滤波器的帮助下,只有当接收信息中的识别位和验收滤波器预定义的值相等时,CAN 控 ...

  2. 存储系列之 硬盘接口与SCSI总线协议

    本文主要介绍硬盘的接口.总线和协议,SSD与SATA硬盘一般是兼容的,NVmeSSD除外. 一.磁盘控制器 上一章介绍了存储系统的主要介质硬盘,而硬盘的读写通过磁头臂,磁头臂是由磁盘驱动器来控制的.磁 ...

  3. 【ArcGIS Server 开发系列】Flyingis六大系列讲座精品PDF奉献

    转自:http://www.cnblogs.com/gispeng/archive/2008/07/24/1250116.html [ArcGIS Server 开发系列]Flyingis六大系列讲座 ...

  4. 【转】PC架构系列:CPU/RAM/IO总线的发展历史!

    原文地址:http://blog.csdn.net/xport/article/details/1387928 1. 从 IBM PC XT 架构开始...一开始PC的设计中,CPU/RAM/IO都是 ...

  5. C#总结(六)EventBus事件总线的使用-自己实现事件总线

    在C#中,我们可以在一个类中定义自己的事件,而其他的类可以订阅该事件,当某些事情发生时,可以通知到该类.这对于桌面应用或者独立的windows服务来说是非常有用的.但对于一个web应用来说是有点问题的 ...

  6. 亚马逊AWS在线系列讲座——基于AWS云平台的高可用应用设计

    设计高可用的应用是架构师的一个重要目标,可是基于云计算平台设计高可用应用与基于传统平台的设计有很多不同.云计算在给架构师带来了很多新的设计挑战的时候,也给带来了很多新的设计理念和可用的服务.怎样在设计 ...

  7. A亚马逊WS网上系列讲座——怎么样AWS云平台上千万用户的应用建设

    用户选择云计算平台构建应用程序的一个重要原因是高弹性的云平台和可扩展性. 面向Internet应用程序通常需要支持用户使用大量,但要建立一个高度可扩展.具有一定的挑战,高度可用的应用程序,只有立足AW ...

  8. unity3D实际的原始视频游戏开发系列讲座10它《战斗:外来入侵》在第一季度游戏开发

    解说文件夹 <保卫战:异形入侵>游戏开发 第一讲   游戏演示和资源的介绍 第二讲  "异形"怪物的实现 第三讲  "异形"怪物生命值的体现 第四讲 ...

  9. 转:C#线程系列讲座(1) BeginInvoke和EndInvoke方法

    转载自:http://www.cnblogs.com/levin9/articles/2319248.html 开发语言:C#3.0IDE:Visual Studio 2008本系列教程主要包括如下内 ...

随机推荐

  1. 用MySQL碰到的一些“坑”

    本篇文章持续更新. 这里说坑,也不算坑,只是对我一个经常用SQL Server的来说有点不习惯而已. 一.GroupBy 的不同 create table Customer ( CustomerNum ...

  2. 什么是句柄C#

    话不多说,下面分享下我对句柄的看法. 如果没有意外的话,ABCDE他们将依次进行占用CPU资源.但是可能会发生如下情况 句柄,就是用来维护进程或者系统范围内的一个标识.就比如我们去访问一个文件的时候, ...

  3. Mysql基础学习第二天

    Mysql基础学习第二天 函数 函数:是指一段可以直接被另一段程序调用的程序或代码. 字符串函数 数值函数 日期函数 流程函数 字符串函数 MySQL内置很多字符串函数,常用的几个如下: 函数 功能 ...

  4. 前端工程化:使用 shelljs 生成 yapi 接口文件

    之前的文章介绍了使用 yapi-to-typescript (下文简称 ytt)生成接口类型定义文件,方便我们直接使用接口的请求和响应类型,能减少很多写接口类型的时间. 使用 yapi-to-type ...

  5. think php 3种验证方式

    方式一:独立验证 // 验证1.独立验证 //验证的规则 $rule = [ 'name' => 'require|max:25', 'username' => 'require', 'p ...

  6. Control Flow in Tensorflow TF中的控制流解析

    写在前面 本文翻译自Tensorflow团队的文章Tensorflow Control Flow Implementation,部分内容加入了笔者自己的理解,如有不妥之处还望各位指教. 目录 概览 控 ...

  7. 理解并手写 call() 函数

    手写自己的call,我们要先通过call的使用,了解都需要完成些什么功能? call()进行了调用,是个方法,已知是建立在原型上的,使用了多个参数(绑定的对象+传递的参数). 我们把手写的函数起名为m ...

  8. Airtest安装与简介

    一:简介 什么是Airtest 网易的airtest其实是个测试套件,由Airtest框架.poco框架.airtestIDE 组成. Airtest框架 基于图像识别的自动化测试框架,是网易自己团队 ...

  9. ArcMap操作随记(6)

    1.上流汇流区 [填洼]→[流向]→[分水岭] 2.输入坐标进行移动,也就是精确移动 [移动]工具(在自定义中,其中的[旋转]工具也有类似效果) 3.找最近的要素(矢量) [近邻分析]→[汇总] 4. ...

  10. k8s.gcr.io、gcr.io仓库的镜像下载

    镜像下载.域名解析.时间同步请点击 阿里巴巴开源镜像站 获取这类镜像的方法一般有2种: 1.通过拉取国内镜像仓库的内容(操作简单直接拉取即可,缺点是镜像的版本更新可能较慢,可能无法获取最新的镜像) 2 ...