本文主要是介绍[autosar] TLF35584 (SBC)的喂狗设计和实现(一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
- 关键词
- 平台说明
- 背景
- 技术难点(关注点)
- WDG简述
- 1.Window Watchdog
- 2. Functional Watchdog
- 实现过程
- 一、配置相关
- 1. TOM配置,选择由其他驱动配置,映射到GPT配置。
- 2.分频配置
- 3.触发时间,持续时间及翻转计数(重点)
- 二、窗口狗调度
- 1.触发WDI
- 2.最大持续时间设置和重新赋值
- 3. Gpt触发
- 小结
关键词
嵌入式、C语言、autosar
平台说明
项目 | Value |
---|---|
OS | autosar OS |
芯片厂商 | Infineon ,TC234,TLF35584 |
编程语言 | C,C++ |
编译器 | tasking |
背景
基于TC234和TLF35584实现的窗口狗功能。
技术难点(关注点)
开关窗时间的计算。
WDG简述
TLF35584集成了两种狗:Window Watchdog And Functional Watchdog
作用:监控芯片是否正常运行,否则reset或者其他安全操作。
通讯方式:SPI。
1.Window Watchdog
周期触发,异常时错误计数增加,超过阈值则做出超时响应。窗口长度和阈值等参数可通过SPI配置。
2. Functional Watchdog
问答方式,超时时间内从标准表格中生成答案应答。问题由4位组成,期望答案由4个响应组成,每个响应8位。这四个响应应在心跳周期结束之前发送。
实现过程
一、配置相关
1. TOM配置,选择由其他驱动配置,映射到GPT配置。
2.分频配置
这里选用分频
3.触发时间,持续时间及翻转计数(重点)
A:喂狗持续时间。A = CD 取整
B:GPT中断触发时间,即喂狗半周期时间。B = 500C*D。 时间 = 1/(100M/256(8分频))*B。
C:喂狗周期时间
D:喂狗周期百分比。
E:最大持续时间。翻转最大次数 = E/A 取整。
A B C D E在下图中标注。
二、窗口狗调度
1.触发WDI
配置相应中断用于触发。
2.最大持续时间设置和重新赋值
WdgIf_SetTriggerCondition
3. Gpt触发
FUNC(void, WDG_30_SBC_CODE) Wdg_30_Sbc_LL_StartTriggerTimer(WdgIf_ModeType Mode)
小结
这里仅介绍了窗口狗,功能狗后续更新。
这篇关于[autosar] TLF35584 (SBC)的喂狗设计和实现(一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!