[导读]本文主要介绍AUTOSAR架构下的WdgDriverWdgIfWdgM模块,分析模块之间的依赖关系以及运行原理以帮助快速理解。本文以MPC5746R为主控芯片,以FS6500为SBC,DaVinciConfigurator为AUTOSAR工具链。01模块架构与依赖1、模块介绍AU...
本文主要介绍AUTOSAR 架构下的WdgDriver WdgIf WdgM 模块,分析模块之间的依赖关系以及运行原理以帮助快速理解。本文以MPC5746R为主控芯片,以FS6500为SBC,DaVinci Configurator 为AUTOSAR工具链。01
模块架构与依赖
1、模块介绍AUTOSAR架构中的WDG 一共分为三个部分,Wdg Driver Wdg Interface Wdg Manager。其中Wdg Driver分为 External watchdog driver 与 Internal watch driver。其中外部驱动由SBC提供功能,内部驱动由SWT模块提供功能。MPC5746R有三个SWT(Soft Watchdog Timer),SWT0 负责CPU0,SWT1负责CPU1,SWT2可以由CPU0 与CPU1访问。Wdg Driver 提供底层喂狗与设置看门狗模式的驱动函数,由WdgIf抽象成Wdg Device。WdgM获取WdgIf的抽象数据得到底层的配置数据与驱动接口函数。WdgM一共支持三种形式的看门狗检查方式。1.AliveSpuervision 2.DeadlineSupervision 3. LogicalSupervision。AliveSpuervision提供一般的喂狗服务,即监控周期性程序是否能正常执行,保证程序处于Alive状态。DeadlineSupervision提供监督软件在两个状态之间的转换时间。LogicalSupervision提供监督软件执行顺序的正确性。根据不同的检查方式,WdgM可以抽象出不同的CheckPoint,Rte层可以通过函数WdgM_CheckpointReached()来通知WdgM程序正在正确运行。2、模块交互与依赖看门狗模块由WdgM统一管理后对外,这里只围绕WdgM模块分析与其他模块的依赖性。WdgIf模块,WdgM通过WdgIf接口更改WdgDriver的驱动模式,同时通知看门狗触发条件EcuM模块,管理WdgM的Initializing 和DeInitializing状态,在Sleep模式下出发硬件看门狗Mcu模块,在WdgM监控程序失败之后,可以通过Mcu的接口Mcu_PerformReset立即重新ECU单元Det模块,诊断开发中的错误Dem模块,WdgM 在侦测到错误之后,可以通过Dem模块触发EventSchM模块,WdgM 调用SchM模块接口WdgM_GlobalSuspendInterrupts进入临界区,WdgM_GlobalRestoreInterrupts退出临界区Rte模块,Rte通过WdgM_CheckpointReached()接口,监控SWC是否按照设计运行BswM模块,WdgM在监控Spuervised Entity失败后,可以通过BswM模块重启被监控程序OS模块,周期性调度Task通过WdgM_MainFunction()调用WdgM_UpdateTickCount()接口为WdgM提供时间戳具体框图如下:02
模块配置
1、Wdg Wdg Driver提供三种喂狗模式给WdgM管理,WdgM可以通过Wdg_SetMode接口设置看门狗运行模式WdgSettingFast 快速喂狗WdgSettingOff 关闭看门狗WdgSettingSlow 慢速喂狗Wdg External Trigger Counter :外部定时器,定时调用Cbk函数,检测喂狗条件并喂狗2、Wdg_SbcWdgGptChannelParameterRef :关联Gpt 模块,利用Cbk函数喂狗执行喂狗操作。Q :为何要用定时中断喂狗?A : 一般理解,不在定时中断函数中喂狗是为了方式在主函数异常的情况,中断服务函数还能正常执行,这样喂狗起不到真正的作用。在AUTOSAR中为何在SBC 外部看门狗采用这种方式,因为 Wdg_30_Sbc_SetTriggerCondition 函数只是负责根据配置调整看门狗喂狗的时机,然后Gpt的Cbk函数会在这个时间到达的同时执行喂狗操作。如果,MainFunction没有及时的设置看门狗触发条件,Cbk会因为提前喂狗导致看门狗出错.截取Gpt回调函数如下:3、WdgIf关联Wdg Driver驱动函数,与WdgM直接通过函数接口关联,因此WdgIf没有Lcfg文件.关联的关键函数如下4、WdgMWdgMDemEventParameterRefs :关联Dem模块,在WdgM模块出错时可以Event的方式记录下来。WdgMMode :1)WdgMAliveSupervision :激活监控模式2 ) WdgMDeadlineSupervision :截止监控模式3)WdgMLocalStatusParams :逻辑监控模式4)WdgMSupervisedEntity :监控实体WdgMWatchdog ::管理的Wdg Device,需要关联WdgIf 的Device,通过配置的WdgM_ConfigSet关联不同的Device,可以实现不同的Wdg Device关联不同的Core。1.、关联WdgIf Device2、关联Trigger 的Device3、关联Core3
源码分析
WdgIf 有两个对外接口:Std_ReturnType WdgIf_SetMode(uint8 DeviceIndex, WdgIf_ModeType WdgMode ) void WdgIf_SetTriggerCondition( uint8 DeviceIndex, uint16 Timeout )都是通过DeviceIndex 来确定所属的驱动列表,WdgM模块会通过所管理的Device数量来轮询调用接口截取一段WdgM_Init的代码说明:1、内部狗与外部狗的区别WdgM对外部狗与内部狗的管理方式相同,都是通过SetTriggerCondition的方式设置,在通过关联的Gpt模块的Ckb函数来实现喂狗。但是两者在内部实现方式不一致。内部狗通过定时器完成计数,每次触发中断都会关闭定时器,需要SetMode重新开启然后继续计数,最后在Cbk中完成喂狗。设置运行模式,开启定时器设置触发条件,写入计数值
Gpt 回调函数检测喂狗条件,并喂狗
2、CheckpointWdgM 提供了三种对SupervisedEntity的方式1. Alive 2. Deadline 3. ProgrameFlowWdgM通过接口函数WdgM_CheckpointReached 来表示SpuervisedEntityes的Checkpoint到达,函数接口的详细描述如下。Std_ReturnType WdgM_CheckpointReached( WdgM_SupervisedEntityIdType SEID, WdgM_CheckpointIdType CheckpointID ); 04
多核的WdgM管理
WdgM支持多核,每个内核互不干扰,每个Core下面都关联了单独的SupervisedEntityes, 每个Core都需要单独单独调用WdgM_MainFunction。1.获取CoreId,根据CoreId获取配置指针2. 更新WdgM节拍数 WdgM提供三种更新节拍数的方式 1. WDGM_INTERNAL_SOFTWARE_TICK , 通过MainFunction调度跟新节拍 2. WDGM_OS_COUNTER ,根据OS节拍数跟新WdgM节拍 3. WDGM_EXTERNAL_TICK ,根据接口WdgM_UpdateTickCounter更新节拍3. 更新SpuervisedEntityes的状态4. 根据Global Spuervised Entityes的状态喂狗版权声明:本文为CSDN博主「ZhouArchie」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明,已获作者转载权限。
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
在工业物联网(IIoT)场景中,边缘节点常部署于高温、强电磁干扰或机械振动的恶劣环境,软件崩溃、硬件锁死等故障频发。通过硬件看门狗与软件错误恢复机制的协同设计,可构建高可靠性的自愈系统,将平均无故障时间(MTBF)提升至...
关键字:
工业物联网
边缘计算
看门狗
在嵌入式系统的世界里,稳定性是衡量产品可靠性的核心指标。然而,电磁干扰、电源波动、软件漏洞等不可预见的因素,随时可能让系统陷入死机或程序跑飞的困境。此时,看门狗定时器(Watchdog Timer,WDT)就像一位沉默的...
关键字:
嵌入式
看门狗
上海2025年10月16日 /美通社/ -- 全球工业紧固与装配技术解决方案提供商Bossard柏中在产品组合中扩展UQD快插接头(通用快速断开连接器)及UQDB盲插版本,为数据中心液冷系统、新能源汽车高压系统以及工业自...
关键字:
SAR
数据中心
新能源汽车
OS
在嵌入式系统可靠性设计中,看门狗(Watchdog Timer,WDT)作为防止程序跑飞的核心机制,其初始化时机的选择直接影响系统抗干扰能力。本文从单片机启动过程、硬件资源分配、软件架构三个维度,系统分析看门狗初始化的最...
关键字:
单片机
看门狗
入式系统
在嵌入式系统开发中,看门狗(Watchdog Timer, WDT)是保障系统可靠性的核心组件,其初始化时机的选择直接影响系统抗干扰能力和稳定性。本文从硬件架构、软件流程、安全规范三个维度,系统分析看门狗初始化的最佳实践...
关键字:
单片机
看门狗
嵌入式系统
看门狗是实现嵌入式计算机系统运行状态监控的一种措施 , 能够有效提高系统运行可靠性 。针对HKSP6102处理器在嵌入式计算机中的应用 ,分析了通用看门狗的设计方法及其特点;最后介绍了数据处理模块的看门狗设计方法 ,基于...
关键字:
看门狗
嵌入式计算机
监控
在嵌入式系统开发中,看门狗(Watchdog Timer, WDT)是一种重要的故障检测和恢复机制。当系统因软件错误、硬件故障或外部干扰而陷入异常状态时,看门狗能够自动触发复位操作,使系统恢复到正常运行状态。本文将深入探...
关键字:
嵌入式系统
看门狗
深圳2025年2月20日 /美通社/ -- 全球紧固和装配解决方案提供商Bossard柏中在深圳成立全资子公司——柏中紧固件(广东)有限公司(以下简称"柏中广东公司")。这是继柏中紧固件(上海)有限公...
关键字:
SAR
固件
OS
智能工厂
为了保护个人信息和网络设备的安全,专家们致力于开发各种安全技术和工具。其中,路由器看门狗功能成为了网络安全领域的一大创新。
关键字:
路由器
看门狗
本文中,小编将对SAR ADC予以介绍,如果你想对它的详细情况有所认识,或者想要增进对它的了解程度,不妨请看以下内容哦。
关键字:
ADC
SAR
STM32有两个看门狗,独立看门狗和窗口看门狗。其实两者的功能是类似的,只是喂狗的限制时间不同。
关键字:
看门狗
窗口看门狗
2型炎症领域新突破 上海2023年9月22日 /美通社/ -- 赛诺菲今天宣布,达必妥®(度普利尤单抗注射液)获得中国国家药品监督管理局(NMPA)批准,用于治疗适合系统治疗的中度至重度结节性痒疹的成...
关键字:
PRIME
BSP
REPORT
SAR
(全球TMT2023年9月8日讯)9月6日,国际独立第三方检测、检验和认证机构德国莱茵TÜV大中华区(TÜV莱茵)与维沃移动通信有限公司(vivo)在东莞举行中心实验室授权仪式。 TÜV莱茵大中华区电子电气产品...
关键字:
VIVO
电磁兼容
RF
SAR
上海2023年9月4日 /美通社/ -- Bossard柏中在上海总部设立智能装配工作站, 提供现场沉浸式体验"智能工厂装配"如何提升工厂装配效率。 该模拟装配工作站由ELAM平...
关键字:
SAR
数字化
沉浸式体验
OS
上海2023年8月7日 /美通社/ -- Bossard柏中工程测试实验室引进模拟装配工作站,将测试扭矩范围由50 Nm提升至350 Nm,帮助客户验证大扭矩螺纹连接装配工艺的准确性,进一步升级“装配技术服务”...
关键字:
SAR
模拟
OS
测试
公司工业电子产品有着广阔的市场空间,应用于工业测量和信号调理的SmartAnalog系列高精度SOC芯片已正式发布,正在拓展品牌工业客户的导入。
关键字:
SAR
ADC
SmartAnalog
SAR ADC是一个非常常见的拓扑结构,这是一种在速度、分辨率和功率之间提供了很好平衡的折衷方案。SAR ADC的一个关键优势是几乎没有延迟。因此在很多应用领域都能看到使用SAR ADC。
关键字:
SAR
ADC实现电路
拓扑结构
随着医疗、消费电子和工业市场上的便携式手持仪器仪表日趋向尺寸更小、重量更轻、电池(或每次充电)续航时间更长、成本更低且通常功能更多方向发展,低功耗已经成为如今电池供电模数转换器应用的一项关键要求。
关键字:
电路设计
SAR
ADC功耗
SAR ADC是一个非常常见的拓扑结构,这是一种在速度、分辨率和功率之间提供了很好平衡的折衷方案。SAR ADC的一个关键优势是几乎没有延迟。因此在很多应用领域都能看到使用SAR ADC。
关键字:
SAR
ADC
拓扑结构
在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环。程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果。所以...
关键字:
单片机
看门狗
计算机