首页 > 其他分享 >AutoSAR基础_COM

AutoSAR基础_COM

时间:2023-10-07 09:22:45浏览次数:34  
标签:AutoSAR 数据 基础 PDU 总线 Driver COM 应用层

模块详解:

  • COM: 从应用层传下来数据首先就进入这里,应用层无需关心收发的数据是通过什么总线传输的,应用只需要将它传输给COM即可。这些收发的数据是由用户的DBC文件或者ARXML文件已经定义好了的(这些文件一般OEM整车厂在整车设计的时候就做出来了,里面有总线的网络拓扑图,每个传输的数据应该走什么总线都有定义,所以应用层是无需关心的,只需要优雅的将数据和COM交换即可)。同样,COM上传的数据也是很单纯的数据,里面没有这个数据是什么总线上传的这样无意义的信息,应用层关心的是这个数据的实际意义和数据大小。所以COM主要就起了一个信号接口和网关的作用
  • PDU Router: PDU——Protocol Data Unit,协议数据单元。这个模块的功能就是将COM下发的信号数据分配到相应的协议总线上去;或者将不同的协议变成同一信号上传给COM。
  • IPDU Mux: 用于解析一些特殊的协议,比如CAN FD或者用户自定义的一些协议。就是起了一个统一CAN ID,不同信号Layout的作用
  • CAN Tp: 分包数据传输与错误检测,一般来说只有在诊断的时候才会使用
  • CAN Interface: 与硬件已经无关了,与硬件相关的是下面两个Driver做的工作,这个Interface主要可以配置收发队列;组帧(FlexRay);管理时间触发总线的调度表(LIN, FlexRay)
  • CAN Driver: 就是MCAL中对主芯片上CAN模块的驱动封装
  • Trcv Driver: Trcv——Transceiver的缩写,就是收发器驱动的意思。如果是外置CAN收发器,这里就要用到Trcv Driver这个驱动,而非CAN Driver。

 

发送:

  1. 应用层Send一个数据进COM
  2. COM写信号进PDU Buffer中
  3. PDU被PDU Router立刻发送或按周期发送(每个PDU都有一个独立的ID),之后PDU Router辨认总线种类,并把PDU发向不同的下级模块
  4. Interface根据不同的通道,把报文写入不同的队列
  5. Driver根据报文的优先级立刻发送报文

 接收:

中断或者循环接收(这里假设为中断):

  1. 硬件接收报文
  2. 由Driver发出Rx中断(函数),之后通过RxIndication,数据被传递到Interface
  3. 传递到PDU Router
  4. 传递到COM(如果SWCs使用Data ReceptionTrigger,就通知RTE;否则暂存到Buffer中)
  5. 信号被RTE读取,然后应用层读取

 

标签:AutoSAR,数据,基础,PDU,总线,Driver,COM,应用层
From: https://www.cnblogs.com/hanhao970620/p/17745505.html

相关文章

  • 2023-2024-1 20231409佟伟铭 《计算机基础与程序设计》第一周学习总结
    作业信息这个作业属于哪个课程<班级的链接>(2023-2024-1-计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>(2023-2024-1计算机基础与程序设计第一周作业这个作业的目标<计算机基础与程序设计中的问题>作业正文https://www.cnblogs.com/twma......
  • 2023-2024-1学号20231407陈原《计算机基础与程序设计》第一周学习总结
    这个作业属于哪个课程2023-2024-1-计算机基础与程序设计这个作业要求是什么2023-2024-1计算机基础与程序设计第一周作业这个作业的目的是什么简单浏览《计算机概论》,提出疑问,并尝试解决问题    作业正文 https://www.cnblogs.com/CCCY12345/p/17744827.ht......
  • C基础-初始指针
    何为指针?可以通过指针找到以其为地址的内存单元。指针就是变量,只不过存放在指针的值被当做地址处理指针和指针类型根据下图我们可知不同指针类型的存储大小是一样的,并根据计算机位数决定的,64位一般是8个字节intmain(){ printf("%d\n",sizeof(char*)); printf("%d\n",sizeof(s......
  • 2023-2024-1 20231428《计算机基础与程序设计》第一周学习总结
           这个作业属于哪个课程2023-2024-1-计算机基础与程序设计            作业要求https://www.cnblogs.com/rocedu/p/9577842.html#WEEK01          这个作业的目标快速阅读教材,初步了解所学内容 ......
  • 十四天学会C++之第四天(面向对象编程基础)
    类和对象是什么?在C++中,类是一种用户定义的数据类型,它可以包含数据成员(也就是属性)和成员函数(也就是方法)。类是一种模板或蓝图,用于创建具体的对象。对象是类的实例,它是根据类的定义创建的,可以用来表示现实世界中的各种事物。对象具有类定义的属性和行为。面向对象编程思想面向对象编......
  • 2023-2024-1 学号20231315《计算机基础与程序设计》第二周学习总结
    学期:2023-2024-1学号:20231315《计算机基础与程序设计》第二周学习总结作业信息这个作业属于哪个课程2023-2024-1《计算机基础与程序设计》这个作业要求在哪里2023-2024-1《计算机基础与程序设计》这个作业的目标学习计算机科学概论第1章和《C语言程序设计》第1......
  • 网络编程基础
    网络编程InetAddress类表示IP对象的一个类publicstaticvoidmain(String[]args)throwsUnknownHostException{//获取本机的ip对象//InetAddressip=InetAddress.getLocalHost();//获取域名//System.out.println(ip.getHostName());//获取真......
  • 数据库备份和Shell基础测试及AWK(运维)
    第一题:简述一下如何用mysql命令进行备份和恢复,请以test库为例,创建一个备份,并再用此备份恢复备份备份步骤:备份test库:使用mysqldump命令备份test库,并将备份写入一个.sql文件中。命令示例:mysqldump-u用户名-p密码test>backup.sql恢复的步骤:恢复备份:使用mysql命令将备份文件中的......
  • 【HTML专栏1】语法规范、基础结构标签
    本文属于HTML/CSS专栏文章,适合WEB前端开发入门学习,详细介绍HTML/CSS如果使用,如果对你有所帮助请一键三连支持,对博主系列文章感兴趣点击下方专栏了解详细。博客主页:DuckBro博客主页系列专栏:HTML/CSS专栏关注博主,后期持续更新系列文章如果有错误感谢大家批评指出,一定及时修改感谢......
  • 深入探究数据结构与算法:构建强大编程基础
    文章目录1.为什么学习数据结构与算法?1.1提高编程技能1.2解决复杂问题1.3面试准备1.4提高代码效率2.学习资源2.1经典教材2.2在线学习平台2.3学习编程社区3.数据结构与算法的实际应用3.1排序算法3.2图算法3.3字符串匹配算法4.结论......