当前位置: 首页 > news >正文

CAN总线位时序的介绍

CAN控制器根据两根线上的电位差来判断总线电平。总线电平分为显性电平和隐性电平,二者必居其一。发送方通过使总线电平发生变化,将消息发送给接收方。

显性电平对应逻辑 0,CAN_H 和 CAN_L 之差为 2.5V 左右。而隐性电平对应逻辑 1,CAN_H 和 CAN_L 之差为0V。隐形电平具有包容的意味,只有所有的单元都输出隐性电平,总线上才为隐性电平(显性电平比隐性电平更强)。

CAN总线是采用NRZ(Non-Return to Zero)方法进行通讯的,这种通信有一种不好的地方,就是各个位的开头或者结尾都没有附加同步信号。CAN总线在长距离运输中,由于发送单元和接收单元存在的时钟频率误差及传输路径上的相位延迟等,都会引起同步偏差。

这就导致信息传输不稳定,信号质量有问题。所以发送单元和接受单元都采用了一些通讯同步的方法来使二者电平传输能达到同步。

同步有两种方式,一种是硬件同步,一种是再同步。在解释同步之前,先介绍下位时序。

位时序--由发送单元在非同步的情况下发送的每秒钟的位数称为位速率。一个位可分为 4 段。

  • 同步段(SS)

    传播时间段(PTS)

    相位缓冲段 1(PBS1)

    相位缓冲段 2(PBS2)

这些段又由可称为 Time Quantum(以下称为 Tq)的最小时间单位构成。

1 位分为 4 个段,每个段又由若干个 Tq 构成,这称为位时序。

1 位由多少个 Tq 构成、每个段又由多少个 Tq 构成等,可以任意设定位时序。通过设定位时序,多个单元可同时采样,也可任意设定采样点。各段的作用和Tq 数如下图:

相关文章:

  • OpenMMlab AI实战营第四期培训
  • MySQL——性能调优
  • [蓝桥杯 2020 省 B1] 整除序列
  • 如何在十几秒内高效实现几十万条数据的快速插入
  • TestNG @Test注释属性- threadPoolSize属性
  • 自适应哈希索引
  • python网络爬虫教程笔记(1)
  • 【组合递归】【StringBuilder】Leetcode 17. 电话号码的字母组合
  • Android开发技术总结,附项目源码
  • 【Golang】介绍
  • 微服务中的Feign:优雅实现远程调用的秘密武器(一)
  • 麒麟KYLINSOS服务器操作系统SP3安装
  • Java8的Stream执行机制
  • 前端面试练习24.3.5
  • FPGA-VGA成像原理与时序
  • [译] React v16.8: 含有Hooks的版本
  • ES6, React, Redux, Webpack写的一个爬 GitHub 的网页
  • IndexedDB
  • java 多线程基础, 我觉得还是有必要看看的
  • oschina
  • 阿里云ubuntu14.04 Nginx反向代理Nodejs
  • 精益 React 学习指南 (Lean React)- 1.5 React 与 DOM
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 理解 C# 泛型接口中的协变与逆变(抗变)
  • 力扣(LeetCode)56
  • 聊聊directory traversal attack
  • 每天10道Java面试题,跟我走,offer有!
  • 容器化应用: 在阿里云搭建多节点 Openshift 集群
  • 小而合理的前端理论:rscss和rsjs
  • 如何在 Intellij IDEA 更高效地将应用部署到容器服务 Kubernetes ...
  • ###项目技术发展史
  • #QT(TCP网络编程-服务端)
  • $.extend({},旧的,新的);合并对象,后面的覆盖前面的
  • (Java数据结构)ArrayList
  • (动手学习深度学习)第13章 计算机视觉---图像增广与微调
  • (附源码)spring boot儿童教育管理系统 毕业设计 281442
  • (全注解开发)学习Spring-MVC的第三天
  • (十)T检验-第一部分
  • (一)spring cloud微服务分布式云架构 - Spring Cloud简介
  • .bat批处理(八):各种形式的变量%0、%i、%%i、var、%var%、!var!的含义和区别
  • .naturalWidth 和naturalHeight属性,
  • .NET 8 编写 LiteDB vs SQLite 数据库 CRUD 接口性能测试(准备篇)
  • .NET Core MongoDB数据仓储和工作单元模式封装
  • .Net Core/.Net6/.Net8 ,启动配置/Program.cs 配置
  • .Net IOC框架入门之一 Unity
  • .NET6 开发一个检查某些状态持续多长时间的类
  • .netcore 如何获取系统中所有session_如何把百度推广中获取的线索(基木鱼,电话,百度商桥等)同步到企业微信或者企业CRM等企业营销系统中...
  • @reference注解_Dubbo配置参考手册之dubbo:reference
  • [28期] lamp兄弟连28期学员手册,请大家务必看一下
  • [AIGC] Java 和 Kotlin 的区别
  • [Ariticle] 厚黑之道 一 小狐狸听故事
  • [BZOJ 3531][Sdoi2014]旅行(树链剖分+线段树)
  • [BZOJ4010]菜肴制作
  • [Cocoa]iOS 开发者账户,联机调试,发布应用事宜
  • [GDOUCTF 2023]<ez_ze> SSTI 过滤数字 大括号{等