1072_AUTOSAR_SWS_BSWGeneral_学习笔记1

AUTOSAR_SWS_BSWGeneral_学习笔记1

Grey

全部学习汇总: GitHub - GreyZhang/hack_autosar: learning autosar documents, aha, very hard!

AUTOSAR_SWS_BSWGeneral_学习笔记1

摘录与批注

1072_AUTOSAR_SWS_BSWGeneral_学习笔记1

  • 源文件必须包含定义内容的声明文件,这样编译器可以检查定义与声明的一致性。

1072_AUTOSAR_SWS_BSWGeneral_学习笔记1

  • 每一个模块都有一个文件描述模块需要调度的接口以及数据结构。

1072_AUTOSAR_SWS_BSWGeneral_学习笔记1

  • 向Dem报错需要包含其头文件,头文件的名称固定了。
  • 如果模块实现了回调函数,那么源文件也应该包含声明文件。其实,这个也算是定义与声明一致性检查的一个方法。

1072_AUTOSAR_SWS_BSWGeneral_学习笔记1

  • 模块声明文件中不应该包含主函数或者说是调度函数,这个是由RTE或者SchM来调用的。

1072_AUTOSAR_SWS_BSWGeneral_学习笔记1

  • 应该要支持各个模块版本检查以避免不同版本之间的兼容性问题。

1072_AUTOSAR_SWS_BSWGeneral_学习笔记1

  • 再次提到了MISRA C,这里要求的版本是MISRA C 2004。
  • 只有技术实施合理和例外的情况下才可以不采用MISRA C规范,但是应该在代码中以注释的方式说明。
  • 相应的注释说明还给出了一个范例性的格式。

1072_AUTOSAR_SWS_BSWGeneral_学习笔记1

  • 没有初始化的模块调度函数被调用应该什么都不执行立即返回。而且不应该造成什么错误。
  • 之前接触过被人设计的软件,似乎就有这一条不满足的。

1072_AUTOSAR_SWS_BSWGeneral_学习笔记1

  • 如果ISR的执行时间过长,应该考虑使用OS的任务来实现。

1072_AUTOSAR_SWS_BSWGeneral_学习笔记1

  • AUTOSAR的数据类型定义的头文件都已经定义规范化掉了。

小结

这部分看到的大部分都是之前看过的内容,只是因为有这样的一个需要要求而在这里进行了重新整理。不过,关于一些细化到接口的要求之前是没有了解过的,这部分算是学到了一些新的知识点。

上一篇:登录认证授权(3)(mybatis+spring+springmvc)


下一篇:962_AUTOSAR_TPS_SoftwareComponentTemplate45_数据定义的属性中使用的元素1