CAN总线学习系列之三——CAN控制器的选择

在进行CAN总线开发前,首先要选择好CAN总线控制器。下面就比较一些控制器的特点。
 
一些主要的CAN总线器件产品

制造商 产品型号 器件功能及特点
Intel 82526
82527
8XC196CA/CB
CAN通信控制器,符合CAN2.0A
CAN通信控制器,符合CAN2.0B
扩展的8XC196+CAN通信控制器,符合CAN2.0A
Philips 82C200
SJA1000
82C250
TJA1040
TJA1054
8XC592
8XCE598
P51XA-C3
CAN通信控制器,符合CAN2.0A
CAN通信控制器,82C200的替代品,符合CAN2.0B
通用CAN总线收发器
高速CAN总线收发器
容错的CAN总线收发器
8XC552+CAN通信控制器,去掉IIC符合CAN2.0A
提高了电磁兼容性的8XC592
16位微控制器+CAN通信控制器,符合CAN2.0B
Motorola 68HC05X4系列 68HC05微控制器+CAN通信控制器,符合CAN2.0A
Siemens 81C90/91
C167C
CAN通信控制器,符合CAN2.0B
微控制器+CAN通信控制器,符合CAN2.0A/B

因为SJA1000比较简单,资料丰富,对于初学者非常适用,所以我们采用SJA1000作为我们总线开发板的CAN控制器,让大家更容易入门。
 
SJA1000是一种独立的CAN控制器,主要用于移动目标和一般工业环境中的区域网络控制。它是Philips公司PCA82C200控制器的替代产品,除了PCA82C200的BasicCAN操作模式以外,还增加了一种新的操作模式——PeliCAN,这种模式支持具有很多新特性的CAN2.0B协议。
    SJA1000的基本特征如下:
1)      引脚电气参数与PCA82C200兼容;
2)      具有PCA82C200模式(即默认的BasicCAN模式),支持CAN2.0A和CAN2.0B;
3)      有扩展的接收缓冲器64字节,先进先出(FIFO);
4)      支持11位和29位标识码,通信速率可达1Mbps;
5)      其PeliCAN模式的扩展功能包括:可读写的错误计数器,可编程的错误报警限额寄存器,最近一次错误代码寄存器,对每一个总线错误的中断,有具体位表示的仲裁丢失中断,单次发送(无重发),支持热拔插,可扩展的验收滤波器,可接收自身报文(自请求接收)。

CAN总线学习系列之三——CAN控制器的选择的更多相关文章

  1. CAN总线学习系列之二——CAN总线与RS485的比较

    CAN总线学习系列之二——CAN总线与RS485的比较 上 一节介绍了一下CAN总线的基本知识,那么有人会问,现在的总线格式很多,CAN相对于其他的总线有什么特点啊?这个问题问的好,所以我想与其它总线 ...

  2. CAN总线学习系列之— CAN总线特点介绍

    CAN总线学习系列之— CAN总线特点介绍 CAN 总线作为一种工业界的流行总线广泛应于工业自动化.多种控制设备.交通工具.医疗仪器以及建筑.环境控制等各个行业中,它是是一种多主机局域网,所以这样 一 ...

  3. SQL Sever 学习系列之三

    SQL Sever 学习系列之三 SQL Server 学习系列之一(薪酬方案+基础) SQL Server 学习系列之二(日期格式问题)         五.经理今天刚谈到with的用法(with的 ...

  4. 大数据学习系列之三 ----- HBase Java Api 图文详解

    版权声明: 作者:虚无境 博客园出处:http://www.cnblogs.com/xuwujing CSDN出处:http://blog.csdn.net/qazwsxpcm 个人博客出处:http ...

  5. SpringCloud学习系列之三----- 断路器(Hystrix)和断路器监控(Dashboard)

    前言 本篇主要介绍的是SpringCloud中的断路器(Hystrix)和断路器指标看板(Dashboard)的相关使用知识. SpringCloud Hystrix Hystrix 介绍 Netfl ...

  6. Gradle学习系列之三——读懂Gradle语法

    在本系列的上篇文章中,我们讲到了创建Task的多种方法,在本篇文章中,我们将学习如何读懂Gradle. 请通过以下方式下载本系列文章的Github示例代码: git clone https://git ...

  7. CAN总线学习记录之三:总线中主动错误和被动错误的通俗解释

    首先建议把广泛使用的"主动错误"和"被动错误"概念换成"主动报错"和"被动报错". 1. 主动报错站点 只要检查到错误, ...

  8. Python零基础学习系列之三--Python编辑器选择

    上一篇文章记录了怎么安装Python环境,同时也成功的在电脑上安装好了Python环境,可以正式开始自己的编程之旅了.但是现在又有头疼的事情,该用什么来写Python程序呢,该用什么来执行Python ...

  9. ClickHouse学习系列之三【配置文件说明】

    背景 最近花了些时间看了下ClickHouse文档,发现它在OLAP方面表现很优异,而且相对也比较轻量和简单,所以准备入门了解下该数据库系统.在介绍了安装和用户权限管理之后,本文对其配置文件做下相关的 ...

随机推荐

  1. 使用ThinkPHP实现生成缩略图及显示

    首先了解父类Image.class.php(ThinkPHP/Library/Think/Image.class.php)中的一些函数 1:open() 打开被处理的图片 2:thumb() 生成缩略 ...

  2. BZOJ5473: 仙人掌

    传送门 首先,所有连通块的个数的期望再减去每个点孤立的概率就是答案. 设 \(d_i\) 表示 \(i\) 的度数,那么每个点孤立的概率为 \(\frac{1}{2^{d_i}}\) 考虑计算所有连通 ...

  3. BZOJ3601 一个人的数论

    Description 定义 \[ f_k(n)=\sum_{\substack{1\leq i\leq n\\gcd(i,n)=1}}i^k \] 给出\(n=\prod_{i=1}^w p_i^{ ...

  4. eclipse 中springboot2.0整合jsp 出现No Java compiler available for configuration options compilerClassName

    今天使用eclipse创建springboot整合jsp出现一个问题,在idea中并没有遇到这个问题.最后发现是需要在eclipse中添加一个eclipse依赖,依赖如下: <dependenc ...

  5. 用vue写一个仿app下拉刷新的组件

    如果你用vue弄移动端的页面,那么下拉刷新还是比较常见的场景,下面来研究如何写一个下拉刷新的组件(先上图); 由于节省大家的时间,样式就不贴出来了. html结构也不必介绍了,直接看代码吧-.- &l ...

  6. Chrome Extension 实战

    想起个问题,线上项目js要有bug,怎么进行调试修改. ------------- 想起来,方法应该是,拦截线上的js的请求,转到本地代码上进行调试... ------------- 网上看到 Chr ...

  7. Python笔记(十三):urllib模块

    (一)      URL地址 URL地址组件 URL组件 说明 scheme 网络协议或下载方案 net_loc 服务器所在地(也许含有用户信息) path 使用(/)分割的文件或CGI应用的路径 p ...

  8. C#读取AD域用户信息

    private const string domainName = "本机IP地址或域名"; private const string adAdmin = "管理员帐号& ...

  9. <button>与<input type="button">

    在做form表单,点击按钮随机生成两串密钥的时候 1.用第一种按钮的时候,会出现刷新form表单的现象.会把创建密钥前面的输入框中的字消失.虽然能生成密钥1和密钥2,但是会闪一下,随即消失.几个输入框 ...

  10. Hadoop HBase概念学习系列之HBase里的客户端和HBase集群建立连接(详细)(十四)

    需要遵循以下步骤: 1.客户端和Zookeeper集群建立连接.在这之前客户端需要获得一些信息(可以从HBase配置文件中读取或是直接指定).客户端从Zookeeper集群中读取-ROOT-表的位置信 ...