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. 第二十七天- 网络通信协议 TCP UDP 缓冲区

    1.网络通信协议 osi七层模型:按照分工不同把互联网协议从逻辑上划分了层级 socket层 2.理解socket: Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口.在设计 ...

  2. 【代码笔记】iOS-自定义loading(IanAlert)

    一,效果图. 二,工程图. 三,代码. ViewController.h #import <UIKit/UIKit.h> @interface ViewController : UIVie ...

  3. eclipse java web项目经常自动调试进入debug模式

    今天在运行Javaweb项目时,程序运行运行着就自动调试进入ThreadpoolExecutor,看着非常影响心情.最后在网上搜解决方法最后找到原因,解决方法如下. Window——>Prefe ...

  4. JS中String与Array的一些常用方法

    真是恨透了这些类似于substring substr slice 要么长得像,要么就功能相近的方法... 1⃣️string 1.substring(start开始位置的索引,end结束位置索引) 截 ...

  5. Python 自定义线程池

    """思路1,将任务放在队列 1)创建队列:(初始化) 2)设置大小,线程池的最大容量 3)真实创建的线程 列表 4)空闲的线程数量 2,着手开始处理任务 1)创建线程 ...

  6. Python 排错UnicodeEncodeError 'ascii' codec can't encode character 错误解决方法

    Python UnicodeEncodeError 'ascii' codec can't encode character 错误解决方法   by:授客 QQ:1033553122 错误描述: py ...

  7. C#和C++互相操作 结构体数组的传递

    C++中结构体定义: typedef struct // 平面 { double time;  float normal[3]; float center[3];  } plane; C++中方法声明 ...

  8. 【Python】爬取网站图片

    import requests import bs4 import urllib.request import urllib import os hdr = {'User-Agent': 'Mozil ...

  9. ssh免秘钥配置

    1.要求:两台相同的系统,这里设置server1控制server2的服务器 2.先在两台服务器上都安装好ssh 输入命令下载: yum install -y openssh-clients opens ...

  10. UIAutomator环境搭建

    目录 下载.安装JDK&配置Java环境变量 下载.安装SDK.ADT&配置Android环境变量 下载.安装ANT&配置ANT环境变量 创建UIAutomator工程 UIA ...