前言
在Autosar模式管理系列介绍01-BswM文章中,我们对BswM基本内容进行了介绍,我们知道了BswM是根据既定的仲裁规则对来自应用层SWCs或其他底层BSW模块,同时也对BswM作用的过程及其状态机进行了介绍,本篇开始我们继续基于Vector Davinci工具对BswM开发进行介绍。
在BswM模块实际开发中,主要涉及以下四个方面:
1)通信控制,BswM会根据CANSM或LINSM或EthSM等状态使能或禁止通信通道的PduGroup及DeadlineMonitoringControl;
2) BSW模块的初始化;
3) ECU运行期间状态机的管理,BswM根据BSW及SWC反馈的状态对ECU状态进行管理;
4)其他一些用户自定义的模式管理,比如复位管理等。
1. BswM模块控制元素组成
在BswM模块中,按作用过程可分为仲裁及控制两个主要过程,其中仲裁中包括的元素有:RequestPort,Condition,Expression及Rule。
在仲裁时BswM由RequestPort组合成Expression;Experssion抽象成Rule;Rule满足会执行相应的控制操作,控制中则有Action List;而ActionList是由若干个Action或ActionList组成的。
了解上述内容后我们就能知道如需要新增一路BswM控制,其思路应该是从下往上的,