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 数如下图:

相关推荐
元亓亓亓16 分钟前
LeetCode热题100--230. 二叉搜索树中第 K 小的元素--中等
算法·leetcode·职场和发展
草莓熊Lotso17 分钟前
《算法闯关指南:优选算法-双指针》--01移动零,02复写零
c语言·c++·经验分享·算法·leetcode
焜昱错眩..1 小时前
代码随想录算法训练营第三十九天|62.不同路径 63.不同路径ll
算法
焦耳加热5 小时前
阿德莱德大学Nat. Commun.:盐模板策略实现废弃塑料到单原子催化剂的高值转化,推动环境与能源催化应用
人工智能·算法·机器学习·能源·材料工程
wan5555cn5 小时前
多张图片生成视频模型技术深度解析
人工智能·笔记·深度学习·算法·音视频
u6065 小时前
常用排序算法核心知识点梳理
算法·排序
程序员不迷路7 小时前
湖仓一体学习-数据架构演进路线
架构
蒋星熠8 小时前
Flutter跨平台工程实践与原理透视:从渲染引擎到高质产物
开发语言·python·算法·flutter·设计模式·性能优化·硬件工程
舒一笑8 小时前
同步框架与底层消费机制解决方案梳理
后端·程序员
stormsha8 小时前
飞算JavaAI炫技赛电商系统商品管理模块的架构设计与实现
java·架构·鸿蒙系统