基于RH850系列芯片的AutoSAR OS讲解
文章平均质量分 94
为了帮助大家更好学习以及理解AutoSAR OS的内核以及工作原理,本专栏会从三个方向进行讲解,由浅及深的让大家更好的理解AutoSAR OS。本专栏于2024年初创建,会定期更新现计划章节以及后续计划的章节。
优惠券已抵扣
余额抵扣
还需支付
¥99.90
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
浩如烟海·灿若星辰
一名专注于分享嵌入式软件领域技术的程序猿。️
能力标签:"MCU"、"OS"、"AutoSAR"、"嵌入式软件开发"
展开
-
基于RH850系列芯片的AutoSAR OS讲解 - 专栏介绍
为了帮助大家更好学习以及理解AutoSAR OS的内核以及工作原理,本专栏会从三个方向进行讲解,由浅及深的让大家更好的理解AutoSAR OS。如专栏标题所示,博主主要是基于RH850系列的芯片上集成ETAS的AutoSAR OS来做讲解,如果是其他系列的芯片或者其他家的AutoSAR OS源码,RTA_OS的工作原理基本大同小异。本专栏于2024年初创建,会定期更新现计划章节以及后续计划的章节。原创 2024-03-03 10:23:40 · 291 阅读 · 0 评论 -
RTA_OS基础功能讲解 2.4-中断
中断提供了应用程序与现实世界中发生的事情之间的接口。例如,可以使用中断来捕捉按下的按钮、标记时间的流逝或捕捉其他刺激。当中断发生时,处理器通常会查看内存中被称为向量的预定义位置。向量通常包含相关中断处理程序的地址。包含应用程序中所有向量的内存块称为向量表。RTA-OS 支持两类中断: 1 类和 2 类。第 1 类 ISR 是绕过 RTA-OS 的普通嵌入式系统中断。因此,它们不能与操作系统交互,也禁止调用(大部分) RTA-OS API。应使用 CAT1_ISR 宏标记它们。原创 2024-04-19 23:16:47 · 4 阅读 · 0 评论 -
RH850系列芯片深度剖析 1.4-通用寄存器以及复位控制器解析
程序寄存器包括通用寄存器(r0 至 r31)和程序计数器(PC)。r0 始终保留 0。复位后通用寄存器 r1 至 r31 的值未定义。复位后PC的值就是RBASE寄存器的值。复位控制器控制影响设备复位行为的所有因素。根据重置的区域,设备有多种复位类别。每个复位类别均由一个或多个复位源触发。复位类别及其对应的复位源之间的关系如下表所示:复位类别与初始化区域的关系如下表所示:(√:复位(初始化),一:没有复位)原创 2024-03-16 17:58:14 · 25 阅读 · 0 评论 -
RH850系列芯片深度剖析 1.1-异常和中断
异常是一种特殊的事件,强制将操作从当前程序转移到另一个程序。位于给定异常的分支目的地的程序被称为“异常处理程序”。RESET异常被触发当输入一个复位信号;响应事件而从当前正在运行的程序分支到不同程序的行为称为异常。FE 级不可屏蔽中断 (FENMI):即使已生成另一个 FE 级中断 FEINT,FENMI 中断也会被确认。即使 CPU 系统寄存器 PSW.NP = 1,FENMI 中断也会被应答。无法从 FENMI 中断返回,并且在发生多个中断时禁用恢复。原创 2024-03-03 11:08:53 · 151 阅读 · 0 评论 -
RH850系列芯片深度剖析 1.2-电源架构以及工作模式
本节介绍RH850/U2A-EVA系列的电源和电源域。本节介绍了微控制器运行所需的外部电压连接和内部电压分配。电源电路具有POC(Power On Clear)电路,可安全启动。内部电路分为两个独立的电源域:常开区域(AWO)和隔离区域(ISO)。在所有操作模式和待机模式下,Always-On 区域的电源始终处于开启状态。根据待机模式的类型,可以关闭隔离区域的电源以降低整体功耗。系统逻辑和片上稳压器的电源电压 SYSVCC。电压调节器的输出电压提供给常开区域电源域中的数字电路;原创 2024-03-10 23:44:26 · 262 阅读 · 0 评论 -
RH850系列芯片深度剖析 1.3-时钟树解析
当主 OSC 稳定计数器达到预定义值时,主 OSC 被认为是稳定的,MOSC_CLKEN/MOSC_CLMAEN 信号从 0 切换到 1,以启用主 OSC 时钟 CLK_MOSC 和时钟监视器 CLMA0。系统时钟(CLK_SYS)通过 CKSC_CPUC 寄存器设置从 PLL 时钟(CLK_PLLO)和内部 OSC 时钟(CLK_IOSC)中选择,CPU 系统时钟(CLK_CPU、CLK_SBUS、CLK_HBUS、CLK_UHSB、CLK_HSB、CLK_LSB)从系统时钟(CLK_SYS)分频得来。原创 2024-03-14 00:23:36 · 7 阅读 · 0 评论 -
RTA_OS基础功能讲解 2.1-什么是AutoSAR OS
RTA-OS 是一种静态可配置、抢占式实时操作系统 (RTOS),适用于高性能、资源受限的应用程序。RTAOS 完全实现了开放标准 AUTOSAR R3.x、AUTOSAR R4.0(包括多核)和 AUTOSAR R4.1 操作系统规范,并且完全符合 OSEK/VDX 操作系统标准 2.2.3 版。高性能:内核非常小而且速度非常快。内核的内存占用及其运行时性能处于领先地位,使得 RTA-OS 特别适合大批量制造的系统,在这些系统中,必须满足对硬件成本非常严格的限制,并且任何最终产品都必须正确运行。原创 2024-03-24 21:52:44 · 14 阅读 · 1 评论 -
RTA_OS基础功能讲解 2.2-任务(上)
必须同时执行许多不同活动的系统称为并发系统。这些活动可能有一些软件部分,因此提供它们的程序必须同时执行。这些程序必须在必要时进行协作,例如,当它们需要共享数据时。实时系统中的每个并发活动都由一个任务表示。大多数应用程序代码存在于任务中。如果您有多个必须同时执行的任务,则需要提供一种允许并发的方法。实现此目的的一种方法是为每个任务配备一个单独的处理器。您可以使用并行计算机,但此解决方案对于许多应用程序来说过于昂贵。实现并发行为的一种更具成本效益的方法是在单个处理器上一次运行一个任务。原创 2024-03-25 23:01:24 · 10 阅读 · 0 评论 -
RTA_OS基础功能讲解 2.3-任务(下)
但是,在进入 ISR 时,会从堆栈指针的当前值中减去 ISR 激活的堆栈开销 (SpPreemption),以检查抢占任务或 ISR 是否超出其堆栈使用量。如果某个任务在 2 类 ISR 中激活,并且该任务的优先级高于任何当前正在运行的任务,则对于某些目标,操作系统可能需要使用比激活较低优先级任务时稍微多的堆栈。在使用扩展任务时,您可以通过仅分配足够的缓冲区空间来保存最坏情况的“等待事件堆栈”上下文,而不是任务所需的绝对最坏情况的空间,从而最大限度地减少 RTA-OS 保留的 RAM 大小。原创 2024-03-26 22:39:09 · 14 阅读 · 0 评论 -
AutoSAR系列之基础篇 4.1-BSW之WdgM
SE(Supervised Entities)是WdgM的监控单元,每一个SE可以使用不同的监控功能或者它们之间的组合,如上图所示,在一个SE中每一个监控功能都会返回一个结果,如蓝色部分所示。Alive Supervision主要被用于对周期运行的函数或者周期调度的task进行监控,周期运行或者调度也就意味着固定时间内运行的次数是固定的,Alive Supervision就是提供了一种在固定时间内监控软件运行的次数是否满足规定值的监控功能。当一直停留在OK状态时,某一个监控功能检测出异常,如果。原创 2023-03-29 22:59:53 · 38 阅读 · 0 评论 -
AutoSAR系列之基础篇 4.2-BSW之CanTp
N_SDU参数RangeMtype参数Mtype应用于识别地址信息的类型和范围包括在服务调用中的参数。N_SA用于识别发送方00-FF hexN_TA用于识别接收方00-FF hexN_TAtype目标地址寻址方式N_AE地址扩展,只有Mtype设置为Remote diagnostic时,N_AE才扩展成为地址的一部分。00-FF hexLength数据发送或接收的长度信息1-4095和上层的交互数据Parameter网络层的参数STmin, BS。原创 2023-05-21 16:29:46 · 11 阅读 · 0 评论 -
AutoSAR系列之基础篇 4.3-BSW之Dcm(一)
诊断通信管理(DCM)主要包括三个子模块:诊断会话层(Diagnostic Session Layer,DSL)、诊断服务调度(Diagnostic Service Dispatcher, DSD)、诊断服务处理(Diagnostic Service Processing, DSP)。诊断会话层:DSL子模块确定诊断数据请求和响应的数据流,监控和确保诊断请求和响应的时序,管理诊断状态(尤其是诊断会话和安全状态);原创 2024-03-23 11:56:10 · 9 阅读 · 0 评论 -
AutoSAR系列之基础篇 4.4-BSW之Dcm(二)
DSD子模块主要用于诊断服务的分配、诊断服务执行环境以及条件的判断,从DSL子模块接收诊断请求数据并识别请求的服务类型,跟踪服务请求执行的进度。DSD子模块仅处理有效诊断请求,拒绝无效请求。这是正常通信(“ping-pong”)的标准用例。服务器接收诊断请求消息。DSD子模块确保请求消息的有效性。在这个用例中,请求是有效的,响应是积极的。请求将被转发到DSP子模块中的数据处理器。当数据处理器完成所有数据处理动作后,触发DSD子模块发送响应消息。原创 2024-03-23 12:15:44 · 6 阅读 · 0 评论