AUTOSAR_CanTp

一、术语&缩写

PDU    Protocol Data Uint 协议数据单元

N-PDU    Network Protocol Data Uint 网络层协议数据单元

I-PDU     Interaction Protocol Data Uint 交互层协议数据单元

       PCI         Protocol Control Information 协议控制信息

      N-SDU    Network Service Data Uint 网络服务数据单元

      FS           Flow Status 流状态er

     BS            Block Size 数据块的大小

    STmin        Separation Time Min 最小间隔时间

    SN             Sequence Number 帧序列号

    FF_DL        Frist Frame Data Length 首帧数据长度

    SF_DL        Signle Frame Data Length 单帧数据长度

 

二、简介

本文主要讲述了CANTP的网络层传输协议,以及在ISO-15765-2中是如何定义CanTp的功能的。

三、CanTp

1.介绍

CanTp是AUTOSAR通信栈中负责网络解析的模块,主要负责接收CanIf层传输的N-PDU数据解析成I-PDU数据,并发送给PDUR模块。

 

2.数据传输过程

CanTp主要是为了解决数据多帧传输的问题,由于CAN总线每次只能发送8个字节的数据,因此对于对于多帧数据,需要拆分成多个块传输。无论是单帧还是多帧传输,CanTp一共提供四种帧进行数据传输:单帧,首帧,连续帧,流控帧。

对于单帧数据传输如下:

       

对于多帧数据传输如下:

            

3.帧类型

CanTp提供四种帧类型对网络层数据进行解析。分别是单帧(Signle Frame),首帧(Frist Frame),连续帧(Consecutive Frame),流控帧(Flow Control).

1.单帧

对于未分段的数据(一个CAN报文能发送完成)CanTp提供了协议的优化实现,将数据长度嵌入在PCI字节中,单帧一般是传输不分段数据和用于建立数据传输请求。

2.首帧

首帧用于传递不能用于单帧传输的数据的第一帧数据,接收方接收到首帧后,应返回流控帧告知接收能力,同时做好接收多帧的准备。

3.连续帧

连续帧应在首帧之后发送,接收节点一旦收到连续帧,应将全部数据组装完成。

4.流控帧

流控帧的作用是调节连续帧的发送速率,流控帧应包含帧的控制信息:FS BS STmin。在收到首帧后就应返回流控帧,告知发送方当前接收状态以及接收能力。

FS(Flow Status)有三种状态:

--FC.CTS: continue to send, the authorization to continue,

--FC.WAIT: the request to continue to wait,

-- FC.OVFLW: buffer overflow, the indication that the number of bytes specified in the FirstFrame  of the segmented message exceeds the number of bytes that can be stored in the buffer of the receiver entity

BS(Block Size):发送的数据量。

STmin(Separation Time Min):多帧间的最小间隔时间。

 

4.接口调用

发送多帧接口调用:

 

接收多帧接口调用:

 

  • 5
    点赞
  • 57
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值