目录
关键词
嵌入式、C语言、autosar
平台说明
项目 | Value |
---|---|
OS | autosar OS |
芯片厂商 | Infineon ,TC234,TLF35584 |
编程语言 | C,C++ |
编译器 | tasking |
背景
TLF35584的功能诊断和安全诊断。
一、TLF35584功能框图
二、TLF35584 功能诊断
2.1功能诊断范围
TLF35584提供了多种诊断和监控处理方式,例如在过压,欠压,过温,短地情况下的,中断,复位,下电等处理方式。
2.2 诊断分类
2.2.1固定阈值
在正常运行的条件下,预调节器都有固定上下限的阈值,不可以通过SPI更改。
2.2.2 温度监控
监控模块拥有专用的温度传感器。如果功率级温度超过温度关闭阈值,设备将进入Failsafe状态,预调节器将关闭,事件将存储在SPI状态寄存器(OTFAIL)中。因温度造成关闭的反应时间至少为1S。
2.2.3 独立的比较器
检测过压和欠压是两个独立的比较器。
2.2.4 过压和欠压检测
过压和欠压的检测处理是不同的,分别用复位和中断来处理。每个过压和欠压确认产生后都会通过SPI存储在寄存器MONSF0-3中。对于与MCU相关的输出电压(VQST、VQUC、VVCI),过电压和欠电压由硬件复位ROT。当过电压或欠电压时,ROT被拉低。对于所有与MCU无关的输出电压(VQCO、VQT1、VQT2),过电压和欠电压均由中断表示。
2.2.5 下电功能
在输出电压VQUC、VVCI、VQST、VQVR或VFB1检测到VFB5时的过电压将关闭所有调节器,以保护负载不受伤害或破坏,并将设备移动到故障安全状态。
在输出电压VQCO、VQT1和VQT2检测过电压将关闭相关的调节器,以保护负载不受伤害或破坏,并产生中断事件。
如果在输出电压下检测到的VQUC、VVCI或VQST的存在时间超过短到接地检测时间tStG,所有的调节器将关闭以保护自己和芯片不过热,并将设备移至故障安全状态。
如果在输出电压VQVR、VQCO、VQT1或VQT2下检测到的电压低于短时间接地检测时间tStG,则相关调节器将关闭,以保护自身和芯片不受过热影响,产生中断。
三、TLF35584安全诊断
3.1WDG
3.1.1WDG简介
在长开窗的时候至少触发一次有效的WDG信号,然后就可以开始正常的喂狗。
在开窗的时候触发一个下降沿表示一个有效的喂狗信号。当触发一个有效的喂狗信号后,立即进入关窗。关窗时间为固定的,设定后不能被触发信号更改。
一次错误的喂狗触发会让错误喂狗计数寄存器计数加2,一次正确的喂狗触发会让喂狗错误计数寄存器计数减1.当喂狗错误计数寄存器的数值超过阈值的时候,则导致喂狗重启,报出喂狗错误。
3.1.2喂狗触发流程图
3.1.3 WDG诊断步骤
1.确定设备运行在Normal状态。
2.确定SS1 SS2输出为高。
3.设置喂狗错误计数阈值为3以上。
4.停止喂狗或者触发错误的喂狗信号。
5.读取喂狗错误计数寄存器,查看数值是否增加2.
6.重新触发有效的喂狗信号。
7.读取喂狗错误技术寄存器,查看数值是否减1.
3.2 ERR
3.2.1 ERR简介
ERR信号为MCU发出,用于监控程序执行状态。如果检测到ERR信号周期变化不符合预期,且超过可恢复时间,则会触发ROT复位状态。
3.2.2 ERR触发流程
3.2.3ERR诊断流程
1. 确保设备运行在Normal状态下。
2.SS1 SS2 输出为高。
3.关闭ERR触发或者触发错误的ERR信号。
4.在等待恢复时间后,设备会进入INIT状态。
5.读取现在设备的状态,确定在INIT状态,SS1 SS2 为低。
3.3 ABIST
Analog Built In Self Test (ABIST) 在逻辑上模拟生成各类故障,实际输出值不变。用于自检自身诊断是否失效。通过设置寄存器来产生相应的模拟故障并且开始ABIST测试。