目录
一、配置BswM
二、配置唤醒源
三、配置ComM Users
四、配置BswM的通信控制
五、Service Mapping
首先备份上一次的工程,养成好习惯(最好还是用Git,这次最后再安利一下Git这个神器)。今天的实验异常的简单,基本都是自动配置好了,只需
要勾选上就行,但是大家最好结合前面讲解的内容,把里面的选项点开看看,稍微理解一下。如此,假如配置出错了,才不至于慌乱了手脚
一、配置BswM
1. 打开工程,接着上一次的做。首先我们使能BswM对EcuM的一些管理功能,直接勾上就行,一般来说都是要使用的(具体功能看图)
然后可以看到DaVinci会自动帮我们配置好Rules和Action等功能,大家可以点开看看其中Rules,对照着前面讲过的内容分析一下,加深对模式管
理机制的印象
2. 能勾的都勾上就行,这里是初始化一些BSW模块,像MCU这样的模块,也可以放在OS启动前去初始化
、
二、配置唤醒源
1. 一般来说导入DBC后会自动配置这个CAN的唤醒源,如果没有的话,大家需要手动配置一下,按照图中的设置新建一个即可
三、配置ComM Users
1. 再看ComM Users,这里也已经自动配置好了(自动配置到了适当的通道上),如果愿意的话,这里可以改个名字。这是个接口,也就是ComM
对应用层开放的服务接口,后面Service Mapping会用到。一般来说我们可以通过这个接口判断ComM的状态
四、配置BswM的通信控制
1. 我们一般来说会设计两个IPDU-Group,两个Group分别对应Tx和Rx,我们这里的操作就是将之激活
2. 如果报了BSWM01016的错误,说明我们需要使能一个Api函数,在Validation中选择 Set ...Api to true即可
五、Service Mapping
1. 上面的内容中,ComM已经被自动配置好了,但是我们仍然需要将之与我们的SWC连接上,这里就要用到Service Mapping了。我们准备利用自下而上的方法连上CtApMySwc上(利用10.7节的方法)
这里我们可以将SWC的Port实体改个名:PpComMUserRequest
2. 然后保存项目,打开Dev,之后在SWC的Runnable中添加Port Access(Invoke Operations),如下图所示
然后同步工程,生成代码...(当然这里还不能生成代码,其他报错的问题同样我们放到综合实验中讲解)