UCC587x-Q1上电误报机理及初始化注意事项

描述

  CC587x-Q1集成了丰富的诊断保护机制,使其非常适用于新能源汽车电驱动应用,帮助系统达成ASIL-D的功能安全等级。另一方面,由于其内置丰富且灵活的寄存器,在上电初始化时,需要注意寄存器的配置,否则容易引起某些故障的误报。本文将讲述上电误报SC_FAULT以及ADC_FAULT的使用场景,机理以及规避方法。

  SC_FAULT

  配置场景

  UCC587x-Q1 具有多达6个ADC输入引脚,其中, AI2, AI4, AI6

可以作为功率开关管短路故障的检测引脚(默认)。而短路触发对应的电压阈值较低(默认1V,可配置最高1.25V)。因此,如果把AI2,AI4以及AI6中的其中一路用于采样最高电压范围较宽的物理量(比如UCC587x-Q1本身的VCC2或者高压母线电压经过分压以后的值),且没有注意软件配置的时序,则非常容易误触发SC_FAULT,进而引发非预期的输出。

  保护机制

  误报机理

  然而,汽车电驱动的使用场景通常要求采样多路电压范围较宽的物理量,比如前面提到的UCC587x-Q1本身的VCC2或者高压母线电压。另一方面,为提高采样的分辨率,不能把分压比例调得太小。因此,在无法避免用AI2,4,6中其中一路采样范围较宽的物理量时,需要了解SC_FAULT触发的条件,以避免SC_FAULT 误触发的情况。

  SC_FAULT触发的需要同时满足如下条件:

  Aix(2, 4, or 6) pin上的电压需要高于CFG6[SCTH] 配置的值,且持续CFG6[SC_BLK] 以上

  Input(IN+ or ASC) 为高电平

  驱动输出为高电平

  CFG4[SCP_DIS] = 0x0

  DOUTCFG[AIxOCSC_EN] = 0x1

  规避方法

  前述的5个触发条件需要同时满足才能触发SC_FAULT故障,而前三个条件和硬件配置直接相关。往往考虑实际问题后,无法改动。因此,我们可以通过调整软件配置,来规避SC_FAULT在上电初始化阶段的误触发,但需要注意软件配置的时序。

  如前所述,第一个条件很容易满足,当软件按照默认值配置(满足条件4和5)并进入active模式开始输出后(满足条件2和3),这5个条件都能满足而报出SC_FAULT故障。这种情况下,我们可以通过在初始化阶段配置相应通道的DOUTCFG[AIxOCSC_EN]= 0x0来轻松规避。

  但是以上场景无法保证万无一失。为了节省IO口资源以及简化副边电源配置,往往VREF使用内部供电模式,而ASCpin会直接上拉到芯片副边自带的VREF,ASC_EN则经过一个MOSFET上拉到VREF,而MOSFET的导通则通过safety

MCU来控制。如果在上电初始化过程中,由于特定故障触发ASC,则有可能误报SC_FAULT故障。因此,这里需要关注VREF的使能(CFG8[VREF_SEL])与DOUTCFG[AIxOCSC_EN]的配置时序,务必在VREF使能前(CFG[VREF_SEL]=0x0),禁用SCP(DOUTCFG[AIxOCSC_EN]=0x0),避免在上电配置过程中出现同时满足以上5个条件的情况,进而避免了SCP_FAULT的误报。

  ADC_FAULT

  配置场景

  UCC587x-Q1 的VREF是内部ADC的参考供电,VREF可通过CFG8[VREF_SEL] 来调整供电来源是内部或者外部。而VREF 的默认配置是外部模式。当VREF电压超过阈值,发生欠压或者过压故障时,STATUS5[ADC_FAULT]会报错,但默认屏蔽该故障,即故障不会通过nFLT1报出,也不会影响驱动输出。出于成本考虑,客户设计可能会选择节省外部电源,而选择VREF 由内部提供,此时需要注意上电初始化期间ADC_FAULT的处理。

  误报机理

  ADC 使能后,ADC_FAULT即可报错,而ADC_EN 以及 VREF 的外部供电都是默认的,当VREFpin外部没有供电,或者供电电压超过阈值时,器件在上电后,可能会报ADC_FAULT 故障。

  规避方法

  如果需要把VREF配置成内部模式,则建议在上电进入Configuration

2模式后,先把CFG8配置成内部模式,然后读取所有故障状态位,如果ADC_FAULT是唯一故障,可以通过写CLR_STAT_REG=1来清ADC_FAULT故障位。如果需要在正常工作时监控ADC_FAULT,则最后置位ADC_FAULT_P。即务必注意把ADC故障的屏蔽使能位ADC_FAULT_P的置位放在VREF 配置成内部模式之后。

  总结

  UCC587x-Q1

具有丰富的诊断功能,在提供更全的诊断覆盖度的同时,如果不注意上电后软件的配置时序,在特定的应用场景下,可能会误报ADC_FAULT以及SC_FAULT。我们可以通过本文提到的配置方法,规避这类误报问题。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分