J1939CANTP

J1939CANTPSAEJ1939在卡车领域得到了广泛的认可,由多个文档组成,描述了从物理层到诊断层以及应用层的通信协议层。SAEJ1939-21描述了数据链路和传输层,包括两种传输协议变体:用于广播消息的BAM(广播宣布消息),以及CMDT(连接模式数据传输)用于点对点连接。该规范定义了SAEJ1939-21的传输协议如何在AUTOSAR体系结构中实现。它只描述了与AUTOSAR体系结构相关的实现部分。协议特定的细节,如精确的计时,不属于本规范的一部分。因此,为了能够实现J1939…

大家好,又见面了,我是你们的朋友全栈君。

J1939CANTP

 SAE J1939在卡车领域得到了广泛的认可,由多个文档组成,描述了从物理层到诊断层以及应用层的通信协议层。 SAE J1939-21描述了数据链路和传输层,包括两种传输协议变体:  
用于广播消息的BAM(广播宣布消息),以及  
CMDT(连接模式数据传输)用于点对点连接。

J1939CANTP

 该规范定义了SAE J1939-21的传输协议如何在AUTOSAR体系结构中实现。 它只描述了与AUTOSAR体系结构相关的实现部分。 协议特定的细节,如精确的计时,不属于本规范的一部分。 因此,为了能够实现J1939传输层模块,本规范的读者必须能够访问原始的SAE J1939-21规范文档。  

J1939CANTP

 看图可知该路径为:CANIf-J1939TP-PDUR-Com、CANIf-CANTP-PDUR-DCMJ1939CANTP

 J1939Tp的目的是分割和重组大于8字节的j1939pgn (n – sdu)。 分段报文通过CAN接口发送和接收。 

J1939CANTP

 PDU-Router (PduR)将AUTOSAR COM和DCM i – pdu部署到不同的通信协议上(例如CAN或J1939,通过传输层分段或=直接)。 运行时,pdu根据I-PDU (L-SDU或N-SDU)标识来决定I-PDU路由到哪里。 同样,CanIf使用L-SDU (I-PDU或n – pdu)标识来决定接收到的消息是否必须由一个可用的传输层模块处理,或者可以直接转发给pdu。

J1939Tp支持8字节以上的固定大小和可变大小的i – pdu (n – sdu)。不超过8字节的i – pdu在PduR和CanIf之间直接交换。  

 J1939CANTP

固定大小的n – sdu总是被J1939Tp分段,而可变大小的n – sdu只在超过8字节时进行分段。 J1939Tp直接将实际大小小于等于8bytes,且配置的最大大小大于8bytes的可变大小n – spdu转发给CanIf。 传输协议的变体(BAM或CMDT),在接收较大的N-SDU时,根据接收到的n – pdu进行选择;在发送较大的N-SDU时,根据配置和实际DA进行选择。  

J1939Tp支持处理可变SA、DA和优先级的n – pdu和n – sdu。 在这种情况下,n – pdu和n – sdu中会包含部分CAN ID的元数据(附着在负载上)。  

J1939CANTP

总之,J1939Tp提供了以下功能  : 

数据在传输方向上的分割和直接传输  
按接收方向重新组合和直接接收数据  
数据流控制  
超时监督  
在分割或重组期间检测错误  

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135632.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 数据结构–循环队列[通俗易懂]

    数据结构–循环队列[通俗易懂]文章目录顺序存储结构循环队列代码实现注意顺序存储结构所谓顺序存储结构就是用一组地址连续的存储单元依次存放从队头到队尾的元素。声明两个指针rear、front分别用来指示队尾元素的下一位置和队头元素的位置。初始化时rear=front=0,插入新的元素时尾指针加1,元素出队列时队头指针加1。不过这样做有个问题,不论是入队还是出队,队头或队尾指针都是加1,这样做有一个问题,就是元素…

    2022年6月2日
    32
  • python单例模式

    python单例模式

    2021年11月19日
    57
  • 如何求平均数众数中位数_离散系数

    如何求平均数众数中位数_离散系数平均数、中位数、众数,在分析中如何使用?01平均值的种类02平均数、中位数还是众数?03全距和数值分布01平均值的种类请检查下面的陈述:1、一个快速致富的方法就是做一名职业橄榄球员,2015年美国国家橄榄球联盟球星的平均收入是220万美元。2.、为在大学里取得好成绩,学生需要付出的努力越来越少了。根据最近一项调查,大学生每周平均花在学习上的时间是12.8小时,和20年前大学生的学习时长相比,前者大概只有后者的一半。两个例子当中都使用了“平均”这个词,但是实际上有三种不同的方法来测定平

    2025年12月15日
    3
  • 音视频编解码常用知识点

    音视频编解码常用知识点目录视频播放器原理流媒体协议封装格式(容器)编解码转码帧(Frame)帧率(Framerate)分辨率比特率(码率)采样率采样位数声道数有损压缩和无损压缩帧内压缩和帧间压缩对称编码和不对称编码音频编码声音数字化三要素音频编码标准视频编码色彩空间RGB色彩空间YUV色彩空间压缩原理熵与冗余帧内编码…

    2022年7月13日
    26
  • 【Linux学习随笔】三、shell语法-变量「建议收藏」

    【Linux学习随笔】三、shell语法-变量「建议收藏」Linux学习随笔随记,记录一些学习过程中的细节和遇到的问题,较为系统的整理自己的学习框架

    2022年7月16日
    15
  • docker项目经验_如何培育与指导部署

    docker项目经验_如何培育与指导部署每个人的前半生,都在不停地做加法。可到了后半生,我们就要学会不断地做减法。目录前置工作1、需要准备的东西2、连接云服务器安装Docker环境1、安装Docker的依赖库。2、添加DockerCE的软件源信息。3、安装DockerCE。4、启动Docker服务。准备Dockerfile并部署项目(构建新的业务镜像)1、准备nginx.conf.template、Dockerfile、dist(前端项目build后的包)2、部署项目知识点(需要…

    2022年10月19日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号