流动的星
AutoSAR软件开发,汽车控制器开发,高级软件工程师;
展开
-
Classic AutoSAR详解系列-----总目录
一、软件架构二、文档目录分类1、系统服务类【AutoSAR】【EcuM】ECU状态管理【AutoSAR】【WdgM】WdgM安全管理模块2、存储服务类【Classic Autosar】【存储栈】FLASH结构及操作【Classic Autosar】【存储栈】MemIf及FEE功能【Classic Autosar】【存储栈】NvM的API接口分类及调用时序【Classic Autosar】【存储栈】NvM地址结构及块结构【Classic Autosar】【存储栈】N原创 2021-07-09 11:32:43 · 7928 阅读 · 0 评论 -
Python 使用xml.dom.minidom 和xml.etree.ElementTree解析ARXML文件
Python 使用xml.dom.minidom 和xml.etree.ElementTree解析ARXML文件,比较xml.dom.minidom 和xml.etree.ElementTree.原创 2022-05-29 12:56:05 · 1824 阅读 · 1 评论 -
【AutoSAR】【以太网】套接字SoAd
一、以太网通信架构及Socket Adapter在架构中的位置Socket Adapter简称为SoAd,处于TCP/IP的上层,SD、DoIP的下层;承上启下的连接作用;二、Socket 功能详述SoAd通过TCP/IP网络实现基于pdu的通信。因此,AUTOSAR i - pdu被映射到Socket连接,该连接由SoAd配置和维护。当多个I-PDU使用一个socket连接时,一个SoAd PDU头(SoAd PDU Header)就被加在每个I-PDU的前面。消息接受策略被指定来定义哪些TC原创 2022-03-14 21:31:48 · 6988 阅读 · 0 评论 -
【AutoSAR】【以太网】基于以太网的SOME/IP实现架构
基于以太网的SOME/IP实现架构原创 2022-02-26 12:10:50 · 1748 阅读 · 2 评论 -
【AutoSAR】【以太网】Eth Driver
目录一、 以太网底层架构二、 缓存处理机制1、原理2传输过程:三 、 配置描述1、General 配置2、EthCtrlConfig配置四、总结一、 以太网底层架构与交换机及其他设备的网络结构二、 缓存处理机制1、原理使用所谓的CBS算法,其工作原理是基于优先级将信息发送到专门的SW fifo中CBS算法使用以字节为单位可信度,以确保不同SW fifo之间的传输几乎公平;使用了PHY级的SW缓冲池和物理内存(HW FIFO)通常是在所谓的S原创 2022-01-09 09:22:57 · 2462 阅读 · 0 评论 -
【AutoSAR】【以太网】TCP/IP 栈详述与配置
目录一、TCP/IP栈架构二、TCP\IP栈的可扩展性三、以太网协议V4四、以太网协议 V6五、基于IP的协议六、函数调用序列图一、TCP/IP栈架构根据以上架构图,该栈主要包括:UPD\TCP\DHCP\ICMP\IPV4\IPV6\ARP;二、TCP\IP栈的可扩展性TCP\IP栈为适应不同的应用场景需求,将分为三类:配置工程里的配置项:三、以太网协议V41 IPV4Internet Protocol (IP)是T.原创 2022-01-02 12:19:02 · 4982 阅读 · 1 评论 -
Python 使用xml.etree.ElementTree 解析ARXML文件
目录一、简介二、库的导入及指向根目录三、遍历所有包节点四、变量所有SWC组件五、遍历所有P_Port端口六、遍历所有R_Port端口七、遍历所有R_Port索引八、总结一、简介前面介绍了ARXML的结构,本节讲述解析arxml文件的方法,及常用函数;使用xml.etree.ElementTree 块实现了一个简单而高效的 API,用于解析和创建 XML 数据。解析ARXML文件常用的库是:xml.dom.minidom 、xml.etree.Elemen...原创 2021-12-09 20:45:34 · 2578 阅读 · 0 评论 -
Autosar软件组件分析及ARXML文件分析
Autosar软件组件分析及ARXML文件分析原创 2021-12-05 11:27:50 · 3238 阅读 · 0 评论 -
git项目开发中常用命令(一)
1 git clone2 git branch branchname 创建分支 git branch 查看分支3 git checkout branchname4 git status 查看状态在SOMEIP文件夹里添加文件git status 查看状态,文件SOMEIP_B1_ADD.txt显示红色5 git add将该文件添加到暂存区6 git commit 提交到本地仓库...原创 2021-10-19 07:39:08 · 521 阅读 · 0 评论 -
【AutoSAR】【OS】资源管理(优先级上限协议)
资源管理是用来协调有不同优先级的多个任务对共同资源(如内存或硬件等)的并发访问。资源管理可以选择性地被扩展任务和中断服务程序并发访问。资源管理可以确保:两个任务不能同时占用同一资源; 不会发生优先级反转; 在使用这些资源时不发生死锁; 对资源的访问从不会导致等待状态。图1说明了两个任务对信号量的访问顺序。在完全抢占式调度系统里,任务 TaskI有最高优先级,低优先级任务Task4占有信号量 Sourcel。 Taskl抢占Task4并请求同一信号量。由于信号量 ...原创 2021-08-04 14:55:12 · 1145 阅读 · 0 评论 -
【AutoSAR】【RTE】RTE的生成
一、RTE的生成RTE生成包含三个阶段:(1)协议阶段(RTE Contract phase)(2)配置阶段(RTEConfig phase)。(3)生成阶段(RTE Generation phase)。在(1)定义阶段中,将软件构件和RTE交互描述信息定义为头文件,作为软件构件与RTE的契约,双方都使用相同数据结构进行编程。在此阶段,需要完成的工作是:(1)软件构件类型描述(2)构件内部行为描述(3)真实源代码或目标代码及其API(头文件)生成(4)实现语...原创 2021-07-14 09:01:16 · 2332 阅读 · 2 评论 -
【AutoSAR】【RTE】功能详述
一、RET概述RET,即运行时环境,是AUTOSAR ECU体系结构的核心组成部分。RTE是AUTOSAR虚拟功能总线(Virtual Function Bus,VFB)的接口(针对某个特定ECU)的实现,因此,它为应用程序软件组件之间的通信提供了基本的服务,同时也便于访问包含OS的基本软件组件。RTE和OS,AUTOSAR COM和其他的基础软件模块(BSW)是VFB(Virtual Functional Bus)概念的实现。RTE实现了AUTOSAR VFB的接口,从而实现了AUTOSAR软件组原创 2021-07-13 17:16:18 · 2762 阅读 · 1 评论 -
【AutoSAR】【MCAL】ADC
一、架构二功能介绍 ADC(模数转换)驱动模块主要完成将模拟信号转换为数字信号。当相关通道设置的ADC模式并启动后,硬件会自动进行转换并将转换结果进行存储,使用者读取该存储单元的内容即可。 ADC(模数转换)驱动模块主要完成将模拟信号转换为数字信号。当相关通道设置的ADC模式并启动后,硬件会自动进行转换并将转换结果进行存储,使用者读取该存储单元的内容即可。三、转换模式 ADC转换模式有以下几种:多通道连续转换模式 多通道单次转换模式 单通道连续转换模式 ...原创 2021-07-13 15:05:25 · 1815 阅读 · 0 评论 -
【AutoSAR】【MCAL】GPT模块简介
一、功能介绍GPT(通用定时器)驱动模块利用微处理器的时钟单元,为操作系统和基础软件提供精准的定时时钟功能(通常可从微秒级到毫秒级)。例如对于需要进行周期性处理的动作通常可通过定时器功能来实现。定时器一旦启动后,将持续进行计数,一旦到达所设置的定时值时将会以中断的方式予以告知。二、在autosar体系中的结构位置三、定时器类型单次性定时器(one-shot):定时时间终止时,定时器中止不再计数,若产生中断的话,也仅产生一次中断。one shot mode timer周期性定.原创 2021-07-13 13:12:40 · 6195 阅读 · 0 评论 -
【AutoSAR】【MCAL】CAN
一、架构二、概述CAN(控制器局域网)驱动模块主要负责提供发送和接收CAN报文的服务,为上层的CAN接口模块提供硬件抽象接口,并且调用CANIF模块的回调函数来告知相关事件。控制CAN控制器的行为和状态,比如开启或关闭中断,设置控制器的模式等。三、CAN的硬件单元 一个CAN模块提供对CAN硬件单元的访问,CAN硬件单元是由几个CAN控制器组成。 对于不同类型的CAN硬件单元,应该实现不同的CAN模块。 如果在一个ECU上需要实现多个CAN硬件单元,那么各个...原创 2021-07-13 13:07:56 · 1870 阅读 · 0 评论 -
【AutoSAR】【MCAL】PWM
目录一、架构二、功能介绍三、PWM信号的相关概念四、软硬件关系图五、配置项六、原理图七、PWM通道类别八、功能接口函数九、EB配置项一、架构二、功能介绍PWM(脉宽调制)驱动模块是利用微处理器的数字输出来对模拟电路进行控制的一种技术,广泛应用于测量、通信以及功率控制与变换的许多领域中。PWM模块的功能是在一定的频率范围中创建可变的脉宽输出信号,并且可独立于其它的输出信号。三、PWM信号的相关概念 下图为PWM周期,占空比和极性间...原创 2021-07-13 10:55:05 · 1935 阅读 · 0 评论 -
【AutoSAR】【MCAL】ICU输入扑捉单元
一、架构二、功能介绍 ICU(输入捕捉单元)驱动模块是利用该单元对信号进行解调、脉冲计数、测量频率和占空比,产生简单的中断同时也产生唤醒中断的一个模块。三、ICU模块的测量模式ICU模块有以下几种测量模式:信号周期测量:对周期性信号测量其周期的长度。 信号占空比测量:对脉宽信号测量其有效电平的宽度。 边沿计数:计数脉宽信号的个数。 对非周期信号,获取边沿时钟戳四、ICU模块的触发模式 ICU模块有以下几种触发模式上升沿触发:当信号从低电...原创 2021-07-13 10:46:35 · 3610 阅读 · 1 评论 -
【AutoSAR】【MCAL】Dio
目录一、结构二、功能介绍三、通道组四、功能接口函数五、EB配置一、结构二、功能介绍DIO(数字输入输出)驱动模块主要是对端口(Port),通道(Channel)和通道组(ChannelGroup)进行读写操作。通道(Channel):指引脚,他们一般都具有复用功能; 端口(Port):含有相同类复用功能的引脚组成一个端口(Port) 通道组:端口(Port)中的部分或全部通道(Channel)又可组成一个通道组(ChannelGroup)。 三、...原创 2021-07-12 17:02:29 · 1341 阅读 · 0 评论 -
【AutoSAR】【MCAL】Port
一、Port在架构中的位置二、Port模块功能介绍PORT(端口)驱动模块主要负责定义微处理器所有端口的功能,这其中包括端口方向的设置和端口模式的设置。由于微处理器的端口通常具有复用功能,即对于某个端口可在其上可实现多种功能,因此必须事先确定其具体的用途,如:ADC,SPI,DIO等。三、Port模块提供的功能函数void Port_Init(const Port_ConfigType* ConfigPtr) void Port_SetPinDirection(P..原创 2021-07-12 16:52:12 · 1663 阅读 · 0 评论 -
【AutoSAR】【MCAL】MCU模块
一、MCU功能MCU(微控制器单元)驱动模块主要负责对微控制器的时钟控制,电源管理,复位,唤醒等进行控制。这些功能通常涉及整个MCU。The MCU driver提供如下服务:初始化MCU的时钟及外设时钟等; 初始化RAM区; MCU的功耗控制; MCU的复位控制; 获取复位原因.模块提供的服务接口功能三、配置1、时钟配置英飞凌TC27x系列,提供EXCEL配置工具,可直接输入需要的频率,直接计算出各个配置项的配置值,例如时钟分频值等。...原创 2021-07-12 13:14:03 · 2737 阅读 · 0 评论 -
【AutoSAR】【MCAL】架构总述
一、MCAL主要包括如下几个部分:微控制器驱动(microcontroller Drivers) 存储器驱动(Memory Drivers) 通信驱动(Communication Drivers) IO驱动(I/O Drivers) 加密驱动(Crypto Drivers) 无线通信部分(Wireless Communication Drivers)1、微控制器驱动 微控制器驱动部分包含三个模块,它们为:GPT(通用定时器)模块 WDT(看门狗)模块 MCU...原创 2021-07-12 09:52:14 · 2587 阅读 · 0 评论 -
【AutoSAR】【Architecture】软件分层架构
一、AutoSAR体系架构1、AUTOSAR体系结构在最高抽象级别上区分了三个软件层:应用程序层、运行时环境层和运行在MCU上的基础软件层。2、 在上述基础上进一步分层,从底向上包括MCAL(Microcontroller Abstraction Layer,微处理器抽层),ECU抽象层(ECU Abstraction Layer),RTE(Runtime Enviroment,运行时环境),和应用软件层(Application Layer)。前三层统称为BSW(Basic Software,基原创 2021-07-12 09:36:03 · 1034 阅读 · 0 评论 -
【AutoSAR】【FIM】功能禁止管理详解
目录一、概述二、FIM关键字三、FIM 功能四、FIM 与其他模块交互关系五、禁止掩码与EventId 的对应关系六、汇总事件七、DEM 与FIM 之间的交互八、FIM 禁止功能算法九、FIM功能原理 十、FIM应用场景十一、序列图一、概述功能禁止管理器(FIM)的主要功能是为SW-C和BSW功能提供控制机制。功能禁止管理器允许查询软件构件及其中的功能性的准许/禁止状态。FiM关注的是sw - c中的功能,然而,它们并不局限于sw - c。BS...原创 2021-07-11 16:02:39 · 1433 阅读 · 1 评论 -
【AutoSAR】【BswM】基础软件模块管理
目录一、该模块在AutoSAR体系里的位置二、功能概述三、举例,模式处理过程四、项目配置中的逻辑分析一、该模块在AutoSAR体系里的位置二、功能概述该模块模块主要定义一系列规则,如果满足一定的条件,则执行一系列规定动作;例如通信控制,ECU状态控制;模块初始化等等;三、举例,模式处理过程1模式请求者SW-C通过模式A的发送端口请求模式A。RTE分发请求,BswM通过它的接收端口接收它。2 BswM在主函数运行时,根据其规则进行评估。3对应的动作列表...原创 2021-07-11 16:38:29 · 1211 阅读 · 0 评论 -
【AutoSAR】【ComM】通信管理
目录一、ComM在Autosar架构里的位置二、ComM详述三、ComM与其他模块的关系四、ComM状态机1、三种状态机转化关系2、在各个状态下的通信能力如下五、通信抑制功能六、ComM与其他模块调用关系七、ConM提供的服务八、通信流程九、总结一、ComM在Autosar架构里的位置二、ComM详述作为AUTOSAR服务层的一个模块,ComM是一个封装了底层通信服务控制的资源管理者。 ComM模块控制基础软件模块和通信相关的部分,...原创 2021-07-11 10:13:09 · 2151 阅读 · 0 评论 -
【AutoSAR】【XCP】在线标定
一、什么是标定标定:就是修改ECU中的标定变量(参数)使得汽车性能达到最优的过程。二、在线标定过程标定过程:通过找出工作页中某个变量的最优值,然后保存到FLASH中的过程;三、相关概念参考页: Flash上的一块地址,比如0xAF007000, len = 15K;参考页的属性在标定过程是可读不可写;工作页:RAM上的一块地址,比如0x80001000, len = 15K;工作页的属性是可读可写激活页:选择激活的一个页,比如激活工作页 或者激活参考页。...原创 2021-07-10 17:33:52 · 2219 阅读 · 0 评论 -
【AutoSAR】【XCP】功能详解(二)
目录一、XCP报文格式1、CTO报文格式2、DTO报文格式二、XCP包ID分类三、XCP命令一、XCP报文格式1、CTO报文格式2、DTO报文格式二、XCP包ID分类三、XCP命令STD组 CAL组 PAG组 DAQ组 PGM组...原创 2021-07-10 14:43:01 · 2018 阅读 · 0 评论 -
【AutoSAR】【XCP】功能详解(一)
一、概述XCP标定软件协议栈是针对用户使用第三方标定工具(如: INCA或CANape)对汽车电子电控单元进行参数标定, 为其提供数据标定、 数据上传及相关通信服务的软件模块。 同时, 还可以为用户提供基于 XCP 协议的 Flash 刷写功能。二、参考文件[1] ASAM_XCP_Part1-Overview_V1-1-0.pdf[2] ASAM_XCP_Part2-Protocol-Layer-Specification_V1-1-0.pdf[3] ASAM_XCP_...原创 2021-07-10 14:25:03 · 4121 阅读 · 0 评论 -
【AutoSAR】【Bootloader】一致性检查Consistency
目录一、一致性检查分类二、检查时机:三、一致性检查原理一、一致性检查分类主要包括:有效一致性检查 版本一致性检查二、检查时机:主要包括:下载编程完成后检查 上电跳转APP前检查三、一致性检查原理分析下载的hex文件,读取固定地址的数据,与设定值大小比较是否相等...原创 2021-07-09 11:01:55 · 1154 阅读 · 0 评论 -
【AutoSAR】【EcuM】ECU状态管理
目录一、EcuM架构位置二、EcuM功能介绍三、EcuM状态机1.STARTUP阶段2、UP状态3、shutdown状态4、休眠状态5、OFF状态一、EcuM架构位置EcuM模块位于系统服务层,如下图红色方框里;二、EcuM功能介绍EcuM本身它管理着ECU在STARTUP, RUN,OFF,SLEEP,WAKEUP状态之间的相互切换。责所有BSW的初始化以及去初始化 和ComM协作来管理网络状态,在需要时关闭ECU 管理所有的唤醒事件,并且在需要时原创 2021-07-08 21:28:58 · 2999 阅读 · 2 评论 -
【AutoSAR】【WdgM】WdgM安全管理模块
一、WdgM在AutoSAR里的整体架构WdgM是在autosar架构里位于服务层的一个基础软件模块;主要监督程序的执行;主要包括三个模块:看门狗管理器(WdgM) 看门狗接口(WdgIf) 看门狗驱动(Wdg)二、三种监督机制Alive监控-------主要监控周期性软件程序的时间 DeadLine监控-------主要监控非周期软件程序 程序流监控-------主要监控程序流执行的正确性三、基于全局状态的检测流程受监管实体(SE):Supervised Ent原创 2021-07-07 10:46:57 · 2457 阅读 · 0 评论 -
【AutoSAR】【BootLoader】AutoSAR Bootloader 原理与流程
目录一、HIS规范二、BOOTLOADER软件架构三、烧写流程一、HIS规范国外整车厂意识到在线刷新ECU的重要性,由奥迪公司、宝马公司、戴姆勒公司、保时捷公司、大众公司成立一个委员会,名为HIS委员会,专门负责帮助汽车制造商掌握微处理器控制单元软件和质量保证领域的原理和方法; HIS Bootloader的主要功能是通过标准的通信接口对ECU进行再编程 。 HIS Bootloader的软件设计基于AUTOSAR体系架构、ISO14229、ISO15765-2、HI...原创 2021-07-05 14:50:57 · 4419 阅读 · 0 评论 -
【AutoSAR】【OS】操作系统
现有的AUTOSAR OS是由在汽车行业广泛使用的OSEK/VDX操作系统基础上发展而来,AUTOSAR多核 OS也是在现有AUTOSAR OS基础上衍生出来;AUTOSAR中的多核操作系统不是一个虚拟ECU的概念,相反,它应该被理解为一个操作系统,共享相同的配置和大部分代码,但是操作在不同的内核数据结构上。为了减少内存占用,所有核心都应该使用相同的代码基础。有时花更多的ROM/Flash是有益的,例如使用本地的和“双”部分的代码,以获得更快的ROM/Flash访问。二、调度上图优..原创 2021-07-03 10:46:58 · 1548 阅读 · 0 评论 -
【AutoSAR】【BootLoader】升级流程
原创 2021-06-28 21:04:41 · 1578 阅读 · 2 评论 -
【AutoSAR】【DEM】DEM实践总结(三)
4去抖 老化原创 2021-06-28 20:52:24 · 1344 阅读 · 0 评论 -
【AutoSAR】【DEM】DEM实践总结(二)
3 DTC问题①DTC码结构一下参阅玉柴发动机项目吉利的企业标准:故障管理11.1 DTC 定义范围DTC 格式定义请参考 ISO 15031-6, 故障类型和故障子类型定义, 请参考 ISO15031-6 附录 D 的定义。 下表根据本项目 ECU 情况,对整车厂定义部分的 DTC 码进行了范围分配,各 ECU 根据给定的范围将自定义 DTC 定义在相应范围内。表 97: DTC 码范围分配 System ECU DTC n原创 2021-06-28 20:51:19 · 1706 阅读 · 0 评论 -
【AutoSAR】【DEM】DEM实践总结(一)
1两个接口函数:Dem_ReportErrorStatus(Dem_EventIdType EventId,Dem_EventStatusType EventStatus)Dem_SetEventStatus( Dem_EventIdType EventId, Dem_EventStatusType EventStatus )注意:①四个参数类型:#defin...原创 2021-06-28 20:48:46 · 2937 阅读 · 0 评论 -
【AutoSAR】【DCM】诊断栈数据量及状态机
一、数据流二、状态机原创 2021-06-28 20:40:13 · 1064 阅读 · 0 评论 -
【AutoSAR】【开发工具】ISOLAR-A/B踩过的“坑”
一、ISOLAR注意点1、DBC文件整理,一定要检测好每个Message及singal的属性定义;像大小端、周期、初始值、回调函数、比例因子、偏移量等等;后期如果因报文属性错误更改DBC再次导入带来重复劳动量;2、DBC导入时,不同类型的报文对应不同的模块,例如DCM\COM\XCP等3、split功能,DBC导入后生产COM栈生成一个ARXML,split出来CANIF CANTP COM CAN;防止DBC修改后再次导入覆盖上次手动添加内容,再次导入DBC可以通过Merge功能合并到分割出来的模块上;4原创 2021-06-28 20:35:37 · 6789 阅读 · 0 评论 -
【AutoSAR】【COM】功能介绍
一、主要功能•COM初始化、反初始化•通信模式•信号无效机制•I-PDU处理•门限监控•复杂类型数据-信号组•支持长数据类型•支持动态长度信号•信号数据的大小端转换•信号过滤•信号网关...原创 2021-06-21 11:16:06 · 1149 阅读 · 0 评论