写在前面
IoHwAb驱动模块虽然在BSW层,但我们在设计时往往把它当成APPL层,在DEV中进行配置,而且还喜欢用Cdd复杂驱动来替代IoHwAb。
开始配置
新建SWC
打开DEV,1新建一个SWC ;2按照一定规范取一个名字;3type类型选成Cdd。
创建一个IDT
新建C/S接口
PiDoorloHwAb:
Application Errors: E_NOT_OK(Code = 1)这里也就是将返回值1改名为E_NOT_OK
Operation Prototypes: ReadChannel
Direction : Out
Type: ldtDioValue前面定义的IDT类型的数
Type- Name: Value
创建SWC实体 加入Port
创建Server Runnable
在其它SWC上添加Client接口
因为前面这个IoHwSWC设置的端口是Server,要想和其他SWC相连,所以要在这些SWC中设置Client接口:
然后在这些SWC中的Runable中添加Port Access,就是允许来调用来触发,选择invoke oprations
把IoHwSWC添加到总的CtCoApplicationSWC中
检查保存
这个时候关闭DEV,再进入Cfg里面,同步一下就可以看到刚配置好的IoHwAb SWC
写在最后
如果这个时候生成代码,就会有CtCddIoHwAb.c这个文件,里面有三个Runable空函数等着我们去填写。
参考:
AutoSAR系列讲解(实践篇)8.6-实验:配置I/Oiohwab雪云飞星的博客-CSDN博客