自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 AUTOSAR中NvM模块简介

存储器在AUTOSAR架构中是不可缺少的一部分,其内部既是源码存放的空间,也有程序运行时使用的空间。目前存储器类型主要有两种,分别是EEPROM和FLASH。这两种存储器各有优劣,并且在AUTOSAR中由不同的驱动程序驱动。存储器在AUTOSAR中包含以下模块:NvM:提供存储管理服务MemIf:NvM访问不同模块的抽象层Ea:基于Eep的Nv Block管理Fee:基于Flash的Nv Block管理Eep:内部或外部的Eep驱动程序Fls:内部或外部的Flash驱动程序N

2021-11-22 16:03:53 5271

原创 AUTOSAR中WDG的作用及实现原理(二)

看门狗(WDG)的作用是提供安全功能以确保软件按计划执行,并且CPU不会陷入无限循环或执行意外的代码。如果Wdg模块在一定时间内未被刷新,它将复位CPU。一、在WdgM模块里,SE(Supervision Entity:监督实体)是执行功能的最小单位,其位于SWC中,监督软件组件的运行状态。每个SE的组成都包括CP(Check Point),CP相当于在程序中设置的检查点,无论哪种判断逻辑,都需要它的存在。SE模块在SWC中放置CP,通过调用已放置的这些CP,就可以实现判断并进行复位。判断程序是否需

2021-11-16 17:02:08 2686

原创 AUTOSAR中WDG的作用及实现原理(一)

在AUTOSAR中,WDG模块从上到下,是由WdgM、WdgIf和Wdg Driver组成,这三部分在不同的运行层次中,却与紧密相关,共同实现功能。一、WdgIf是将WdgM和Wdg Driver联系起来的中间层,他将底层进行抽象供上层调用,同时将WdgM的控制操作传递给底层Wdg Driver。二、Wdg Driver是Wdg底层驱动,控制其运行模式,可以设置为Slow Mode、Fast Mode和OFF Mode。三、WdgM是实现WDG模块功能的核心模块,其有如下的作用:1.提供用户

2021-11-12 14:56:15 3800

原创 AUTOSAR中WDG的层次结构

一、AUTOSAR架构中的WDGWDG在AUTOSAR中,具体体现为WdgM、WdgIf、Wdg Driver三个层次。其中WdgM为Wdg的顶层,位于服务层,为用户提供API应用层的接口,WdgIf是管理多个Wdg Driver的中间抽象层。Wdg Driver为Wdg的底层硬件驱动。二、Wdg的作用1.监控代码执行次数(eg:Alive Supervision)2.监控代码执行时间(eg:Deadline Supervision)3.监控代码执行逻辑(eg:Logical Super

2021-11-09 14:56:28 1226

原创 STM32内存管理(二)

在C/C++程序中,编译的程序占用的内存分为5个区,分别为栈区、堆区、全局/静态存储区、常量存储区、代码区。而在STM32中,这些不同的区在片上的位置也是不同的,不同的功能代码刷写到不同的片区,在后续CPU调用的时候也更加的准确快捷。在STM32上程序分为以下几段:1.Text段(CodeSegment/Text Segment,代码段):通常是指用来存放程序执行代码的一块内存区域,也就是存放CPU执行的机器指令(machineinstructions)。这部分区域的大小在程序运行前就已经确定,并且

2021-11-05 09:23:04 500

原创 STM32内存管理(一)

STM32是指令和数据共用相同的地址空间,即程序存储器、数据存储器、寄存器和I/O端口在一个4GB的线性地址空间内。数据字节以小端格式存放在存储器中,一个字的最低地址字节被认为是该字的最低有效字节,而最高地址字节是最高有效字节。一、STM32存储器架构 4G的地址空间即地址编码的范围,编码就是对每一个程序存储、数据存储器、寄存器和I/O端口分配唯一的地址编码,即“编址”或“地址映射”。 存储器映射是把芯片中或芯片外的Flash、RAM、外设、BOOTBLOCK等进...

2021-11-02 15:31:05 1837

原创 C++内存管理(二)

一、内存管理的功能:1.内存空间的分配与回收:由操作系统完成主存储空间的分配管理。2.地址转换:在多道程序环境下,程序中的逻辑地址与内存中的物理地址不可能一致,因此存储管理必须提供地址变换功能,把逻辑地址转换成相应的物理地址。3.内存空间的扩充:利用虚拟内存技术或自动覆盖技术,从逻辑上扩充内存。4.地址保护:即一个程序不能访问另一个程序的地址空间。二、常见的内存错误及解决方式:1.内存分配未成功,却被使用。 内存分配存在不成功的可能,所以在使用之前需要检查指针是否为NU...

2021-10-29 14:15:15 179 1

原创 C++内存管理(一)

一、内存管理1.内存分配方式:在C++中,内存分为五个区:堆、栈、自由存储区、全局/静态存储区和常量存储区。 栈:在执行函数时。函数内部局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元被自动释放。栈内存分配运算内置于处理器的指令集中,效率很高,但可分配内存有限。 堆:由new分配的内存块,编译器不释放,由应用程序控制。一般一个new对应一个delete,如果未释放,程序结束时系统自动回收。 自由存储区:由malloc等分配的内存块,与堆相似,用...

2021-10-27 10:28:14 130

原创 AUTOSAR 基础软件层

AUTOSAR基础软件层即BSW(Basic Software)层,与应用层、运行环境层共同搭建了AUTOSAR的软件体系。三个层从上而下,层层递进,实现了从人机交互到底层硬件的联系。AUTOSAR基础软件层主要是用于提供基础软件服务,包括标准化的系统功能以及功能接口,并且由一系列的基础服务软件组成,包括系统服务、内存服务、通信服务等。一、基础软件层模块按照类型可以分为驱动模块、接口模块、处理模块以及管理器。驱动模块:包含控制和使用内部或者外部器件的功能,分为内部驱动和外部驱动。接口模块、包

2021-10-21 17:05:25 1064

原创 AUTOSAR整体概述及方法论

一、AUTOSAR整体概述AUTOSAR作为汽车软件新一代的架构,又不完全是一种软件架构,还包含了独特的方法论和软件接口。他的目标在于:1.建立独立于硬件的分层软件架构;2.为实施应用提供方法论,包括制定无缝的软件架构堆叠流程并将应用软件整合至ECU;3.制定各种车辆应用接口规范,作为应用软件整合标准,以便软件在不同车辆平台复用。二、AUTOSAR方法论1.概述AUTOSAR方法论是基于现有的软件基础内容,总结出的适合车辆软件开发的软件总体开发流程,并且体现了AUTOSAR整体的

2021-10-19 15:36:45 729

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除