CAN总线

1.CAN(controller area network)

 LAN(local area network)局域网

2.CAN等通信协议的开发,使多种LAN通过网关进行数据交换得以实现。如应用在汽车电子

3.CAN控制器通过判断两根线的电位差来判断总线电平,总线电平分为显性电平和隐性电平。发送方通过使总线电平变化,将消息发送给接受方。

4、CAN特点:

a、总线空闲时所有单元都有权发送消息,最先访问总线的单元可获得发送权(CSMA/CA方式:Carrier Sense Multiple Access / Collision Avoidance ),多单元同时访问,发送高优先级ID消息的单元可获得发送权。

b、所有消息都以固定格式发送。

c、系统柔软性:与总线相连的单元没有类似于“地址”的信息。因此在总线上增加单元时,连接在总线上的其它单元的软硬件及应用层都不需要改变。

d、同一网络的所有单元必须设定为相同的速度

e、所有单元都有检查错误功能,当某一单元检查有错时,会通告所有单元并停止当前发送,然后反复发送直到成功为止。当总线上连续错误出现,可将引起此错误的单元隔离出去。

5.错误状态种类:

  主动错误状态

  被动错误状态

  总线关闭态

6.标准OSI模型(open system interconnection)开放式系统间互联

7. OSI基本参照模型和CAN协议

数据链路层分为MAC子层和LLC子层,MAC子层是CAN协议的核心部分。数据链路层的功能是将物理层收到的信号组织成有意义的消息,并提供传送错误控制等传输控制的流程。具体地说,就是消息的帧化、仲裁、应答、错误的检测或报告。数据链路层的功能通常在CAN控制器的硬件中执行。

LLC : Logical Link Control (逻辑链路控制)

MAC : Medium Access Control (媒介访问控制)

8、CAN协议经ISO标准化后分为两种

 ISO11898:CAN的高速通信标准(125kbps~1Mbps)

 ISO11519(ISO11519-2):CAN低速通信标准(<125kbps)

对于数据链路层,两种标准定义的相同,对于物理层则不同。

时间: 2025-01-03 22:50:36

CAN总线的相关文章

I2C总线介绍及AT24C02驱动编写 笔记

中断处理程序 { 清除中断 硬件自动清除 软件清除 } CPU芯片手册相关章节 -------- I2C CPU外接设备的方式 1)GPIO简洁的方式(按键,LED) 通过设置GPIO管脚的状态来完成通信(控制) gpccon gpcpud gpcdat 2)类似于内存的接口 (DDRAM norflash nand dm9000) 从硬件上看CPU和芯片 数据线 地址先  BANK 3)协议类接口 uart I2C AT24C02    EEPROM 3,如何解决CPU和设备通信的问题 I2C

AMBA APB总线

前面分析了AHB总线协议.接下来分析APB总线协议. (一) APB总线接口: PCLK APB总线时钟. PRESETn APB总线复位.低有效. PADDR 地址总线. PSELx 从设备选择. PENABLE APB传输选通. PWRITE 高为写传输,低为读. PRDATA 读数据总线. PWDATA 写数据总线. 接口信号定义如下: 1 interface apb_slv_intf #( 2 parameter AW = 32, 3 DW = 32 4 ) ( 5 input logi

消息总线扩展之主动转发

问题简述 消息总线目前为Java编程语言提供了SDK,同时针对其他语言提供了一个称之为httpBridge的http代理.这基本可以满足大部分主流编程语言对消息总线的使用需求,但这也仅仅是对技术层面上的需求的满足.在业务层面上,尤其是面对老的业务系统的适配一直都是个难题,这篇文章谈谈面对一个在线上运行的业务系统,如何使得引入消息总线的总体成本尽可能得低. 就消息总线的两种使用方式而言,无论是SDK的方式还是httpBridge的方式,都需要往第三方系统引入对消息总线的依赖,这些依赖包括但不仅限于

事件总线框架---Otto

我们假设这样一种业务场景,现在在做一款及时聊天应用,我们在聊天页面进行收发信息,同时也要实时更新前一页面的聊天记录,这时我们该如何去实现?说说我以前的实现策略,我使用的是广播接收器BroadCastReceiver,在接收和发送消息的时候就不停去发送广播,然后在需要实时更新的地方进行接收更新.实现的思想比较简单,也不存在代码上的耦合问题,但是有个弊端.弊端就是需要去在很多地方实现BroadCastRecevier,代码虽不算冗余,但比较多,看起来很是不爽. 今天为大家介绍的Otto,就能彻底解决

存储、中断、总线及输入输出系统

存储系统的基本要求: 大容量,高速度和低价格. 访问时间: 存储器从接到访存读申请,到信息被读到数据总线上所用的时间 存储周期: 连续启动一个存储体所需的时间间隔 频宽: 每秒传输的信息位数 并行主存系统: 能并行读取多个CPU字的单体多字.多体单字或多体多字的交出存储主存系统 并行主存频宽: 主存频宽与分体数m.转移概率λ的关系 中断分类: 机器校验中断 访管中断 程序性中断 外部中断 I/O中断 重新启动中断 总线: 总线是用于互连计算机.CPU.存储器.I/O端口及外部设备.远程通信设备间

IIC总线协议

 II2C C总线的简单的概述 1.( 总线(Inter Integrated Circuit Bus Inter Integrated Circuit Bus):是 ):是Philips Philips公司 公司 推出的串行总线标准(为二线制).总线上扩展的外围器件及外设接 推出的串行总线标准(为二线制). 2.总线上扩展的外围器件及外设接 口通过总线寻址,是具备总线仲裁和高低速设备同步等功能的高性能 口通过总线寻址,是具备总线仲裁和高低速设备同步等功能的高性能 多主机总线. 3.特点:组成系

什么是数据仓库总线架构

一.总线架构 维度建模的数据仓库中,有一个概念叫Bus Architecture,中文一般翻译为“总线架构”.总线架构是Kimball的多维体系结构(MD)中的三个关键性概念之一,另两个是一致性维度(Conformed Dimension)和一致性事实(Conformed Fact). 在多维体系结构(MD) 的数据仓库架构中,主导思想是分步建立数据仓库,由数据集市组合成企业的数据仓库.但是,在建立第一个数据集市前,架构师首先要做的就是设计出在整个企业内具有统一解释的标准化的维度和事实,即一致性

linux设备驱动之platform平台总线工作原理(三)

设备为数据,驱动为加工着 1.以led-s3c24xx.c为例来分析platform设备和驱动的注册过程 其中关于led的驱动数据结构为: static struct platform_driver s3c24xx_led_driver = { .probe = s3c24xx_led_probe, .remove = s3c24xx_led_remove, .driver = { .name = "s3c24xx_led", .owner = THIS_MODULE, }, }; s

I2C总线协议学习笔记 (转载)

1.I2C协议   2条双向串行线,一条数据线SDA,一条时钟线SCL.   SDA传输数据是大端传输,每次传输8bit,即一字节.   支持多主控(multimastering),任何时间点只能有一个主控.   总线上每个设备都有自己的一个addr,共7个bit,广播地址全0.   系统中可能有多个同种芯片,为此addr分为固定部分和可编程部份,细节视芯片而定,看datasheet. 1.1 I2C位传输   数据传输:SCL为高电平时,SDA线若保持稳定,那么SDA上是在传输数据bit: 

总线接口与计算机通信(四)USB外部总线(初级认识)

USB简介 ? USB是英文Universal?Serial?BUS(通用串行总线)的缩写,是一个外部总线标准,用于规范电脑与外部设备的连接和通讯,是应用在PC领域的接口技术.USB接口支持设备的即插即用和热插拔功能. USB的电气特性 USB连接器包含四条线:2条用于电源供电(VBUS和GND),2条用于USB数据传输(D+和D-).VBUS提供5V电源,电流可达500mA.D+和D-为双向信号线,信号传输速率为12Mbps(每位83ns).D+和D-信号电平为3.3V? USB的特点? 1)