各位专家,我现在遇到如下问题:
1.硬件上使用STM32的SPI配置AIC3268,但在低温-15℃左右时3268工作不正常(其它温度均正常)。
2.常温下断开AIC3268的3.3V电源,STM32正常工作,发现存在严重的倒灌现象,在3268的3.3V管脚上能测到2.4V的电压,所以在不给3268供3.3V电的情况下,3268也能正常工作。
3.外部单独给3268供3.3V电,并且先给3268上电,然后再给STM32供电,低温-15℃还是不能正常工作。
4.在第2个步骤基础上,将STM32的IO口由推挽设置为OC输出驱动3268,然后测试3268的3.3V管脚上倒灌电压为0.6V,同时低温-15℃也正常了。
针对上面现象,想咨询几点问题:
1.3268内部控制接口的输入组成是怎样的,为什么倒灌会这么严重?
2.先给3268单独上电,理论上能避免倒灌,但是低温-15℃还是不正常,这点没有想通是怎么回事?
麻烦解答一下,谢谢!
“倒灌”并不存在,而是COMS电路的输入钳位保护二极管导致的。只要任一IO上存在足够驱动能力的高电平,当Vcc未供电时,IO口钳位二极管即为外部高电平提供了连接Vcc的通路。因存在管压降,所以此时的“倒灌”电压会比外部高电平低一个管压降。
低温下器件的某些参数可能会超出设计时序误差的范围,解决的办法是注意控制接口时序。非正常的漏电当然是要避免,MCU的IO模式在上电后要进行适当的配置,如果周边芯片的上电复位时序无法与MCU匹配,需要用MCU去主动控制上电复位,或者借助外部复位电路使周边芯片的复位时间长于MCU,即确保MCU进入正常工作态后,外部芯片才完成上电复位。当然,此时要求MCU在确保周边芯片已进入正常工作态后才开始发出指令操作周边芯片。