Communication-Stack
文章平均质量分 83
Software-Architecture_Communication-Stack
糖果Autosar
AutoSAR架构专家,分享AutoSAR学习笔记和心得体会,提供咨询和答疑。粉丝们尽量在博文评论区留言你们咨询的问题,有空我会统一回答
展开
-
COM10 - AutoSAR CanIf生成代码分析
传送门 ==>> AutoSAR实战系列300讲「糖果Autosar」总目录摘要:CanIf的配置参数的定义如下图所示,我们根据需求配置各个参数的值,然后工具通过读取各个定义参数的值,生成相应的代码。本文从代码和配置参数两个角度进行阐述。2 CanIf 模块配置参数分析2.1 CanIfPublicCfg包含模块范围的配置。用于在 CanIf 中启用 tx 缓冲。ArcCanIfPublicMaxNumberOfTxBuffers 和 ArcCanIfPublicTxBufferSize 的目的是原创 2022-06-05 01:34:44 · 1463 阅读 · 3 评论 -
COM14 - COM的模式变化引起的IPdu Handling【接收截止日期监控】
传送门 ==>> AutoSAR实战系列300讲「糖果Autosar」总目录对于只听模式 (LOM),所有 I-PDU 组的发送传输都被关闭,接收(可能只有一个 I-PDU 组)仍然处于活动状态,这个时候,要保证没有接收超时的监督(即接收期限监控)。例如,一个通道(例如 CAN 网络)上的所有 ECU 都处于只听模式,因此该通道上不再有周期性发送信号,这时候,处于只听模式下应该抑制接受监控,防止错误处理。当且仅当 I-PDU 包含在启用了接收期限监控的 I-PDU 组中时,才启用 I-PDU 的接收期限监控原创 2022-06-11 03:48:30 · 590 阅读 · 0 评论 -
【AutoSAR CAN】04 - 如何使用Davinci Configurator Pro工具配置CAN的波特率
改参数为Tx Arbitration start delay value ,可用于延迟仲裁过程的起始点,用来补偿CAN收发器及线路的传输延迟,以优化传输性能。有关详细信息,请参阅硬件手册。该参数指定采样点模式,即选择多少个采样点的数量,如果选择了每比特三个样本选项,则该点标记第三个样本的位置;我们要配置CAN的波特率,其实就是要弄明白 CAN 控制器的位时序即可,具体的理论部分和EB的配置部门可参考文章《该参数表示传播延迟有多少个时间单位Tq,即上文中的Propagation delay/PROGSEG。.原创 2022-08-19 00:29:12 · 2081 阅读 · 0 评论 -
COM11 - 如何基于Davinci工具配置CAN通信协议栈【通信基础软件模块的配置】
传送门 ==>> AutoSAR实战系列300讲「糖果Autosar」总目录导言:我们在步骤1.3 说明要解决对应工程的报错,解决报错的过程中主要是搞清楚通讯模块的一些基本理论,对自己解决报错的方法了然于胸。下面针对如何配置AutoSAR通信模块做一些简要的引导,遇到具体问题的同学请死磕AutoSAR通信理论,也可问我。预热知识点:Davinci工具中的通信模块一般包含Domain-specific配置编辑器(configuration editors),用于配置通信相关模块、ECU 总线控制器、协议数据原创 2022-06-05 23:54:48 · 2709 阅读 · 0 评论 -
COM03-提供面向信号的RTE调用接口【信号发送接收】
文章目录1 Com 信号收发接口1.1 信号的发送1.1 信号的接收1.2 代码分析1.3 如何在Davinci工具中配置1 Com 信号收发接口约定一下,上层模块:相对于Com模块的上层模块指的是下面两种,AutoSAR系统:RTE非AutoSAR系统:应用程序1.1 信号的发送上层通过调用 Com_SendSignal来更新信号的值。如果应用层模块通过Rte来发送信号值,一般要通过包含「Rte_模块名.h」,调用Rte_Write_接口_数据元素(data)来更新信号的值;在「Rt原创 2021-12-23 00:15:40 · 2905 阅读 · 0 评论 -
COM13 - COM的模式变化引起的IPdu Handling【starting/stopping of I-PDUs groups】
传送门 ==>> AutoSAR实战系列300讲「糖果Autosar」总目录摘要:AUTOSAR COM 层应能够在运行时根据需要启动和停止发送和接收一组 I-PDU。其有几种典型的应用Case:那么我们本文着重阐述一下启动和停止发送和接收一组 I-PDU的概念和方法,并附上代码分析。下图是 I-PDU Group的状态图,以下几点要记住:每个 I-PDU 具有以下状态:在 COM 层复位(通常是 ECU 复位)后,所有 I-PDU 都默认停止。即处于图中Uninit/Init状态。调用Com_Init后原创 2022-06-07 23:48:42 · 746 阅读 · 0 评论 -
COM09 -如何基于EB Tresos工具配置CAN通信协议栈实战课程
基于EB Tresos工具的通讯协议栈的配置原创 2022-06-04 19:49:07 · 2867 阅读 · 3 评论 -
COM06-Can通信协议栈架构【最高峰】
文章目录1 CAN 通信栈的功能1.1 PDU发送/接收相关功能1.2 通讯状态控制功能1.3 网络管理功能1 CAN 通信栈的功能前面的文章「COM1-AutoSAR通信协议栈架构」主要集中在PDU发送/接收相关功能,PDU层间流动及层与层之间软件调用,还没有站在最高峰去看CAN 通信栈的功能.下面我们就再爬一层,看的更高更远一些。CAN 通信栈按功能/作用可分为以下三个子功能:PDU发送/接收相关功能,具体可看「COM1-AutoSAR通信协议栈架构」通讯状态控制功能网络管理功能通过研读原创 2021-12-25 00:34:48 · 2838 阅读 · 1 评论 -
【AutoSAR CAN】03 - 硬件过滤器配置
我们可以通过配置基于硬件的接收滤波器来实现过滤接收到的报文消息,即每接收到一个 L-PDU 报文,就根据配置来过滤一下,看是否接收这个L-PDU报文;这是在硬件层级的过滤,并且是静态配置的,具体的配置参数见下文。注意:这种配置是上电初始化的阶段完成的,正常模式下禁止配置,如果想要重新配置则必须要把控制器的模式切换到STOPPED 模式下进行。......原创 2022-08-15 14:45:38 · 1262 阅读 · 2 评论 -
【AutoSAR CAN】05 - 如何使用Davinci Configurator Pro工具配置CAN硬件对象(CanHardwareObject)
如上图所示是硬件对象里我们需要关注和配置的属性,下面会具体介绍。注意在开始介绍之前,我们要强调一下,CAN 硬件对象是和具体的Can芯片控制相关的,这里我们只介绍一般性的概念。它包含可以缓存报文的一段内存缓冲区,位于CAN控制器内部,如上图的它包含配置CAN 控制器特定行为的一组特殊功能寄存器我们通过配置这组特殊功能寄存器来设置can报文的标识符CAN ID 和 can报文的长度DLC我们通过配置这组特殊功能寄存器来设置can报文的发送和接收方向(图中的Direction)原创 2022-08-20 17:06:09 · 2502 阅读 · 2 评论 -
COM01-AutoSAR CAN通信发送和接收概述【发送和接收用例分析及Sequence图】
通信软件栈包含多个模块,通信接收是通过各个模块的API接口实现的,从下至上(接收逻辑:CanDrv>CanIf->PduR->Com->Rte->SwcAppReceiver从下至上(接收逻辑:CanDrv>CanIf->PduR->Com->Rte->SwcAppReceiver。通信软件栈包含多个模块,通信发送是通过各个模块的API接口实现的,从上至下(发送逻辑)为:SwcAppSender->Rte->Com->PduR->CanIf->CanDrv。原创 2021-09-19 20:17:13 · 5156 阅读 · 0 评论 -
COM12 - AutoSAR通信软件Stack的介绍
传送门 ==>> AutoSAR入门和实战系列总目录。原创 2022-06-07 00:03:44 · 1537 阅读 · 0 评论 -
【AutoSAR CAN】01 - CAN模块的功能及提供的API
CAN模块也就是我们所谓的CAN 驱动程序。如下图所示,CAN 驱动程序【即图中的Candrv】为位于驱动层的上面的模块【如CanIf模块,及Can接口层】提供了统一的接口。原创 2022-08-14 19:03:16 · 1883 阅读 · 0 评论 -
【AutoSAR CAN】02 - CAN 标识符(CanID)长度配置
CAN 标准允许使用标准和扩展标识符。由于缺少剩余的标准 CAN ID,不同的项目可能需要使用扩展 CAN ID 和标准 CAN ID。因此CAN 驱动程序应支持标准标识符和扩展标识符。CAN 驱动程序应能够在一个 CAN 控制器上使用标准和扩展 CAN 标识符进行操作。每个硬件对象都应可针对两种标识符类型之一进行静态和单独配置。通过该 CAN 控制器发送和接收的所有 L-PDU 都应符合此配置。...原创 2022-08-14 19:29:40 · 3431 阅读 · 0 评论 -
COM02-AutoSAR通信协议栈中的协议数据单元 PDU是什么?
1协议数据单元 (PDU)概念 11.1各层的PDU之间的‘信息接力’ 11.2理解一下官方的定义: 22协议数据单元 (PDU)的设计 32.1 PDU类型定义 32.2 使用的下层【PduR】的API进行发送,PDU在参数中进行传递 42.3 使用的下层【PduR】的API进行报文接收,PDU在参数中进行传递 61协议数据单元 (PDU)概念就像人你写信给女朋友时,需要信封去传统你的爱意信息;通信过程中,需要通过其通信堆栈交换的信息实体需要PDU去承载;就像前面那篇文章「Autosar通原创 2021-11-28 16:53:07 · 7911 阅读 · 2 评论 -
COM08 -如何基于Davinci工具配置CAN通信协议栈实战课程【配置方法总述】
文章目录1 配置基础软件层的CAN 通信堆栈相关模块1 .1 把相关的 CAN 通信堆栈模块加入到环境中1.2 导入通信矩阵描述文件1.3 解决对应工程的报错,解决报错的过程中主要是搞清楚通讯模块的一些基本理论,对自己解决报错的方法了然于胸。1.4 生成代码,集成编译。除了生成代码,还会生成Bsw模块的软件描述文件,格式为arxml。2 创建应用层软件组件,及设计其Runnable3 实现Data Mapping,实现软件组件通过Can Bus实现外界的通信传送门 ==>> AutoSAR实战原创 2022-05-31 00:35:11 · 2225 阅读 · 0 评论 -
COM7-应用层发送的信号值LED_ON怎么传递到Can总线上
文章目录1 通信发送1.1 LED_ON如何发送到Can总线的实例分析1.2 通信栈发送模块的组成1.3 发送函数之间的调用1 通信发送1.1 LED_ON如何发送到Can总线的实例分析信号就是应用层要传送的消息,比如LED的亮灭状态信号;应用层SWC想把 点亮LED灯的信号通过Can总线发出去,就需要通过调用Rte_Write_IfLight_DeOnOffStatus(LED_ON)来更新系统信号值,RTE将进一步就是调用 Com_SendSignal(信号Handle, LED_ON)来更新信号原创 2021-12-26 17:09:34 · 1552 阅读 · 2 评论 -
COM04-通信发送代码Com_SendSignal分析
文章目录1 发送代码分析1.1 Com_SendSignal需求1.1 Com_SendSignal代码实现1 发送代码分析在 COM3-提供面向信号的RTE调用接口【信号发送接收】一文中,我们提到了SWC发送和接收信号使用的发送接口【Rte_Write_接口_数据元素(data)】及接口的映射【Com_SendSignal(信号Handle, (&data)); 】这一篇我们分析一下Com_SendSignal中的接口规范和接口的实现。本文涉及的几个和配置相关的知识点,大家先记住,以后慢慢剖原创 2021-12-23 23:17:25 · 3167 阅读 · 1 评论 -
COM05-通信接收代码Com_ReceiveSignal分析
文章目录1 接收代码分析1.1 Com_ReceiveSignal需求1.2 Com_ReceiveSignal代码实现1 接收代码分析在 COM3-提供面向信号的RTE调用接口【信号发送接收】一文中,我们提到了SWC发送和接收信号使用的接收接口【Rte_Read_接口_数据元素(data)】及接口的映射【Com_ReceiveSignal(信号Handle,data) 】这一篇我们分析一下Com_ReceiveSignal中的接口规范和接口的实现。本文涉及的几个和配置相关的知识点,大家先记住,以后慢原创 2021-12-23 23:52:35 · 2532 阅读 · 0 评论 -
PDUR通信接口路由03-传输协议的底层路由和周期转换
总目录链接==>>AutoSAR入门和实战系列总目录@学前问答:1.2.3.4.原创 2023-02-19 10:10:31 · 2634 阅读 · 0 评论 -
PDUR通信接口路由01-PduRDestPdu启用队列的方式
通过在 PduRDestPdu 引用 PduRQueue 容器来启用队列。通信接口路由路径支持以下队列 :通信接口队列 :FIFO behavior共享缓冲区队列: FIFO behavior单缓冲队列: Last-is-best behavior。原创 2023-02-18 15:39:13 · 874 阅读 · 0 评论 -
PDUR通信接口路由02- Pdu传输方式和可变长DLC I-PDU
如果 TP 段 (N-PDU) 上的 源网络和目标网络相同,可以使用接口层网关路由 TP (“低级”路由)的 I-PDU【If the TP segments (N-PDUs) on the source and the destination network are identical, it is possible to route TP I-PDUs using the interface layer gateway (“low-level” routing). 】。可以配置每个队列为目的地独立。原创 2023-02-18 00:27:31 · 823 阅读 · 0 评论 -
Eth09- EthCtrlConfig:以太网控制器写MAC地址到NVM中的配置
传送门 ==>> AutoSAR入门和实战系列总目录。原创 2023-01-01 16:49:52 · 674 阅读 · 0 评论 -
Eth08-EthCtrlConfig:以太网控制器的硬件操作的timeout值配置
传送门 ==>> AutoSAR入门和实战系列总目录。原创 2023-01-01 16:23:04 · 809 阅读 · 0 评论 -
Eth07- Eth以太网控制器模式代码解析
【代码】Eth07- Eth以太网控制器模式代码解析。原创 2023-01-01 14:04:12 · 318 阅读 · 0 评论 -
Eth04 - Eth分层模块架构和索引方案
传送门 ==>> AutoSAR入门和实战系列总目录。原创 2022-12-30 15:48:12 · 942 阅读 · 0 评论 -
Eth 03 -以太网驱动Eth的配置
以太网的配置,下面这张图描述了以太网的配置参数:原创 2022-12-30 13:16:07 · 1401 阅读 · 0 评论 -
Eth 01 - Eth以太网控制器驱动概述和API讲解
在CAN/CANFD、FlexRay等总线中,有控制器Controller和收发器Transceiver。类似地,在以太网总线中,有以太网控制器和以太网收发器。看似废话。但是在OSI模型中,太网控制器和以太网收发器对应术语MAC和PHY。原创 2022-12-29 21:43:54 · 1546 阅读 · 0 评论