sja1000连接图参考

合集下载

CAN控制器芯片介绍

CAN控制器芯片介绍
验收滤波器(ACF)
验收滤波器把它其中的数据和接收的识别码的内容 相比较,以决定是否接收信息。在纯粹的接收测试 中,所有的信息都保存在RXFIFO中。
SJA1000的内部结构及功能
位流处理器(BSP)
位流处理器是一个在发送缓冲器、RXFIFO 和CAN 总线之间, 控制数据流的程序装置,它还在CAN 总线上执行错误检测、 仲裁填充和错误处理。
EML负责传送层模块的错误管制。它接收BSP 的出错报告。通 知BSP 和IML 进行错误统计。
SJA1000控制器引脚
SJA1000 控制器有 DIP28(塑质双列直插 封装)和SO28(塑质小 型外线封装)两种形式
SJA1000 DIP28引脚图
SJA1000引脚排列与引脚功能表
符号 AD7-AD0 ALE/AS
工作模式
高速模式
管脚8接地。在高速工作模式下,发送器输出级晶体管将以尽 可能快的速度打开、关闭。在这种模式下,不采取任何措施 用于限制上升斜率和下降斜率。建议使用屏蔽电缆以避免射 频干扰RFI问题。
斜率控制模式
对于较低速度或较短总线长度,可使用非屏蔽双绞线或平行 线作为总线。为降低射频干扰RFI,应限制上升斜率和下降斜 率。上升斜率和下降斜率可通过由管脚8接至地的连接电阻进 行控制。斜率正比于管脚8的电流输出。
PCA82C250功能框图
保护电路
斜率 /等待
接收器
驱动器ቤተ መጻሕፍቲ ባይዱ
基准电 压
PCA82C250管脚图
硬件结构
符号 TXD GND VCC RXD Vref CANL CANH RS
管脚 1 2 3 4 5 6 7 8
功能描述 发送数据输入 地 电源电压 接收数据输出 参考电压输出 低电平CAN电压输入/输出 高电平CAN电压输入/输出 斜率电阻输入

手把手教你设计CAN总线系列讲座(2)

手把手教你设计CAN总线系列讲座(2)

手把手教你设计CAN总线系列讲座(2)—CAN总线智能节点的设计在远程测控系统中,都要通过传感器或其他测量装置获取环境或相关的输入参数,传送到处理器,经过一定的算法,做出相应的控制决策,启动执行机构对系统进行控制,基于CAN总线的测控系统将单个测控设备变成网络节点,将控制系统中所需的基本控制、运行参数修改、报警、显示和监控等功能分散到各个远程节点中。

因此总线上的节点应该具有总线通信功能和测控功能,这必然离不开微处理器。

我们把具有这类功能的节点叫智能节点。

1 CAN网络节点结构和SJA1000的应用结构图一般把每个CAN模块分成不同的功能块。

这里以分布式恒温控制节点构成的CAN图1 CAN总线控制网络结构图控制网络为例(如图1所示),分析一下基于CAN总线的分布式网络节点的结构。

CAN节点由微处理器、CAN控制器SJA1000、光耦6N137模块和CAN驱动器82C50构成。

CAN控制器SJA1000执行在CAN规范里规定的完整的CAN协议,用于报文的缓冲和验收过滤,负责与微控制器进行状态、控制和命令等信息交换;在SJA1000下层是CAN收发器PCA82C50,它为CAN控制器和总线接口,它控制从CAN控制器到总线物理层或相反的逻辑电平信号,提供对总线的差动发送和对CAN控制器的差动接收功能。

光耦6N137起隔离作用。

图2 SJA1000的结构图所有这些CAN模块都由微处理器控制,它负责执行应用的功能,负责控制执行器(比如加热设备)、读传感器(比如温度)和处理人机接口。

如图2是SJA1000的应用结构图。

在CAN规范里,CAN核心模块控制CAN帧的发送和接收。

接口管理逻辑负责连接外部微处理器,该控制器可以是单片机、DSP或其他器件。

经过SJA1000复用的地址/数据总线访问寄存器和控制读写选通信号。

SJA1000的发送缓冲器能够存储一个完整的报文(扩展的或标准的)。

当微处理器初始化发送接口管理逻辑,CAN核心模块就会从发送缓冲器读CAN报文。

基于SJA1000的CAN节点设计v1.0

基于SJA1000的CAN节点设计v1.0

基于SJA1000的CAN节点设计文件信息类别内容关键词SJA1000,CTM系列隔离CAN收发器基于SJA1000的CAN节点设计摘要修订历史版本日期原因Rev X1 2006-12-13 内部制定初稿Rev 1.0 2006-12-15 第一次发布目录1. 基于SJA1000的CAN节点设计 (3)1.1 硬件设计电路 (3)1.1.1收发器隔离电路设计 (3)1.1.2 CAN总线接口设计 (4)1.2 软件设计 (5)程序清单1.1 定义片选地址 (5)程序清单1.2 初始化SJA1000 (5)程序清单1.3 发送报文 (6)2. 应用实例 (7)3. 声明 (1)1.基于SJA1000的CAN节点设计1.1 硬件设计电路CAN总线是一种最有前途的现场总线,因其优异性能而在工业控制、汽车电子、安防等方面得到广泛应用。

设计CAN-bus通讯接口是很重要的一个环节,设备的正确运行与其密切相关。

如图 1.1给出了一个实际的CAN-bus通讯单元电路图,电路结构为:MCU(P89C52)+CAN控制器(SJA1000)+隔离CAN收发器(CTM Module)。

图 1.1 CAN-bus通讯单元原理图如图 1.1所示,整个系统电源采用+5V电源输入,上电复位芯片(CAT810L)可保证上电时正确的启动系统。

微处理器采用PHILIPS的P89C52单片机,该系列单片机是80C51微控制器的派生器件,采用先进的CMOS工艺制造,指令系统与80C51完全相同。

CAN控制器采用PHILIPS的SJA1000,SJA1000是一款独立的控制器,用于汽车和一般工业环境中的控制器局域网络。

它是PHILIPS半导体PCA82C200 CAN控制器(BasicCAN)的替代产品。

而且,它增加了一种新的工作模式(PeliCAN),这种模式支持具有很多新特性的CAN 2.0B 协议,是目前市面上用的最广的一款CAN控制器。

SJA1000数据手册_引脚图_参数

SJA1000数据手册_引脚图_参数
THERMAL CHARACTERISTICS
DC CHARACTERISTICS
AC CHARACTERISTICS
AC timing diagrams Additional AC information
PACKAGE OUTLINES
SOLDERING
Introduction DIP Soldering by dipping or by wave Repairing soldered joints SO Reflow soldering Wave soldering Repairing soldered joints
ERROR MANAGEMENT
LOGIC
9 XTAL1
10 XTAL2
OSCILLATOR
RE1 Block diagram.
2000 Jan 04
4
Philips Semiconductors
Stand-alone CAN controller
Product specification
SJA1000
5 PINNING
SYMBOL
PIN
DESCRIPTION
AD7 to AD0 ALE/AS CS RD/E WR CLKOUT
VSS1 XTAL1 XTAL2 MODE
VDD3 TX0 TX1 VSS3 INT
RST
VDD2 RX0, RX1
VSS2 VDD1
2, 1, 28 to 23 3 4 5 6 7
DEFINITIONS
LIFE SUPPORT APPLICATIONS
2000 Jan 04
2
Philips Semiconductors
Stand-alone CAN controller

3.2 SJA1000硬件连接测试

3.2 SJA1000硬件连接测试

测试例程
测试例程通过调用SJA1000_TestReg()函数判断MCU与SJA1000
硬件是否正常连接,并用D1的闪烁频率不同作指示,以下只给出主函数。
void main(void) { timerInit(); D1 = 0;
for(; ;) { if(SJA1000_TestReg() == 1) { D1 = !D1; timerDly(1000); } else { D1 = !D1; timerDly(100); } } }
头文件重复包含问题
假设有A.h、B.h、C.h和D.c四个文件,其中B.h和C.h均包含A.h,
而D.c则包含了B.h和C.h,那么编译时将出现A.h被重复包含的错误。
A.h B.h C.h D.c
.......
#include “A.h”
#include “A.h”
#include “B.h”
.......
声明外部变量等。
当一个.C程序文件需要引用其他程序文件中的函数或变量时,若这些函数和 变量在其他程序文件对应的头文件中有声明,那么包含这些头文件即可,例如:
B.c
B.h
A.c
包含B.h;
全局变量N定义;
全局变量N声明; 调用函数X; 函数X原型声明; …… 引用全局变量N;
.......
函数X实现; ……
#include “X.h” ……. …….
#include “X.h” ……. …….
#include “X.h” ……. …….
公共头文件X.h包含其他所有头文件,A、B、C三个程序文件仅需包含X.h即可。 这种方案的优点是当增加新的头文件时,仅需在公共头文件中包含,修改的地 方比较少。

SJA1000简介2010

SJA1000简介2010

SJA1000简介2010SJA1000简介2010-3-17 5:57:00PCA82C250提供对总线的差动发送和对CAN控制器的差动接收功能,也增大了通信距离,提高了系统的瞬间抗干扰能力,保护总线,降低射频干扰(RFI),实现了热防护等功能。

发送子程序负责节点报文的发送,由CAN控制器SJA1000独立完成,将命令寄存器里的发送请求标志置位,即可发送SJA1000发送缓冲区中的报文。

CAN总线及CAN控制器SJA1000简介CAN总线最初是德国Bosch公司在1986 年为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种支持分布式实时控制系统的串行数据通讯总线。

CAN总线与其它通信网的显著不同之处在于:(1)报文传送中不包含目标地址,它是以全网广播为基础,各接收站根据报文中反映数据性质的标识符过滤报文,该收的收下,不收的弃用。

其好处是可线上网下网、即插即用和多站接收。

(2)特别强化了对数据安全性的关注,满足控制系统及其它较高数据要求的系统需求。

另外CAN总线采用短帧结构,借助接收滤波的多地址帧传送,受干扰概率低,每帧信息都有CRC校验及其它检错措施。

响应远程数据请求,配置灵活,具有全系统的数据相容性。

节点数主要取决于总线驱动电路,目前最多可达110个节点。

CAN总线符合ISO11898标准,通信速率高,最大传输速率可达1Mbit/S,最大传输距离为10km,传输介质可为双绞线。

基于CAN总线以上的特点,把它应用于系统分布比较分散且需要在同一总线上挂接多个节点的场合是非常适合的。

目前广泛流行的CAN总线器件有两大类:一类是独立的CAN控制器,如PhilipS 公司的PCA82C200,SJA1000及Intel82256/82257等;另一类是带有在片CAN的微控制器,如P8XC582等。

其中Philips公司的PCA82C200是符合CAN2. 0A协议的总线控制器,SJA1000是它的替代产品,它是应用于汽车和一般工业环境的独立CAN总线控制器。

CAN控制器SJA1000中文资料

CAN控制器SJA1000中文资料
-5-
广州周立功单片机发展有限公司 Tel 020 38730976 38730977 Fax:38730925
器 RXB 13 个字节 作为接收 FIFO RXFIFO 长 64 字节 的一个窗口 可被 CPU 访问 CPU 在此 FIFO 的支持下 可以在处理信息的时候接收其它信息 6.1.4 验收滤波器 ACF 验收滤波器把它其中的数据和接收的识别码的内容相比较 以决定是否接收信息 在纯粹的接收测试中
6.2 CAN 控制器的详细说明 SJA1000 在软件和引脚上都是与它的前一款 PCA82C200 独立控制器兼容的 在此基础上它增加了很 多新的功能 为了实现软件兼容 SJA1000 增加修改了两种模式 y BasicCAN 模式 与 PCA82C200 兼容 y PeliCAN 模式 扩展特性 工作模式通过时钟分频寄存器中的 CAN 模式位来选择 复位默认模式是 Basic CAN 模式 6.2.1 与 PCA82C200 兼容性 在 Basic CAN 模式中 SJA1000 模仿 PCA82C200 独立控制器所有已知的寄存器 在 6.2.1.1 到 6.2.1.4 节中所描述的特性不同于 PCA82C200 这主要是为了软件上的兼容性 6.2.1.1 同步模式 在 SJA1000 的控制寄存器中没有 SYNC 位 在 PCA82C200 中是 CR.6 位 同步只有在 CAN 总线上 弱势-支配 控制 的转换时才有可能发生 写这一位是没有任何影响的 为了与现有软件兼容 读取 这一位时是可以把以前写入的值读出的 对触发电路无影响 6.2.1.2 时钟分频寄存器 时钟分频寄存器用来选择 CAN 工作模式 Basic CAN /Peli CAN 它使用从 PCA82C200 保留下来的 一位 象在 PCA82C200 中一样 写一个 0-7 之间的值 就将进入 Basic CAN 模式 默认状态是 12 分频 的 Motorola 模式和 2 分频的 Intel 模式 保留的另一位补充了一些附加的功能 CBP 位 见表 49 的置位 使内部 RX 输入比较器旁路 这样在使用外部传送电路时可以减少内部延时 6.2.1.3 接收缓冲器 PCA82C200 中双接收缓冲器的概念被 Peli CAN 中的接收 FIFO 所代替 这对软件除了会增加数据溢出 的可能性之外 不会产生应用上的影响 在数据溢出之前 缓冲器可以接收两条以上信息 最多 64 字节 6.2.1.4 CAN 2.0B SJA1000 被设计为全面支持 CAN 2.0B 协议 这就意味着在处理扩展帧信息的同时 扩展振荡器的误 差被修正了 在 Basic CAN 模式下只可以发送和接收标准帧信息 11 字节长的识别码 如果此时检测到 CAN 总线上有扩展帧的信息 如果信息正确 也会被允许且给出一个确认信号 但没有接收中断产生 6.2.2 Basic CAN 和 Peli CAN 模式的区别 在 Peli CAN 模式下 SJA1000 有一个含很多新功能的重组寄存器 SJA1000 包含了设计在 PCA82C200 中的所有位及一些新功能位 Peli CAN 模式支持 CAN 2.0B 协议规定的所有功能 29 字节的识别码 SJA1000 的主要新功能

CAN总线接口电路

CAN总线接口电路

摘要介绍了采用PHILIP公司生产的控制器局域网的高度集成的通信控制器SJA1000和82C250作为收发器的CAN总线接口电路的硬件设计方法,介绍了控制器和收发器及看门狗芯片的特点、内部结构、寄存器结构及地址分配,说明一种通用型CAN总线的设计和开发.探讨应用中需注意的一些问题。

关键词:CAN总线;控制器;收发器;电路设计目次摘要 (I)1 绪论 (1)1.1 CAN总线简介 (1)1.1.1 CAN协议 (1)1.1.2电气参数及信号表示 (2)1.2 CAN的主要技术特点 (2)1.3 CAN总线通信系统拓扑结构 (3)2 CAN总线接口电路设计 (3)2.1 总体方案设计 (3)2.2 各模块电路的设计 (4)2.2.1单片机最小系统 (4)2.2.2 CAN总线接口控制电路设计 (5)2.2.2.1SJA1000简介 (5)2.2.2.2基于SJA1000的控制电路设计 (10)2.2.3 CAN总线收发电路设计 (11)2.2.3.1CAN总线收发器82C250介绍 (11)2.2.3.2基于82C250收发电路设计 (14)2.2.4复位、监控电路设计 (15)2.2.4.1X5045P简介 (15)2.2.4.2基于X5045P的电路设计 (18)2.2.5电源设计 (18)2.3 接口电路总体电路原理图 (19)3 结束语 (21)参考文献 (22)附录1: 接口电路总体电路原理图 (23)1 绪论1.1 CAN总线简介CAN[Control(Controller) Area Network]是控制(器)局域网的简称。

CAN是一种有效支持分布式控制或实时控制的串行通信网络,最初由德国Bosch公司80年代用于汽车内部测试和控制仪器之间的数据通信。

目前CAN 总线规范已被国际标准化组织ISO制订为国际标准ISO11898,并得到了Motorola,Intel ,Philips等大半导体器件生产厂家的支持,迅速推出各种集成有CAN协议的产品。

3.1SJA1000编程基础详解

3.1SJA1000编程基础详解

实际访问时使用 基址 + 偏址 的方式读写寄存器
访问寄存器的常用操作
1 对整个寄存 器读写操作
2 对寄存器位 进行修改
3 连续读写多 个寄存器
目 录
MCU访问SJA100 读写寄存器 寄存器位操作
连续读写寄存器
精确延时
定义寄存器读写指针
#define REG_BASE_ADDR xdata unsigned char
译码 电路 /CS
AD[0:7]
A [8:11] A [12:15]
1 0
0 0
1 0
A[8:15] = 0xA0~0xAF
SJA1000的访问基址:0xA000~0xAF00
寄存器地址定义
绝对编址定义寄存器
#define #define #define #define REG_CAN_MOD REG_CAN_CMR REG_CAN_SR REG_CAN_IR
0xA000
// 寄存器基址
*SJA_CS_Point = (xdata unsigned char *) REG_BASE_ADDR ;
定义SJA_CS_Point为指向外部存储器的指针, 通过指针访问SJA1000的寄存器
读写寄存器
// 写SJA1000寄存器 void WriteSJAReg(unsigned char RegAddr, unsigned char Value) { *(SJA_CS_Point + RegAddr) = Value; return; } 通过指针向指定地址(SJA1000的寄存器)写入数据
如果译码电路改变,访问基值改为0xB000, 寄存器的定义都需要改变。
0xA000 0xB000 0xA001 0xB001 0xA002 0xB002 0xA003 0xB003 // 内部控制寄存器 // 命令寄存器 // 状态寄存器 // // 中断寄存器 中断寄存器

SJA1000独立的CAN控制器应用指南(中文)

SJA1000独立的CAN控制器应用指南(中文)
PeliCAN 模式是操作的新模式 它能够处理所有的 CAN2.0B 定义的帧类型 而且它还提供一些增强功 能使 SJA1000 能应用于更宽的领域
2.1 SJA1000 特征 SJA1000 的特征能分成 3 组
1 已建立好的 PCA82C200 功能 这组的特征在 PCA82C200 里已经生效
-6-
广州周立功单片机发展有限公司
比较器旁路 = 不激活 (CBP = 0)
t

比较器旁路 = 激活 (CBP = 1)
t
图 6 SJA1000 接收输入比较器
如果外部集成收发器电路有效 而比较器旁路功能在时钟分频寄存器里无效 RX1 必须被连接到 2.5V 的参考电压上 现存的收发器参考电压输出 图 6 显示了两种设置的相应电路
传感器 变送器
MMI
传感器 变送器
MMI
总线
图 1 CAN 模块装置
-2-
广州周立功单片机发展有限公司
2.3 方块图 下图是 SJA1000 的方块图
SJA1000
发送 缓冲器

收发器
图 2 SJA1000 的方块图
根据 CAN 规约 CAN 核心模块控制 CAN 帧的发送和接收 接口管理逻辑完成对外部主控制器的连接 该控制器能可以是微型控制器或其他器件 经过 SJA1000 复用的地址/数据总线访问寄存器和控制读/写选通信号都在这里处理 另外除了 PCA82C200 已有的 BasicCAN 功能 还加入了一个新的 PeliCAN 功能 因此 附加的寄存器和逻辑电路主要在这块里生效 SJA1000 的发送缓冲器能够存储一个完整的信息 扩展的或标准的 无论什么时候主控制器初始化 发送 接口管理逻辑会迫使 CAN 核心块从发送缓冲器读 CAN 信息 当收到一个信息时 CAN 核心块将串行位流转换成用于验收滤波器的并行数据 通过这个可编程的 滤波器 SJA1000 能确定哪些信息实际上被主控制器收到 所有收到的信息由验收滤波器接收并存储在接收 FIFO 储存信息的多少由工作模式决定 而最多能 存储 32 个信息 因为数据溢出的可能性被大大降低 这使用户能更灵活地指定中断服务和中断优先级

CAN总线学习笔记五:SJA1000硬件电路设计

CAN总线学习笔记五:SJA1000硬件电路设计

AN总线学习笔记五:SJA1000硬件电路设计首先对CAN总线控制器SJA1000的管脚我们必须熟悉。

下面是其各个管脚的功能参数。

各个管脚的符号功能什么的上面的表里介绍的很详细,我就不多废话了。

接着我们看SJA1000的这些管脚在实际电路中是怎么进行连接的,因为只谈SJA1000的硬件电路设计,所以就截一张PIAE提供的电路原理图里关于SJA1000的部分。

下面我们要具体解析这个电路图。

AD0-AD7是地址/数据复用总线。

因为这个电路是把SJA1000做外部RAM扩展了,所以它的电路连接也势必要符合外部RAM的连接要求。

(特权同学也是第一次接触单片机的外部存储器扩展应用,所以开始的时候也很是纳闷,然后拿起课本一阵恶补后才恍然大悟。

)先补一下外部扩展RAM的知识,然后再谈这个电路就容易多了:51单片机外部RAM的扩展最多是可以寻址64KB的,也就是最多可以有16条地址线来寻址,P0口是低八位地址扩展口,P2口是高八位地址扩展口。

如果外部RAM不需要用到全部16条地址线(SJA1000就只有8条地址线),那么只要把低位地址线和外部RAM的相应地址线连接,高位的地址线在寻址时都默认为1,比如这里的SJA1000,它的8条地址线是和P0口相连接的,所以对SJA1000的寄存器寻址时的地址应该是FF00H-FFFFH,但是为什么PIAE提供的程序里的地址定义却是FE00H-FEFFH呢?这就要讨论CS信号的连接问题了,我们知道,CS是片选输入信号,只有当它是低电平时才能访问SJA1000。

再看看它和谁连了?是P2.0口,正好是地址线高八位的最低位,如果按常理来说,寻址FF00H,那么P2.0就是高电平,SJA1000就不能被访问。

所以寻址FE00H时才选通SJA1000,这时才是SJA1000寄存器的地址。

上面讨论了寻址的问题,只是就事论事,如果还不理解,我建议找本书详细了解下单片机的外部存储器的扩展后就会明白的。

现场总线技术通信控制器SJA1000

现场总线技术通信控制器SJA1000

发送数据字节7
发送数据字节8
现场总线技术通信控制器SJA1000
接收缓冲区
•几点说明: •1、接收缓冲区的整体配置和发送缓冲区相似, 因为接收缓冲区的数据即是由发送缓冲区发送 过来的数据;
•2、接收缓冲区是RXFIFO中可访问的部分,位 于CAN地址的20—29之间;
•3、标识符、远程发送请求位、数据长度码和
0 无动作
CMR.1 AT
中止发送
1
出现;将取消等待处理的发送请求。 (注:正在进行的发送是不能被中止的)
0 空缺;无动作
CMR.0 TR
PPT文档演模板
发送请求
1 出现;一个报文将被发送
0
空缺;无现动场作总线技术通信控制器SJA1000

符号
名称

CMR.7
-
CMR.6
-
CMR.5
-
-
- 保留
-
0 禁止; SJA1000不向微控制器发送中断信号
1
使能;当一个报文被无错接收时,SJA1000发出 一个接收中断信号给微控制器
0 禁止; SJA10现00场不总向线技微术控通制信控器制发器送SJ中A10断00信号
命令寄存器(CMR)
• 对微控制器来说是只写存储器。如果对 该地址进行读访问,返回•各值个位为的功“能1如1下1:11111”。
错误中断使能时,错误状态位或总线状态位的 错误中断 1 变化会置位此位
发送中断
0 微控制器的任何读访问可自动清除此位
发送缓冲器状态从逻辑0至逻辑(使能)
时,此位被置位,表示发送完成
接收中断
0 微控制器的任何读访问可自动清除此位
1
当接收FIFO不空且接收中断使能位被置为逻辑 1(使能)时,此位被置位,表示有数据待接收

sja1000中文版

sja1000中文版
MODE
VDD3 TX0 TX1 VSS3
引脚 2 1 28-23
3 4 5 6
7
8 9 10
11
12 13 14 15
说明
多路地址/数据总线
ALE输入信号 Intel模式 AS输入信号 Motorola模式
片选输入 低电平允许访问SJA1000
微控制器的/RD信号 Intel模式 或E使能信号 Motorola模式 微控制器的/WR信号 Intel模式 或RD/ /WR 信号 Motorola 模式 SJA1000产生的提供给微控制器的时钟输出信号 时钟信号来 源于内部振荡器且通过编程驱动 时钟控制寄存器的时钟关闭位 可禁止该引脚 接地
内部总线 位时序逻辑
12 VDD3
15 VSS3
13 TX0
14 TX1
19 RX0
20 RX1
21
VSS2
18
VDD2
错误管理逻辑
9 XTAL1
10 XTAL2
振荡器
复位
17
RST
图 1 方块图
5. 管脚排列
符号 AD7-AD0 ALE/AS
/CS /RD /E /WR
CLKOUT
VSS1 XTAL1 XTAL2
/INT /RST
中断输出 用于中断微控制器 /INT在内部中断寄存器各位都被
16
置位时低电平有效 /INT是开漏输出 且与系统中的其它/INT是
线或的 此引脚上的低电平可以把IC从睡眠模式中激活
复位输入 用于复位CAN接口 低电平有效 把/RST引脚通过
17
电容连到VSS 通过电阻连到VDD可自动上电复位 例如 C=1
XTAL1 9
SJA1000

CAN通信控制器SJA1000

CAN通信控制器SJA1000

地址过滤方法:
接收码位(AC.7—AC.0)(本地节点地址,需预 先设定)和报文标识符的高8位(ID.10—ID.3)必须在 被接收屏蔽位(AM.7—AM.0)标定为相关的那些位的 位置上相等,报文才被接收。
思考题:CAN总线的发送器和接收器均使 用SJA1000,采用CAN2.0A规范,发送器 发送的4个报文的ID分别为:
接收过滤器
利用接收过滤器,CAN控制器只允许接收标识符 位(ID10—ID3)与接收过滤寄存器中预设值相一致的 报文进入RXFIFO中。
接收过滤器通过接收码寄存器和接收屏蔽寄存器来定义。
(1)接收码寄存器(ACR) (预设本地节点地址)
BIT 7 AC.7
BIT 6 AC.6
BIT 5 AC.5
BIT 4 AC.4
BasicCAN模式——与PCA82C200兼容的模式 PeliCAN模式 ——扩展功能模式
工作模式通过时钟分频寄存器中的CAN模式位来选择, 复位默认模式是BasicCAN模式。
2 一般说明
两种封装形式: 一种为28引脚的塑质双列式封装(DIP28) 一种为28引脚的塑质小型线外封装(SO28)
(1)11001100001;
(2)11001101001;
(3)11001000001;
(4)11001001001。
欲使接收器只接收报文(1)、(3),应 如何设置接收器SJA1000的ACR和AMR?
总线定时寄存器0(BTR0)
总线定时寄存器0的内容确定波特率预置器 (BRP)和同步跳转宽度(SJW)的值。
定义接收码寄存器与接收滤波的对
BIT 3应位的B哪IT些2位是“B相IT关1 BIT 0 AC.3的(”AM(AA.XMC=.1X.2)=0)或“A不C.予1 关心的AC.0

第七章 CAN总线控制器SJA1000

第七章 CAN总线控制器SJA1000

CAN总线收发接口电路82C250
• 82C250是CAN控制器与物理总线之间的 接口,它最初是为汽车高速通信(最高达 1Mbps)的应用而设计的。 • 器件可以提供对总线的差动发送和接收 功能。
CAN 总线的应用 CAN控制器SJA1000在系统中的位置
分布模块1
传感器 执行元件 MMI 模块控制器
新增功能:
– 标准结构和扩展结构报文的接收和发送; – 64字节的接收FIF0: – 标准和扩展帧格式都具有单/双接收滤波器(含接收 屏蔽和接收码寄存器); – 可进行读/写访问的错误计数器; – 可编程的错误报警限制; – 最近一次的错误代码寄存器; – 每一个CAN总线错误都可以产生错误中断; – 具有丢失仲裁定位功能的丢失仲裁中断; – 单发方式(当发生错误或丢失仲裁时不重发); – 只听模式(监听CAN总线,无应答,无错误标志; – 支持热插拔(无干扰软件驱动位速率检测); – 硬件禁止CSI参考模型中的两层:物理层 接受滤波、超载 和数据连路层
逻辑链路控制(LLC) 媒体访问控制(MAC) 物理信令(Physical Sisnal Lins, PSL) 物理媒体附件( Physical Attachment, PMA) 媒体接口(Medium Dependent Interface, MDI) 数据 链路 层
SJAl000在软件和引脚上都是与它的前—款 PCA82C200独立CAN控制器兼容的,在此基础上 增加了很多新的功能。为了实现软件兼容, SJAl000采用了两种工作方式: Basic CAN方式(PCA82C200兼容方式)和PeliCAN方 式(扩展特性方式)。工作方式通过时钟分频寄存 器中的CAN方式位来选择。 上电复位默认工作方式是Basic CAN方式,Basic CAN和PeliCAN方式的区别如下:在PeliCAN方式 下,SJAl000有一个重新设计的含很多新功能的 寄存器组。SJAl000包含PCA82C200中的所有位, 同时增加了一些新的功能位。PeliCAN方式支持 CAN2.0B协议规定的所有功能(29位的标识符)。

CD4051、6N137、PCA82C250T、SJA1000、ADC0809芯片介绍

CD4051、6N137、PCA82C250T、SJA1000、ADC0809芯片介绍

CD4051、6N137、PCA82C250T、SJA1000、ADC0809芯片介绍CD4051芯片:CD4051相当于一个单刀八掷开关,开关接通哪一通道,由输入的3位地址码ABC来决定。

INH”是禁止端,当“INH”=1时,各通道均不接通。

此外,CD4051还设有另外一个电源端VEE,以作为电平位移时使用,从而使得通常在单组电源供电条件下工作的 CMOS电路所提供的数字信号能直接控制这种多路开关,并使这种多路开关可传输峰,峰值达15V的交流信号。

例如,若模拟开关的供电电源VDD=,5V,VSS=0V,当VEE=,5V时,只要对此模拟开关施加0,5V的数字控制信号,就可控制幅度范围为,5V,,5V的模拟信号。

使用十六进制代码就可以对CD4051进行操作了。

比如说P1=0X07,这样CD4051就选择的是7号(二进制111)通道了。

它的引脚图如下:其中引脚说明如下表:引脚号符号功能 1,2,4,5,12,13,14,15 IN/OUT 输入/输出端 9,10,11 A,B,C 地址端3 OUT/IN 公共输入/输出端 6 INH 禁止端7 VEE 模拟信号接地端 8 VSS 数字信号接地端 16 VDD 电源+它的真值表如下:INPUT STATES 输入状态 ON INHIBIT 禁止 C B A CD40510 0 0 0 00 0 0 1 10 0 1 0 20 0 1 1 30 1 0 0 40 1 0 1 50 1 1 0 60 1 1 1 71 * * * NONEADC0809芯片:ADC0809是采样频率为8位的、以逐次逼近原理进行模—数转换的器件。

其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。

其中ADC0809的引脚图如下:ADC0809主要信号引脚的功能说明如下:IN7,IN0——模拟量输入通道ALE——地址锁存允许信号。

mcp2515sja1000通讯调试记录

mcp2515sja1000通讯调试记录

MCP2515 SJA1000通讯调试记录一、CAN总线CAN是控制器局域网络(ControllerArea Network, CAN)的简称,是由研发和生产汽车电子产品著称的德国BOSCH公司开发了的,并最终成为国际标准(ISO 11898)。

SJA1000是飞利浦公司一款并行接口的CAN 协议控制器,为了减少IO口资源占用,Microchip推出SPI 接口CAN协议控制器,型号:MCP2515。

这两款芯片都支持CANV2.0B 技术规范,能发送和接收标准和扩展数据帧以及远程帧。

CAN电平:CAN数据格式:标准帧扩展帧远程帧(省略)二、原理图2.1、MCP2515的原理图2.2、SJA1000的原理图三、调试思路3.1、SPI接口调试3.2、CAN接口调试第一步:配置CLKOUT输出(CANCTRL寄存器配置CLKEN 和分频系数),通过示波器观察CLKOUT引脚输出。

确认MCP2515受控。

第二步:环路测试(自发自收)首先MCP2515配置成环路模式,下面是验证环路测试1、配置RXB0禁止滤波屏蔽标识符功能1、收发功能是否正常。

验证:RXB0接收数据(可以读取接收缓冲区获取)和发送数据对比,是否一致。

2、开启CANINTE.TX0IE、CANINTE.RX0IE中断,监测/INT和/RX0B 引脚电平变化。

理论上:1)成功发送数据,TXB0CTRL.TXREQ由1变成0和/INT引脚产生中断,且CANINTF.TX0IF发送中断标志位置1。

2)成功接收数据,/INT引脚产生中断,且CANINTF.RX0IF发送中断标志位置1。

同时RX0BF引脚出现低电平(前提使能RX0BF 接收缓冲区满中断引脚,BFPCTRL.BxBFE和BFPCTRL.BxBFM 置1)2、配置RXB0使能滤波屏蔽标识符功能(11位标准标识符)1、发送两组数据帧:先发送不符合滤波码的数据帧,然后发送符合滤波码的数据帧。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档