当前位置:文档之家› CAN总线复习题

CAN总线复习题

CAN总线复习题
CAN总线复习题

1、通信方式按照信息的传输方向分类,不正确的是()。

A. 单工方式

B. 半双工方式

C. 全双工方式

D.异步方式

2、通过复制位信号和延伸网段长度的网络设备是()。

A. 网关

B. 路由器

C. 中继器

D.网桥

3、下列现场总线中,支持电力线传输的是()。

A. Profibus-PA

B. CAN

C. DeviceNet

D. LonWorks

4、SJA1000进入睡眠模式,下列说法错误的是()。

A. 睡眠模式位为 1

B. 没有总线活动

C. 无中断

D. 发送数据

5、下列OSI模型中的()不属于DeviceNet的通信模型。

A. 物理层

B. 网络层

C. 应用层

D.数据链路层

6、ISO11898标准支持最高传输速率为()。

A. 5Kbps

B. 125Kbps

C. 500Kbps

D. 1Mbps

7、DeviceNet总线两端应加终端电阻,其标准阻值为()。

A. 75Ω

B. 120Ω

C. 200Ω

D. 330Ω

8、CAN控制器接口PCA82C250的CAN总线系统,总线至少可连接()个节点。

A. 32

B. 64

C. 110

D. 127

9、CAN总线使用的数据编码是()。

A. 归零码(RZ)

B.不归零码(NRZ)

C. 曼彻斯特编码

D. 差分曼彻斯特编码

10、MCP2515的SPI指令集中,复位命令是()。

A. B. 11 C. 00000011 D. 00000000

11、在CAN总线技术规范中,扩展帧具有的标识符位数为()。

A. 8位

B. 11位

C. 15位

D. 29位

12、SJA1000是()

控制器接口芯片控制器驱动芯片

C.在片CAN控制器芯片

D.独立CAN控制器芯片

13、属于独立CAN控制器芯片的是()。

A. C8051F040

B. P8Xc591

C. SJA1000

D. LPC2000

14、CANopen协议支持()位标识符。

A. 12

B. 11

C. 29

D. 32

15、SJA1000对控制段寄存器初始化工作在()下进行的。

A. BasicCAN模式

B. PeliCAN模式

C. 工作模式

D. 复位模式

16、在CAN总线中,当错误计数值大于()时,说明总线被严重干扰。

A. 96

B. 127

C. 128

D. 255

17、OSI通信模型中七层都具有的现场总线是()。

A. LonWorks

B. CAN

C. DeviceNet

D. HART

选择题答案:

填空题:

1. 路由器工作在OSI七层模型中的网络层。

2远程帧由6个不同的位域组成:帧起始、仲裁域、控制域、CRC域、应答域、帧结尾

3. 当CAN总线系统传输速率为1000kbps时,两节点间的最大传输距离。

4. CAN总线报文传送由4种不同类型的帧表示,分别是数据帧、远程帧、错误帧、过载帧。

5. MCP2515有个发送缓冲器和接收缓冲器。

6. PROFIBUS总线分为三个部分:PROFIBUS-FMS、PROFIBUS-DP和PROFIBUS-PA。

7. 当CAN总线系统传输速率为5kbps时,两节点间的最大传输距离为。

8. 过载帧由过载标志和组成。

9. CAN总线的同步方式有两种:硬同步和。

10. SJA1000有两种操作模式:支持协议的BasicCAN模式和支持协议的。

11. MCP2515的接收缓冲器RXB1配备了1个屏蔽滤波寄存器和个验收滤波寄存器。

12. MCP2515的SPI指令集中,复位命令是。

有3种不同的工作模式:高速、和待机。

14. MCP2515在进行任何操作时,其SPI接口中的必须为低电平。

15. MCP2515的SPI指令集中,位修改命令是。

16.如果引脚8接地,TJA1050将进入模式。

17. CAN总线的标准位时间结构都包括、传播段、相位缓冲段1和相位缓冲段2。

18. 在CAN总线中存在5种不同的错误类型,即:位错误、、CRC错误、格式错误、应答错误。

19. MCP2515具有5种工作模式,分别是配置模式、正常模式、休眠模式、监听模式和回环模式。

20. 在MCP2515的SPI接口中,外部数据和命令是通过引脚传送到器件中的。

1. 简述带冲突检测的载波侦听多重访问CSMA/CD协议的核心思想。

2. CAN总线的数据链路层包括哪两个子层分别有些什么功能。

3. 简述CAN总线的非破坏性逐位仲裁机制。

4.简述MCP2515内部的发送缓冲器之间的发送优先级规则。

5. MCP2515可以通过哪几种方式来启动报文发送

6. CAN现场总线采用规范,接收器SJA1000的ACR(验收代码寄存器)和AMR(验收屏蔽寄存器)分别设置为ACR=(二进制)、AMR=00000100(二进制),请问以下2个报文哪些会被成功接收

报文的ID分别为:(1)(2)

7. 某CAN总线系统的发送端要发送的信息字段为“”,发送端和接收端约定的CRC生成多项式G(X)= X4+X2+1,求该信息字段在信道上传输时的传输字段。

8. 在CAN总线中,已知总线定时寄存器0的控制字为62H和总线定时寄存器1的控制字为3EH,采用16M晶振,试计算(1)系统时间额度TQ;(2)同步调转宽度tsjw;(3)时间段1 TSEG1;(4)时间段2 TSEG2。

9. MCP2515的位修改指令

CAN总线通讯实验

CAN总线通讯实验 一、实验目的 1.掌握UP-NetARM2410经典版上的CAN总线通讯原理。 2.学习编程实现MCP2510的CAN总线通讯。 3.掌握查询模式的CAN总线通讯程序的设计方法。 二、实验内容 学习CAN总线通讯原理,了解CAN总线的结构,阅读CAN控制器MCP2510的芯片文档,掌握MCP2510的相关寄存器的功能和使用方法。编程实现UP-NetARM2410-CL之间的CAN总线通讯: 两个UP-NetARM2410-CL通过CAN总线相连接。ARM监视串行口,将接收到的字符发送给另一个开发板并通过串口显示(计算机与开发板是通过超级终端通讯的)。即按PC 键盘通过超级终端发送数据,开发板将接收到的数据通过CAN总线转发,再另一个PC的超级终端上显示数据。 三、预备知识 1、用EW ARM集成开发环境,编写和调试程序的基本过程。 2、ARM应用程序的框架结构。 3、会使用Source Insight 3 编辑C语言源程序。 4、了解CAN总线。 四、实验设备及工具 硬件:ARM嵌入式开发平台、用于ARM920T的JTAG仿真器、PC机Pentium100以上,CAN通讯电缆。 软件:PC机操作系统Win2000或WinXP、EW ARM集成开发环境、仿真器驱动程序、超级终端通讯程序 五、实验原理及说明 1.CAN总线概述

CAN全称为Controller Area Network,即控制器局域网,是国际上应用最广泛的现场总线之一。最初,CAN总线被设计作为汽车环境中的微控制器通讯,在车载各电子控制装置ECU之间交换信息,形成汽车电子控制网络。比如,发动机管理系统、变速箱控制器、仪表装备、电子主干系统中均嵌入CAN控制装置。 一个由CAN总线构成的单一网络中,理论上可以挂接无数个节点。但是,实际应用中节点数目受网络硬件的电气特性所限制。例如,当使用Philips P82C250 作为CAN 收发器时,同一网络中允许挂接110个节点。 CAN可提供高达1Mbit/s的数据传输速率,这使实时控制变得非常容易。另外,硬件的错误检定特性也增强了CAN的抗电磁干扰能力。 CAN的主要优点包括: ◆低成本 ◆极高的总线利用率 ◆很远的数据传输距离(长达10公里) ◆高速的数据传输速率(高达1Mbit/s) ◆可根据报文的ID决定接收或屏蔽该报文 ◆可靠的错误处理和检错机制 ◆发送的信息遭到破坏后可自动重发 ◆节点在错误严重的情况下具有自动退出总线的功能 ◆报文不包含源地址或目标地址仅用标志符来指示功能信息优先级 2.CAN总线的电气特性 CAN能够使用多种物理介质进行传输,例如:双绞线、光纤等。最常用的就是双绞线。信号使用差分电压传送,两条信号线被称为CAN_H和CAN_L,静态时均是2.5V左右,此时状态表示为逻辑1也可以叫做“隐性”。用CAN_H比CAN_L高表示逻辑0,称为“显性”。此时,通常电压值为CAN_H=3.5V和CAN_L=1.5V。当“显性”位和“隐性”位同时发送的时候,最后总线数值将为“显性”。这种特性,为CAN总线的总裁奠定了基础。 CAN总线的一个位时间可以分成四个部分:同步段,传播段,相位段1和相位段2,每段的时间份额的数目都是可以通过CAN总线控制器(比如MCP2510)编程控制的,而时间份额的大小tq由系统时钟tsys和波特率预分频值BRP决定:tq=BRP/tsys。如下图所示: 图9-1 CAN总线的一个位时间 上述四个部分的设定和CAN总线的同步、仲裁等信息有关,请读者参考CAN总线方面的相关资料。

can总线协议完全解析

CAN总线协议解析 李玉丽 (吉林建筑工程学院电气与电子信息工程学院,吉林长春,130021 ) 摘要:现场总线的发展与应用引起了传统控制系统结构的改变。控制局域网(C AN)总线因其自身的特点被广泛应用于 自动控制领域。本文对C AN总线协议作了详尽解析。 关键词:C AN总线;隐性位;显性位;节点 中图分类号:T U 85 文献标识码:A CAN(Cont roll e r A rea N et work)是分布式实时控 制系统的串行通信局域网,称谓CAN总线。在数据 实时传输中,设计独特、低成本,具有高可靠性,得到 广泛应用。 本文着重解析C AN 技术规范2.0B 版的CAN 的分层结构规范和CAN 报文结构规范。重点在于 充分理解CAN总线协议精髓,有助于CAN总线的 局网设计、软件编程、局网维护。 一、C AN的分层结构 CAN 遵从O SI ( Ope n Syste m I nte rc onnec ti on Re fe re nce Mode l ) 模型,其分层结构由高到低如图1 所示。 图1 C AN的分层结构 对应OSI 模型为两层,实际为三层,即LLC、 MA C、PL S。由此而知,对应于CAN总线系统每个 节点都是三层结构。数据发送节点数据流为LLC→ MA C→P LS ,然后将数据发送到总线上;而对于挂在 总线上的所有节点(包括发送节点)的接收的数据流 为PL S→MA C→LLC。 这种分层结构的规范保证了CAN 总线的多主 方式工作模式,即不分主从,非破坏性的仲裁工作模 式。而LLC 层的报文滤波功能可实现点到点、一点 对多点、全局广播、多点对一点,多点对多点等数据 传递方式。 各分层主要功能如下: LLC 层:接收滤波、超载通知、恢复管理; MAC 层:控制帧结构、执行仲裁、错误检测、出 错标定、故障界定。该层是CAN的核心; PL S 层:位编码/ 解码、位定时。 二、CAN总线的报文规范 CAN报文的传送有4 种不同类型的帧结构,数 据帧、远程帧、出错帧、超载帧。CA B2.0B 有4 种帧 格式。 (一)数据帧

课程设计实验报告 北邮

课程设计实验报告 -----物联网实验 学院:电子工程学院班级:2011211204 指导老师:赵同刚

一.物联网概念 物联网是新一代信息技术的重要组成部分。物联网的英文名称叫“The Internet of things”。顾名思义,物联网就是“物物相连的互联网”。这有两层意思:第一,物联网的核心和基础仍然是互联网,是在互联网的基础上延伸和扩展的网络;第二,其用户端延伸和扩展到了任何物体与物体之间,进行信息交换和通信。因此,物联网的定义是:通过射频识别(RFID)、红外感应器、全球定位系统、激光扫描器等信息传感设备,按约定的协议,把任何物体与互联网相连接,进行信息交换和通信,以实现对物体的智能化识别、定位、跟踪、监控和管理的一种网络。 二.物联网作用 现有成熟的主要应用包括: —检测、捕捉和识别人脸,感知人的身份; —分析运动目标(人和物)的行为,防范周界入侵; —感知人的流动,用于客流统计和分析、娱乐场所等公共场合逗留人数预警; —感知人或者物的消失、出现,用于财产保全、可疑遗留物识别等; —感知和捕捉运动中的车牌,用于非法占用公交车道的车辆车牌捕捉; —感知人群聚集状态、驾驶疲劳状态、烟雾现象等各类信息。 三.物联网无线传感(ZigBee)感知系统 ZigBee是一种新兴的短距离、低功耗、低数据速率、低成本、低复杂度的无线网络技术。ZigBee在整个协议栈中处于网络层的位置,其下是由IEEE 802.15.4规范实现PHY(物理层)和MAC(媒体访问控制层),对上ZigBee提供了应用层接口。 ZigBee可以组成星形、网状、树形的网络拓扑,可用于无线传感器网络(WSN)的组网以及其他无线应用。ZigBee工作于2.4 GHz的免执照频段,可以容纳高达65 000个节点。这些节点的功耗很低,单靠2节5号电池就可以维持工作6~24个月。除此之外,它还具有很高的可靠性和安全性。这些优点使基于ZigBee的WSN广泛应用于工业控制、消费性电子设备、汽车自动化、家庭和楼宇自动化、医用设备控制等。 ZigBee的基础是IEEE802.15.4,这是IEEE无线个人区域网工作组的一项标准,被称作IEEE802.15.4(ZigBee)技术标准。ZigBee不仅只是802.15.4的名字。IEEE仅处理低级MAC

CAN总线协议的物理层和报文类型

CAN总线协议的物理层和报文类型 CAN 总线的物理层是将ECU 连接至总线的驱动电路。ECU 的总数将受限 于总线上义了物理数据在总线上了物理数据在总线上各节点间的传输过程,主 要是连接介质、线路电气特性、数据的编码/解码、位定时和同步的实施标准。BOSCH CAN 基本上没有对物理层进行定义,但基于CAN 的ISO 标准对物理 层进行了定义。设计一个CAN 系统时,物理层具有很大的选择余地,但必须 保证CAN 总线协议中媒体访问层非破坏性位仲裁的要求,即出现总线竞争时, 具有较高优先权的报文获取总线竞争的原则,所以要求物理层必须支持CAN 总线中隐性位和显性位的状态特征。在没有发送显性位时,总线处于隐性状态,空闲时,总线处于隐性状态;当有一个或多个节点发送显性位,显性位覆盖隐 性位,使总线处于显性状态。在此基础上,物理层主要取决于传输速度的要求。 在CAN 中,物理层从结构上可分为三层:分别是物理层信令(Physical Layer Signaling,PLS)、物理介质附件(Physical MediaAttachment,PMA)层和介质从属接口(Media Dependent:Inter-face,MDI)层。其中PLS 连同数据链路层功能由CAN 控制器完成,PMA 层功能由CAN 收发器完成,MDI 层定义了电 缆和连接器的特性。目前也有支持CAN 的微处理器内部集成了CAN 控制器和 收发器电路,如MC68HC908GZl6。PMA 和MDI 两层有很多不同的国际或国 家或行业标准,也可自行定义,比较流行的是ISOll898 定义的高速CAN 发送 /接收器标准。理论上,CAN 总线上的节点数几乎不受限制,可达到2000 个,实际上受电气特性的限制,最多只能接100 多个节点。CAN 的数据链路层 是其核心内容,其中逻辑链路控制(Logical Link control,LLC)完成过滤、过载 通知和管理恢复等功能,媒体访问控制(Medium Aeeess control,MAC)子层完成数据打包/解包、帧编码、媒体访问管理、错误检测、错误信令、应答、串

CAN总线及CAN通讯协议

CAN总线及CAN通讯协议 CAN,全称为Controller Area Network,即控制器局域网,是国际上应用最广泛的现场总线之一。最初,CAN 被设计作为汽车环境中的微控制器通讯,在车载各电子控制装置ECU 之间交换信息,形成汽车电子控制网络。比如:发 动机管理系统、变速箱控制器、仪表装备、电子主干系统中,均嵌入CAN 控 制装置。一个由CAN 总线构成的单一网络中,理论上可以挂接无数个节点。实际应用中,节点数目受网络硬件的电气特性所限制。例如,当使用Philips P82C250 作为CAN 收发器时,同一网络中允许挂接110 个节点。CAN 可提供高达1Mbit/s 的数据传输速率,这使实时控制变得非常容易。另外,硬件的错 误检定特性也增强了CAN 的抗电磁干扰能力。CAN 通讯协议主要描述设备之间的信息传递方式。CAN 层的定义与开放系统互连模型(OSI)一致。每一 层与另一设备上相同的那一层通讯。实际的通讯发生在每一设备上相邻的两层,而设备只通过模型物理层的物理介质互连。CAN 的规范定义了模型的最下面两层:数据链路层和物理层。下表中展示了OSI 开放式互连模型的各层。应用层 协议可以由CAN 用户定义成适合特别工业领域的任何方案。已在工业控制和 制造业领域得到广泛应用的标准是DeviceNet,这是为PLC 和智能传感器设计的。在汽车工业,许多制造商都应用他们自己的标准。CAN 通讯协议主要描述设备之间的信息传递方式。CAN 层的定义与开放系统互连模型(OSI)一致。每一层与另一设备上相同的那一层通讯。实际的通讯发生在每一设备上相邻的 两层,而设备只通过模型物理层的物理介质互连。CAN 的规范定义了模型的最下面两层:数据链路层和物理层。下表中展示了OSI 开放式互连模型的各层。 应用层协议可以由CAN 用户定义成适合特别工业领域的任何方案。已在工业 控制和制造业领域得到广泛应用的标准是DeviceNet,这是为PLC 和智能传感

CAN总线实验报告

CAN总线实验报告 实验一SJA1000初始化 一、实验要求: 正确完成对SJA1000初始化,初始化成功后用LED点亮,表示初始化完成;否则LED 不亮。 二、实验内容: 1.实现SJA1000的初始化设置 2.理解SJA1000的相关寄存器的设置。 三、实验系统硬件设计: 图1是89C51与SJA1000连接图。MCU与SJA1000连接图。 选择适合的电阻和电容。此实验选择了51KR电阻与1UF电容,开机后给电容充电,电容电压由0V升至5V,SJA1000可靠复位。 I/O复位,由单片机某一I/O引脚控制SJA1000复位引脚,使单片机在可靠复位之后完成SJA1000的复位,避免时间偏差。

芯片复位,可以通过外围芯片进行复位。 四、实验系统软件设计 程序开始采用宏定义,初始化开始。设置模式寄存器进入复位模式;然后配置时钟分频寄存器(CDR)选择PeliCAN模式,关闭CLKOUT输出;然后是输出控制寄存器(OCR),再设置位定时(BTR0/BTR1)6MHz晶振,波特率30Kbps;然后配置验收滤波;最后再次设置模式寄存器推出复位状态并且设置单验收滤波,然后判断状态寄存器是否位OXOC以确认初始化是否成功,如果成功则点亮LED,否则重新初始化。 图1系统软件设计框图

程序如下: MODE EQU 0DE00H CMR EQU 0DE01H ;命令寄存器 SR EQU 0DE02H ;状态寄存器 IR EQU 0DE03H ;中断寄存器 IER EQU 0DE04H ;中断使能寄存器 BTR0 EQU 0DE06H ;总线定时寄存器一 BTR1 EQU 0DE07H ;总线定时寄存器二 OCR EQU 0DE08H ;输出控制寄存器 ALC EQU 0DE0BH ;仲裁丢失捕捉寄存器 ECC EQU 0DE0CH ;错误代码捕捉寄存器 TXERR EQU 0DE0FH ;发送错误计数器 ACR0 EQU 0DE10H ;验收代码寄存器0 ACR1 EQU 0DE11H ; 1 ACR2 EQU 0DE12H ; 2 ACR3 EQU 0DE13H ; 3

STM32的can总线实验心得要点

STM32的can总线实验心得 (一) 工业现场总线 CAN 的基本介绍以及 STM32 的 CAN 模块简介 首先通读手册中关于CAN的文档,必须精读。 STM32F10xxx 参考手册Rev7V3.pdf https://www.doczj.com/doc/b015451365.html,/bbs/redirect.php?tid=255&goto=lastpost#lastpos t 需要精读的部分为 RCC 和 CAN 两个章节。 为什么需要精读 RCC 呢?因为我们将学习 CAN 的波特率的设置,将要使用到RCC 部分的设置,因此推荐大家先复习下这部分中的几个时钟。 关于 STM32 的 can 总线简单介绍 bxCAN 是基本扩展 CAN (Basic Extended CAN) 的缩写,它支持 CAN 协议 2.0A 和 2.0B 。它的设计目标是,以最小的 CPU 负荷来高效处理大量收到的报文。它也支持报文发送的优先级要求(优先级特性可软件配置)。 对于安全紧要的应用,bxCAN 提供所有支持时间触发通信模式所需的硬件功能。 主要特点 · 支持 CAN 协议 2.0A 和 2.0B 主动模式 · 波特率最高可达 1 兆位 / 秒 · 支持时间触发通信功能 发送 · 3 个发送邮箱 · 发送报文的优先级特性可软件配置 · 记录发送 SOF 时刻的时间戳 接收 · 3 级深度的2个接收 FIFO · 14 个位宽可变的过滤器组-由整个 CAN 共享 · 标识符列表 · FIFO 溢出处理方式可配置 · 记录接收 SOF 时刻的时间戳 可支持时间触发通信模式 · 禁止自动重传模式 · 16 位自由运行定时器 · 定时器分辨率可配置 · 可在最后 2 个数据字节发送时间戳 管理 · 中断可屏蔽

汽车can总线协议

汽车can总线协议 篇一:史上最全can总线协议规则 一、CAN总线简介 CAN是控制器局域网络(Controller Area Network,CAN)的简称,是由研发和生产汽车电子产品著称的德国BOSCH 公司开发了的,并最终成为国际标准(ISO11898)。是国际上应用最广泛的现场总线之一。在建立之初,CAN总线就定位于汽车内部的现场总线,具有传输速度快、可靠性高、灵活性强等优点。上世纪90年代CAN总线开始在汽车电子行业内逐步推广,目前已成为汽车电子行业首选的通信协议,并且在医疗设备、工业生产、楼宇设施、交通运输等领域中取得了广泛的应用。 二、CAN总线技术及其规范 2.1性能特点 (1) 数据通信没有主从之分,任意一个节点可以向任何其他(一个或多个)节点发起数据通信,通信方式灵活,且无需站地址等节点信息; (2) CAN网络上的节点信息分成不停的优先级,可满足不同的实时要求,高优先级节点信息最快可在134μs内得到传输;

(3) 采用非破坏性总线仲裁技术,当多个节点同时向总线发送信息时,优先级较低的节点会主动退出发送,而高优先级的节点可不受影响的继续发送数据,从而大大节省了总线冲突仲裁时间。尤其是在网络负载很重的情况下也不会出现网络瘫痪的情况; (3) 通信距离最远可达10KM(速率低于5Kbps)速率可达到1Mbps(通信距离小于40M); (4) 通信的硬件接口简单,通信线少,传输介质可以是双绞线,同轴电缆或光缆。CAN总线适用于大数据量短距离通信或者长距离小数据量,实时性要求比较高,多主多从或者各个节点平等的现场中使用。 (5) 采用短帧结构,传输时间短,受干扰概率低,每帧信息都有CRC校验及其他检验措施,数据出错率极低; (6) 节点在严重错误的情况下具有自动关闭输出的功能,以使总线上其他节点的操作不受影响。 (7) CAN总线使用两根信号线上的差分电压传递信号,显性电平可以覆盖隐形电平。 2.2技术规范 2.2.1CAN的分层结构 图1 CAN的分层结构 逻辑链路控制子层(LLC)的功能:为数据传送和远程数据请求提供服务,确认由LLC子层接收的报文实际上已被

CAN总线协议

CAN总线协议 依据国际标准化组织/开放系统互连(International Standardi-zation Organization/Open SystemInterconnection,ISO/OSI)参考模型,CAN的ISO/OSI参考模型的层结构如图7-6所示。下面对CAN协议的媒体访问控制子层的一些概念和特征做如下说明: (1)报文(Message) 总线上的报文以不同报文格式发送,但长度受到限制。当总线空闲时,任何一个网络上的节点都可以发送报文。 (2)信息路由(Information Routing) 在CAN中,节点不使用任何关于系统配置的报文,比如站地址,由接收节点根据报文本身特征判断是否接收这帧信息。因此系统扩展时,不用对应用层以及任何节点的软件和硬件作改变,可以直接在CAN中增加节点。 (3)标识符(Identifier) 要传送的报文有特征标识符(是数据帧和远程帧的一个域),它给出的不是目标节点地址,而是这个报文本身的特征。信息以广播方式在网络上发送,所有节点都可以接收到。节点通过标识符判定是否接收这帧信息。 (4)数据一致性应确保报文在CAN里同时被所有节点接收或同时不接收,这是配合错误处理和再同步功能实现的。 (5)位传输速率不同的CAN系统速度不同,但在一个给定的系统里,位传输速率是唯一的,并且是固定的。 (6)优先权由发送数据的报文中的标识符决定报文占用总线的优先权。标识符越小,优先权越高。 (7)远程数据请求(Remote Data Request) 通过发送远程帧,需要数据的节点请求另一节点发送相应的数据。回应节点传送的数据帧与请求数据的远程帧由相同的标识符命名。 (8)仲裁(Arbitration) 只要总线空闲,任何节点都可以向总线发送报文。如果有两个或两个以上的节点同时发送报文,就会引起总线访问碰撞。通过使用标识符的逐位仲裁可以解决这个碰撞。仲裁的机制确保了报文和时间均不损失。当具有相同标识符的数据帧和远程帧同时发送时,数据帧优先于远程帧。在仲裁期间,每一个发送器都对发送位的电平与被监控的总线电平进行比较。如果电平相同,则这个单元可以继续发送,如果发送的是“隐性”电平而监视到的是“显性”电平,那么这个单元就失去了仲裁,必须退出发送状态。 (9)总线状态总线有“显性”和“隐性”两个状态,“显性”对应逻辑“0”,“隐性”对应逻辑“1”。“显性”状态和“隐性”状态与为“显性”状态,所以两个节点同时分别发送“0”和“1”时,总线上呈现“0”。CAN总线采用二进制不归零(NRZ)编码方式,所以总线上不是“0”,就是“1”。但是CAN协议并没有具体定义这两种状态的具体实现方式,如图7-7所示。 10)故障界定(Confinement) CAN节点能区分瞬时扰动引起的故障和永久性故障。故障节点会被关闭。 (11)应答接收节点对正确接收的报文给出应答,对不一致报文进行标记。

15.22、 CAN总线回环实验

CAN总线回环实验 这一节我们将向大家介绍STM32的CAN总线的基本使用。有了STM32,CAN总线将变得简单,俗话说“百闻不如一见”,应当再加上“百见不如一试”。在本小节,我们初始化CAN总线,分别测试轮询模式和中断模式下的CAN总线环回,并通过神舟IV号的LED和串口等指示CAN环回的数据传送结果。本节分为如下几个部分: 1 CAN总线回环实验的意义与作用 2 实验原理 3 软件设计 4 硬件设计 5 下载与验证 6 实验现象 z意义与作用 什么是CAN总线? CAN,全称“Controller Area Network”,即控制器局域网,是国际上应用最广泛的工业级现场总线之一。它是一种具有国际标准而且性能价格比又较高的现场总线,当今自动控制领域的发展中能发挥重要的作用。最初CAN被设计作为汽车环境中的微控制器通讯,在车载各电子控制装置ECU之间交换信息,形成汽车电子控制网络。比如:发动机管理系统、变速箱控制器、仪表装备、电子主干系统中,均嵌入CAN控制装置。 CAN控制器局部网是BOSCH公司为现代汽车应用领先推出的一种多主机局部网,由于其卓越性能现已广泛应用于工业自动化、多种控制设备、交通工具、医疗仪器以及建筑、环境控制等众多部门。在北美和西欧,CAN总线协议已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线,并且拥有以CAN为底层协议专为大型货车和重工机械车辆设计的J1939协议。近年来,其所具有的高可靠性和良好的错误检测能力受到重视,被广泛应用于汽车计算机控制系统和环境温度恶劣、电磁辐射强和振动大的工业环境。控制器局部网将在我国迅速普及推广。 由于CAN为愈来愈多不同领域采用和推广,导致要求各种应用领域通信报文的标准化。为此,1991年9月 PHILIPS SEMICONDUCTORS制订并发布了 CAN技术规范(VERSION 2.0)。该技术规范包括A和B两部分。2.0A给出了曾在CAN技术规范版本1.2中定义的CAN报文格式,而2.0B给出了标准的和扩展的两种报文格式。此后,1993年11月ISO正式颁布了道路交通运载工具--数字信息交换--高速通信控制器局部网(CAN)国际标准(ISO11898),为控制器局部网标准化、规范化推广铺平了道路。 CAN总线特点 CAN总线是一种串行数据通信协议,它是一种多主总线,通信介质可以是双绞线、同轴电缆或光导纤维。通信速率可达1MBPS。CAN总线通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余检验、优先级判别等项工作。 CAN协议的一个最大特点是废除了传统的站地址编码,而代之以对通信数据块进行编码。采用这种方法的优点可使网络内的节点个数在理论上不受限制,数据块的标识码可由

CAN总线的特点及J1939协议通信原理、内容和应用

CAN总线的特点及J1939协议通信原理、内 容和应用 众多国际知名汽车公司早在20世纪80年代就积极致力于汽车网络技术的研究及应用。迄今已有多种网络标准,如专门用于货车和客车上的SAE的J1939、德国大众的ABUS、博世的CAN、美国商用机器的AutoCAN、ISO的VAN、马自达的PALMNET等。 在我国的轿车中已基本具有电子控制和网络功能,排放和其他指标达到了一定的要求。但货车和客车在这方面却远未能满足排放法规的要求。计划到2006年,北京地区的货车和客车的排放要满足欧Ⅲ标准。因此,为了满足日益严格的排放法规,载货车和客车中也必须引入计算机及控制技术。采用控制器局域网和国际公认标准协议J1939来搭建网络,并完成数据传输,以实现汽车内部电子单元的网络化是一种迫切的需要也是必然的发展趋势。 1 CAN总线特点及其发展 控制器局域网络(CAN)是德国Robert bosch公司在20世纪80年代初为汽车业开发的一种串行数据通信总线。CAN是一种很高保密性,有效支持分布式控制或实时控制的串行通信网络。CAN的应用范围遍及从高速网络到低成本底多线路网络。在自动化电子领域、发动机控制部件、传感器、抗滑系统等应用中,CAN的位速率可高达1Mbps。同时,它可以廉价地用于交通运载工具电气系统中,如灯光聚束、电气窗口等,可以替代所需要的硬件连接。它采用线性总线结构,每个子系统对总线有相同的权利,即为多主工作方式。CAN网络上任意一个节点可在任何时候向网络上的其他节点发送信息而不分主从。网络上的节点可分为不通优先级,满足不同的实时要求。采用非破坏性总线裁决技术,当两个节点(即子系统)同时向网络上传递信息时,优先级低的停止数据发送,而优先级高的节点可不受影响地继续传送数据。具有点对点、一点对多点及全局广播接收传送数据的功能。 随着CAN在各种领域的应用和推广,对其通信格式的标准化提出了要求。1991年9月Philips Semiconductors制定并发布了CAN技术规范(Versio 2.0)。该技术包括A和B两部分。2.OA给出了CAN报文标准格式,而2.OB给出了标准的和扩展的两种格式。1993年11月ISO颁布了道路交通运输工具-数据信息交换-高速通信局域网(CAN)国际标准ISO11898,为控制局域网的标准化和规范化铺平了道路。美国的汽车工程学会SAE于2000年提出的J1939,成为货车和客车中控制器局域网的通用标准。 2.J1939协议通信原理及内容 (1)J1939与CAN J1939是一种支持闭环控制的在多个ECU之间高速通信的网络协议冈。主要运用于载货车和客车上。它是以CAN2.0为网络核心。表1介绍了CAN2.0的标准和扩展格式,及J1939协议所定义的格式。表2则给出了J1939年的一个协议报文单元的具体格式。可以看出,J1939标识符包括:PRIORTY(优先权位);R(保留位);DP(数据页位);PDU FORMAAT(协议数据单元);PDU SPECIFIC(扩展单元)和SOURCE ADDRESS(源地址)。而报文单元还包括64位的数据场。

接口实验报告

接口实验课程结课报告 学号、专业:控制工程 1508202024 姓名:** 报告题目:基于STM32的实时时钟设计 指导教师:潘明 所属学院:电子工程与自动化学院 成绩评定 教师签名 桂林电子科技大学研究生院 2016年6月4日

摘要 本设计以STM32F103芯片为控制核心,利用其内部的RTC设计了一个实时时钟。本系统主要由以下几个部分组成:微处理器,实时时钟模块,显示模块,调节模块。其中MCU 采用STM32F103芯片,实时时钟采用RTC实时时钟,显示模块为4.3寸的TFTLCD显示屏,采用独立按键调节。另外整个系统是在系统软件控制下工作的,能实现年、月、日、时、分、秒的实时显示及闹钟功能,并增加了温度显示。 关键字:STM32F103;实时时钟(RTC);TFTLCD显示屏

Abstract This design with STM32F103 chip as the control core, using its internal RTC design a real-time clock. The system is mainly composed of the following parts: microprocessor, real-time clock module, display module, control module. MCU using STM32F103 chip, real-time clock using RTC , display module use the 4.3 inch TFTLCD display screen, using independent buttons to adjust . In addition, the whole system is under the control of the system software,and accomplish the year, month, day, hour, minute, second real-time display and alarm clock function,and added to temperature display. Key words: STM32F103;real time clock(RTC); TFTLCD display screen

CAN总线自定义协议使用说明

CAN总线自定义协议使用说明 用C语言实现自己的协议 进入EV5000安装目录下builddriver目录(如图1),这个目录里面的fbserver.c文件即协议程序,用户不需要了解CAN口的细节编程,只需要按照该框架,用C语言来编写自己的协议即可。不可随意更改该文件中的函数名及头文件引用。 图1

CAN 自定义协议程序的流程图 接收线程流程 主程序流程 图2 需要用户实现的函数 void Init(CAN_PORT canport) 调用方式:仅在组态程序运行的时候执行一次 功能:用户程序的初始化 void main_process (CO_Data* d, UNS32 id) 调用方式:周期性执行,默认周期为10ms ,周期可以在void Init(CAN_PORT canport)中调用Set_Cycle 来设定,最小周期为10ms 功能:用户程序的“main 函数” void MsgDispatch (CO_Data* d, Message *m) 调用方式:每接收到一帧CAN 数据,就执行一次 功能:常用于对接收到的数据做解析,或者做出响应

供用户调用的API函数 void Set_Cycle(ms) 功能:用于设定main_process的运行周期, 参数:ms的单位为毫秒, 非零 UNS8 Send_Msg(CAN_PORT port, Message *m,UNS8 bExtended) 功能:向CAN总线发送一帧CAN数据 参数:port指向已打开CAN口的句柄,m指向Message结构体的指针,bExtended为1时按扩展帧发送,为0时按标准帧发送 void Write_LW8K (UNS32 n,UNS16 val) 功能:将val 写入LW8000+n的寄存器 参数:n偏移量、最大999,val待写入的值 UNS16 Read_LW8K (UNS32 n) 功能:读取LW8000+n的寄存器的值 参数:n偏移量、最大999 void Set_Timer(TimerCallback_t callback,TIMEVAL value, TIMEVAL period) 功能:使用定时器,经过设定的时间后,调用callback函数 参数:callback回调函数指针,value单次定时时间,period周期定时时间 void CopyToLW(UNS32 offset,const void *src, size_t n); 功能:由src所指内存区域复制n个字节到LW8000+offset所在内存区域 说明:src和LW8000+offset所在内存区域不能重叠 void CopyFromLW(UNS32 offset,const void *src, size_t n); 功能:由LW8000+offset所在内存区域复制n个字节src所指内存区域 说明:src和LW8000+offset所在内存区域不能重叠 相关的结构体定义 typedef struct { UNS32 w; /* 32 bits */ } SHORT_CAN; /** Can message structure */ typedef struct { SHORT_CAN cob_id; /* l'ID du mesg */ UNS8 rtr; /* remote transmission request. 0 if not rtr, 1 for a rtr message */

STM32的can总线实验心得

STM32的can总线实验心得 标签: 总线心得实验2010-09-01 21:08 https://www.doczj.com/doc/b015451365.html,/my/space.php?uid=2 29870&do=blog&id=37832 工作模式 bxCAN有3个主要的工作模式:初始化、正常和睡眠模式。 初始化模式 *软件通过对CAN_MCR寄存器的INRQ位置1,来请求bxCAN进入初始化模式,然后等待硬件对CAN_MSR寄存器的INAK位置1来进行确认。 *软件通过对CAN_MCR寄存器的INRQ位清0,来请求bxCAN退出初始化模式,当硬件对CAN_MSR 寄存器的INAK位清0就确认了初始化模式的退出。*当bxCAN处于初始化模式时,报文的接收和发送都被禁止,并且CANTX引脚输出隐性位(高电平)。初始化CAN控制器,软件必须设置CAN_BTR和CAN_MCR寄存器。 正常模式 在初始化完成后,软件应该让硬件进入正常模式,同步CAN总线,以便正常接收和发送报文。软件通过对INRQ位清0来请求从初始化模式进入正常模式,

然后要等待硬件对INAK位清0来确认。在跟CAN总线取得同步,即在CANRX引脚上监测到11个连续的隐性位(等效于总线空闲)后,bxCAN才能正常接收和发送报文。 过滤器初值的设置不需要在初始化模式下进行,但必须在它处在非激活状态下完成(相应的FACT 位为0)。而过滤器的位宽和模式的设置,则必须在进入正常模式之前,即初始化模式下完成。 睡眠模式(低功耗) *软件通过对CAN_MCR寄存器的SLEEP位置1,来请求进入这一模式。在该模式下,bxCAN的时钟停止了,但软件仍然可以访问邮箱寄存器。 *当bxCAN处于睡眠模式,软件想通过对CAN_MCR 寄存器的INRQ位置1,来进入初始化式,那么软件必须同时对SLEEP位清0才行。 *有2种方式可以唤醒(退出睡眠模式)bxCAN:通过软件对SLEEP位清0,或硬件检测CAN总线的活动。 工作流程 那么究竟can是怎样发送报文的呢?

can总线的通信协议

竭诚为您提供优质文档/双击可除 can总线的通信协议 篇一:停车场系统can总线通信协议 停车场系统can总线通信协议 本系统主控制器采用Rs485通信方式以同管理机(pc)通信。主控制器同分控制器之间采用can通信方式。协议按can2.0a规范设计。 标识符用法定义如下: 1定义通行的主机和从机,主控制器为主机,分控制器为从机。2通信速率为100kbps,使用can2.0a标准帧格式。 3使用id10为命令/应答标志,id10=1时该帧为命令帧,id10=0时该帧为应答帧。4id9出/入口标志,0表示入口/1表示出口;id8~id3为系统标识地址。5id2广播标识。0为广播帧,1为非广播帧。 主/从机在发送数据时必须判断总线上的数据是否为多帧数据,若是则必须等多帧数据结束才可以上传数据,而不至于使多帧数据被打断。 (1)有效数据包含命令和数据。 (2)主机/从机接收数据后,分析data1若为本机机号或

广播地址,则必须处理后续数 据,否则不予处理。主机/从机接收的有效数据应该从 数据场的第二个字节开始,共7个字节。 二)应用层协议 该层协议定义了主机和从机之间的命令和数据格式(定 义在报文的数据区,由于data1参与了滤波,所以从data2 开始),包括两部分:从机主机协议和主机从机协议。主从 机之间相互传递的有效数据的最后一个字节为有效数据中 除去命令字节和数据长度字节之外所有数据的异或和(bcc)。 1)从机主机协议:说明: 1.如果数据长度超过5个字节,则必须多帧发送。2.分机主动上传卡号时,data2=5ah。,数据长度=05h(其中卡号data4—data6为 卡号,data8为bcc。 3.数据长度为data4至data8有效数据字节数。 4.从机应答命令:在分机接收到主机的命令后,返回 一个应答帧。通知主机是否接正 确收到命令和返回执行命令的结果。此时,如果接收命令和执行命令正确,data2为主机发送的命令字节数据,如 果接收的命令不正确或执行失败,则data2为将主机发送的命令字节数据的最高位置1后的字节数据。5.从机请求命令:(1).command:5bh功能:上传开闸设置length:3

CAN总线实验指导书

车载CAN网络实验平台介绍 一、系统概述 本实验平台使用了一块51内核的MCU作为控制器,采用模块化分离式结构,板上拥有CAN控制器SJA1000,CAN收发器82C250,可以完整支持CAN2.0B协议。同时还集成了LCD显示模块,H桥模块,温度传感模块,支持iCAN协议的4017模拟量输入模块以及4050数字量输入输出模块,方便用户二次开发。 二、硬件组成 该实验系统可以完成BasicCAN通讯实验、PeliCAN通讯实验、iCAN通讯实验、电机控实验、温度检测实验。其硬件资源主要包括: ●数字量输入输出单元 ●模拟量输入单元 ●液晶显示单元 ●直流电机单元 ●温度传感单元

●8bit的数字量输入(8位拨码开关)和8bit的数字量输出(8个LED灯显示)。 2、模拟量输入单元 在该实验板上,使用了一个滑动变阻器调整电压大小,可进行AD实验。 3、液晶显示单元 ●标准1602LCD接口。 4、直流电机单元 在该实验板上,使用了6个三极管组成H桥驱动电路,控制直流电机的正反转。 5、温度传感单元 在该实验板上,使用的是一线制的串行DS18B20温度传感器。它具有以下特点: ●独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现 微处理器与DS18B20的双向通讯; ●在使用中不需要任何外围元件; ●工作电压广;

实验板程序下载说明 实验板使用了STC公司的STC89C52单片机,支持ISP下载,实验板上预留了串口ISP 下载接口。通过USB下载器对芯片编程。 USB下载器实质上是一个USB转TTL串口的单元,它实现电脑USB直接与单片机串口进行通讯,可以对支持串口程序烧些的单片机进行程序下载,如STC系列51单片机。USB下载器如图所示: 一、驱动安装 1. 解压USB-TTL客户包,首先安装驱动程序,XP 用户安装“PL-2303 WinXP Driver Installer”,Vista或Win7 用户安装“PL-2303 Vista&Win7 Driver Installer”; 双击相应的驱动程序进入安装过程,所有选项全部默认直接下一步直到安装完成; 2. 安装完驱动程序后,将USB-TTL插入电脑,电脑会提示发现新硬件,此时别动电脑,电 脑会自动安装完驱动程序并提示安装完成; 3. 此时电脑设备管理器中会出现相应的串口设备,注意记住COM号,下图例为COM4; 如果电脑自动分配超过COM9,应手动将其改回COM9 以下,手动更改右击这个串口设备在属性里面可以找到更改串口号的地方; 4. 至此驱动程序安装完成。

USB,CAN总线开发板实验指导_V2.0

YH51-III USB,RS232,485,CAN 总线学习开发板实验指导 V2.0 宇航工作室 2010/6/25

前言 我们相信会单片机的人实在太多,但是会用单片机并不等于你能做出一个实实在在的产品,也并不等于就就能找到一份好的工作,因为会单片机不仅仅是会使用单片机控制几个LED闪烁、会做一个数字钟或者控制几个继电器的通断,而且还要懂得使用几种常用的总线,会用单片机和其他设备打交道,也就是“通讯”,也是学习单片机中不可缺少的部分,对于一个刚毕业的学生来说所谓的会单片机无非就是会使用单片机的内部资源,比如会使用I/O口控制外部设备,会使用定时器、会使用串口通讯,当然也有的学生实实在在地做过了项目,也许很多人对常用的485通讯、USB通讯,及CAN BUS还没了解,或者对它们的复杂过程感到畏惧,如今本站推出的YH51-III CAN、USB、RS232、RS485多总线学习开发板为您带来了福音,他将帮助你快速地学会使用这些总线,帮你快速地开发出你的产品。

学习板介绍 YH51-III是一款CAN、USB、RS232、RS485多总线学习开发板,单片机采用大家最为熟悉的51内核单片机,支持ISP在线编程,程序可通过串口直接下载到单片机调试调试程序非常方便,CAN控制器采用了在现场总线种应用最为广泛的SJA1000,USB 芯片采用内置USB协议固件的CH372使USB通讯变得非常简单,本站的提供了CAN转232(2个节点CAN通讯)、CAN转 USB2(2个节点CAN通讯)、USB转485、USB通讯的原程序及YuhangDebugTools调试软件,使用此软件可以方便地分析总线数据,对收发的数据一目了然不必用串口助手之类的软件自行分析,此外还提供了USB通讯的上位机源代码、动态库使用户方便地开发出自己的USB通讯软件。

CAN总线实验报告

CAN总线数据通讯 [实验项目] CAN总线数据通讯 [实验目的] 基于SJA1000 CAN总线控制器和单片机系统完成CAN总线数据收发实验、掌握CAN总线波特率设置、消息ID和接收滤波器配置,完成两个以上节点的数据通讯。 [实验仪器设备] SJA1000 CAN接口模块 单片机最小系统板 串行下载线(USB转TTL电平串口线) USB转DC5.5mm供电线 杜邦线

[实验原理] 1、CAN 通信板原理图 复位电路 TJA1050T 外围电路 振荡电路 2、单片机板原理图 单片机最小系统主要包括3部分:电源,晶振和复位电路。晶振采用11.0592MHz ,复位采用RC 电路。由于单片机P0口开漏输出,需要外接10K 的上拉电阻。 3、原理简述 SJA1000通过并行总线与MCU 连接,包括地址/数据线、读/写控制信号、片选、

中断等十多根信号线。通过对单片机进行编程,来控制CAN节点的初始化、帧的发送和接受等。 初始化流程: 数据发送流程: 中断接收流程:

查询接收流程: [实验内容] (1)硬件连接 1、单片机和SJA1000的连接 使用杜邦把CAN模块的P0口连接到单片机开发板的P0扩展口上;把ALE,WR,RD,INT0,CS,KEY分别对应连接到单片机的ALE,P3.6,P3.7,P3.2,P2.0和P2.5上;把5V和GND分别对应接到单片机的电源接口上。 2、SJA1000节点间的连接 将两个SJA1000节点的CAN_H,CAN_L对应连接,即高接高,低接低,即可完成通信线路的连接。 3、单片机与下载器的连接 按如下图所示的接线方式连接下载器(即USB转TTL电平串口)和51单片机系统板。其中5V、3.3V电源线不接,只连接GND并交叉连接RX和TX,即TX接单片机的P3.0,RX接单片机的P3.1。可三根采用杜邦线将下载器的三个引脚接至51系统板的排插相应引脚上。

相关主题
文本预览
相关文档 最新文档