提出问题: 近期笔者在从事资产监测设备开发的过程中,遇到了客户反馈的芯片串口串电的问题。
这个问题来源于使用PC机工具通过UART/USB转换板直接控制1.8V电压域的Sony低功耗GPS芯片 CXD5605时,遇到的一些异常现象。
问题背景: 环境监测设备主要作用是利用传感器将设备所处环境中的温湿度、光照、运动等状况进行采集再通过通信模块与网络将相关数据传递至云端后台,为用户的工作提供新的解决方案。相关企业经过长期的市场调查与研究,为广大客户群体提供了全方位的定制服务,除了上述功能外,还可以根据用户的具体情况提供定制化的解决方案。
解决思路: 为了更好的理解,我们先看一下通常GPIO的硬件结构,从硬件结构上去理解出现上面现象的可能原因。首先要知道串口也是一种GPIO,不过只是支持UART的通信协议的GPIO。所以从硬件结构上依旧是GPIO。
图中就是一个GPIO的简单结构,基本上端口的保护二极管就是串电的根源,该二极管是作钳位电压用的,一般能够承受的持续电流也就几个mA。所以当连接不同电压域的GPIO时,会有电压应力过大而损坏的风险。比如使用一个3.3V端口电压的串口板连接控制1.8V接口的CXD5605,3.3V和1.8V的压差在钳位二极管上形成比较大的危险电流,就会有可能发生芯片损坏的现象。哪怕GPS芯片没被损坏,若是这种环境下测量功耗,也会出现异常的结果。比如,测量功耗时,供电VDD一般都是由LDO或者DCDC提供,这些都只能做源(Source),没有吸电流的功能(Sink),所以3.3V的电平经过二极管串入后,1.8V的电压域就会受到影响,从而影响整个功耗。 再看一个现象,使用MCU控制GPS芯片,当GPS掉电关闭后,若MCU的相关GPIO管脚(比如TX,RX)若是高电平状态,那么这个电平就会通过二极管串入GPS芯片的电源轨上,而导致GPS的电源轨上的电压不为0V,这个串入的电压加在电源轨上的其他负载,从而形成额外的功耗。 因此芯片串口串电可能导致以下现象: 1.GPS芯片损坏(EOS问题); 2.功耗异常。 同时,对于串口的使用,需要注意两点:1.使用与GPS IC同电压域的串口电平;2.在GPS IC关闭后,避免与其连接的GPIO形成高电平的串电隐患。当然,这里的应用注意事项并不限于GPS IC。
|