ds1307引脚图及功能_ds1337各引脚功能

ds1307引脚图及功能_ds1337各引脚功能CAN通讯之位定时与同步以下文章来源于汽车电子与软件,作者糊涂振欢迎我的:阿宝1990,每天给你汽车干货,我们始于车,但不止于车。人生没有最优解,我们可以有多种活法,拒绝自我设限。加入本知识星球可以拓展您的圈层,打破您的认知边

CAN通讯之位定时与同步
  以下文章来源于汽车电子与软件,作者糊涂振

  欢迎我的:阿宝1990,每天给你汽车干货,我们始于车,但不止于车。

  人生没有最优解,我们可以有多种活法,拒绝自我设限。加入本知识星球可以拓展您的圈层,打破您的认知边界,链接到4W+的汽车赛道“局内人”,交换职场信息,打破职场信息差,遇见同行伙伴,共同探索技术交流和职业发展。ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  位定时与同步

  由前面文章可知,每一帧数据(即一个完整的数据帧)有很多位组成,当发送方发送一帧数据到总线时,接收方怎么准确接收到这帧数据呢?先需要了解下位时间的基本概念,再在此基础上,针对传输延迟等问题,采用同步方法处理。

  1. 位时间

  位时间就是指一个(二进制)位在总线传输所需要的时间,即:位时间就是位速率的倒数。如图1所示:一个位分为4段,这些段又由称为Time Quantum(以下称为 Tq)的最小时间单位构成。1位分为4个段,每个段又由若干个Tq构成,这称为位时序。ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  图1 位时间1位由多少个Tq构成,每个段又由多少个Tq构成等,可以任意设定位时序。通过设定位时序,多个节点可同时采样,也可任意设定采样点。也就是说图2中各个节点都可以通过不同的配置可能获得不同的位速率和采样精度,后面通过实例来讲解。ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  图2关于各段的作用和可配置Tq范围如下图:ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  图3 各段的定义信息,引自[2]所谓采样点是读取总线电平,并将读到的电平作为位值的点,位置在PBS1结束处。ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  图4 采样点的设定,引自[2]CAN协议的通信方法为NRZ(Non-Return to Zero)方式,各个位的开头或者结尾都没有附加同步信号。发送单元以与位时序同步的方式开始发送数据。另外,接收单元根据总线上电平的变化进行同步并进行接收工作。但是,发送单元和接收单元存在的时钟频率误差及传输路径上的(电缆/驱动器等)相位延迟会引起同步偏差,因此接收单元通过硬件同步或者再同步的方法调整时序进行接收。

  2. 硬同步

  硬同步是指在总线空闲状态,接收节点检测出帧起始位(SOF)时,会调整当前位的同步段(SS)与发送节点的帧起始位SS段一样,调整宽度不限。如下图5。ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  图5 SOF位的硬同步,来源[1]

  3. 再同步

  再同步是指接收节点检测出除SOF位以外的其他位时进行的同步调整。再同步会通过加长PBS1段,或缩短PBS2段来调整同步,以保证采样点的准确。这里加长或缩短(即跳转)操作涉及到一个概念-同步跳转宽度(SJW)是指PBS1和PBS2再同步时允许跳转的最大宽度,其必须满足以下2个条件:SJW必须小于PBS1和PBS2的最小值;SJW最大值不能超过4。

  下面看下再同步的两种情况:情况1:PBS1段加长(发的晚,收的早)ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  图6 PBS1段加长的再同步,引自[1]

  情况2:PBS2段缩短(发的早,收的晚)ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  图7 PBS2段缩短的再同步,引自[1]

  4. 调整同步的规则

  硬件同步和再同步遵从如下规则。(1)1 个位中只进行一次同步调整。(2)只有当上次采样点的总线值和边沿后的总线值不同时,该边沿才能用于调整同步。(3)在总线空闲且存在隐性电平到显性电平的边沿时,则一定要进行硬件同步。(4)在总线非空闲时检测到的隐性电平到显性电平的边沿如果满足条件(1)和(2),将进行再同步。但还要满足下面条件。(5)发送方观测到自身输出的显性电平有延迟时不进行再同步。(6)发送方在帧起始到仲裁段有多个单元同时发送的情况下,对延迟边沿不进行再同步。

  5. 位时间应用实例

  根据Infineon芯片手册提供的位时间寄存器信息,如下图8所示。下面讲解下如何配置位时间的寄存器以实现位速率和采样点的要求。其实配置的逻辑是根据目标位速率和采样点按已定义的方法去计算位时间寄存器的配置内容。ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  图8 位时间寄存器,引自[3]假设有这样一条需求 :要求CAN通讯的位速率为500KBaud,采样点为50%。(注:由于引用材料问题,time quantum在上文用Tq表示,下文用tq表示,两者意义一样)5.1 计算Infineon芯片手册提供的CAN总线位时间标准格式定义如下图9,后面根据该定义进行求解。ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  图9 CAN总线位时间标准假设:晶振时钟周期频率为40MHz,转换为时间表示则为T=1/40MHz=25ns (即芯片运行的最小时间单位为25ns),名义位时间(Nominal Bit Time, NBT)为16 (即一个位有16个tq,time quantum)。因为要设置的位速率为500KBaud,换算时间表示则为1/500KBaud =2000ns,即传输一个位的时间要2000ns。那意味着16个tq就等于2000ns,即tq=125ns。根据芯片手册,有定义:ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  这里,

  就是晶振时钟周期时间,从上面可知为25ns。BRP为位速率分频值(Baud Rate Prescaler),该值可配置。由上述定义可得:tq/T=125ns/25ns=5,因为BRP只能为整数,这时只能取DIV8=0,BRP=4。又有NBT=16,采样点取在50%处,结合图9和上面的公式计算:50% = Tseg2 / NBT= [(TSEG2+1)tq]/16*tq = (TSEG2+1)/16Tseg1= NBT-Tseg2-Tsync = 7tq即可得:TSEG2 = 7, TSEG1=6。再根据下式计算SJW, 这里直接假设TSJW=3*tq能保证下式两个不等式成立(不在此处展开Tprope的讨论),那么SJW=2。ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  综上有:DIV8=0, BRP=4,TSEG1=6,TSEG2=7,SJW=2。如有必要,最后利用下式验算最大相对误差:ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  5.2 寄存器配置

  根据上节的计算结果进行位时间寄存器的配置,配置如下图10。这样就成功设置了CAN通讯的位速率为500KBaud,采样点设置在50%处。ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  图10 位时间寄存器配置

  6. 补充:传输延迟时间tPTS

  ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  图11 传输延迟时间示意,引自[1]CAN报文在CAN总线上的传输时,物理延迟包含两个部分:在CAN-BUS上传输造成的延迟在节点上传输造成延迟

  按照CAN通信协议的规定,补偿给传播延迟的时间长度要至少等于实际实际传播延迟时长的2倍,即:tPTS≥2×tdel=2×(tdel+tBus)注意:在CAN总线通信系统中是以时间量子Tq来度量时间的,所以如果延迟补偿时间tPTS = 3.1Tq,那么这个时候要取:tPTS = 4Tq。以上这些就是传输延迟时间的补充。

  总结到这,就基本涵盖了CAN通讯的基础知识,这里对本系列这几篇文章作个回顾,如下所示:ds1307引脚图及功能_ds1337各引脚功能ds1307引脚图及功能_ds1337各引脚功能

  了解或掌握这些知识后,我相信在CAN通讯软件开发的过程中或多或少会有所帮助。因为从原理,硬件(物理层)对事物有所理解,建立了这样的基石后,才能更深刻地更全面地探索更高级的内容。就以这样一种承上启下的方式,在下篇文章让我们开始探索基于AUTOSAR架构的CAN通讯软件实现。

激活谷谷主为您准备了激活教程,为节约您的时间请移步至置顶文章:https://sigusoft.com/99576.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/92408.html

(0)
上一篇 2024年 5月 30日
下一篇 2024年 5月 30日

相关推荐

  • html滚动条怎么设置_html中滚动条怎么设置

    html滚动条怎么设置_html中滚动条怎么设置html滚动条怎么设置html滚动条设置在网页的开发中,我们经常会使用到滚动条来让用户浏览页面内容。滚动条的样式和行为可以通过CSS来进行自定义。本文将介绍如何在HTML中设置滚动条,以及如何对滚动条进

    激活谷笔记 2024年 5月 30日
  • RubyMine激活2024.1.2(2024 pycharm2024.1详细安装指南)

    RubyMine激活2024.1.2(2024 pycharm2024.1详细安装指南)

    2024年 6月 6日
  • spicy怎么读?_辣英语spicy怎么读

    spicy怎么读?_辣英语spicy怎么读spicy是什么意思,spicy怎么读,spicy翻译为:辛辣的;加有香料的,提示:点击例句中的单词,就可以看到词义解释Even in the pantheon of sichuan cuisine

    激活谷笔记 2024年 5月 22日
  • anaconda安装最后一步不动_anaconda安装时间长正常吗

    anaconda安装最后一步不动_anaconda安装时间长正常吗《用Python学大学数学》 第一章:介绍第一章:初步1.1 数据科学概述数据科学,也被称为数据驱动科学,是一个跨学科的领域,研究从各种形式的数据中提取知识或洞见的科学方法、过程和系统,无论是结构化的

    2024年 5月 8日
  • 哈夫曼编码怎么求平均码长度和宽度_哈夫曼编码怎么求平均码长度和宽度的公式

    哈夫曼编码怎么求平均码长度和宽度_哈夫曼编码怎么求平均码长度和宽度的公式Untitled Document利用哈夫曼树进行操作码编码的方法,又称为最小概率合并法。对于上面这个例子,具体的编码方法是:首先,把所有7条指令按照操作码在程序中出现的概率值,自左向右从排列好,每条指令是一各结点;然后,选取两个概率最小的结点合并成一个概率值是

    2024年 5月 20日
  • 冯诺依曼计算机的5大部件不包含供电部件_冯诺依曼计算机的五大部件不包含供电部件

    冯诺依曼计算机的5大部件不包含供电部件_冯诺依曼计算机的五大部件不包含供电部件常识积累:计算机基础知识常识积累:计算机基础知识计算机发展1.第一台计算机-ENIAC,1946 年,美国研制的世界上第一台计算机,开辟了计算机技术的新纪元。2.计算机之父:冯·诺依曼参与 ENIAC 研究,提出计算机的二进位制,五大组成部分,程序控制。3.计算机发展阶

    激活谷笔记 2024年 5月 31日
  • matlab 位数_matlab位数增加

    matlab 位数_matlab位数增加matlab图像标记&四周添加坐标轴作者:过冷水,仿真秀平台作者CAE工程师如何提高仿真实力,冲击高薪,戳此了解详情前几天听了平台讲师算法工匠的 Matlab线上训练营直播课,老师在讲关于绘图的方面的知识,老师的讲课方式对于基础小白还是很友好的,过冷水在日常工作中也经常用Matl

    2024年 5月 30日
  • github代理域名_域名绑定github需要备案吗

    github代理域名_域名绑定github需要备案吗github如何绑定自己的域名(无须备案)现在常用的在阿里云购买的域名或者在腾讯云购买的域名。 下面以腾讯云购买的域名为列子详细介绍一下如何用github绑定自己域名 本文前提是你已经搭建好了博客,已经可以通过类似:http

    2024年 5月 11日
  • matlab自动调整坐标轴_matlab调整坐标轴位置

    matlab自动调整坐标轴_matlab调整坐标轴位置matlab作图怎样改变坐标轴的位置一、背景介绍对于数据可视化和图形分析来说,合理设置坐标轴的位置是十分重要的。Matlab作为一种强大的数据分析工具,通过调整坐标轴的位置可以更好地展示数据特征和趋势。本文将详细介绍如何在Matlab作图中改变坐标轴的位置。二、调整X轴位置1.

    激活谷笔记 2024年 5月 26日
  • zotero有中文版吗_zotero解决中文参考文献问题

    zotero有中文版吗_zotero解决中文参考文献问题免费又好用的参考文献管理软件zotero该怎么使用?可以同时支持中文和英文吗?超级有用!超级实用!超级超级好用!如果你想从一个学渣小白,变成一个文献大神,看这篇回答就够了。 对于研究生而言,文献阅读以及学术写作几乎是生活日常。那么,一款方便、快捷、高效的文献

    2024年 5月 10日
  • ds1302zn_ds1302zn+时钟芯片工作原理

    ds1302zn_ds1302zn+时钟芯片工作原理江协单片机笔记-10-2 DS1302时钟&可调时钟一、BCD码BCD码(Binary Coded Decimal‎),用4位二进制数来表示1位十进制数例:0001 0011表示13,1000 0101表示85,0001 1010不合法在十六进制中的体现:0x13表示13,0x85

    2024年 5月 21日
  • IDEA激活2024.1.2(idea2023创建javaweb(2024新手教程))

    IDEA激活2024.1.2(idea2023创建javaweb(2024新手教程))

    激活谷笔记 2024年 6月 6日
关注微信