一、 设计需求
在工业产品中,有很多工业参数在掉电后需要进行保存,如当前电机位置,目前设定的阈值大小等等,需要在掉电的时候将这些参数保存到EEPROM中,重新上电时,从EEPROM中读取这些数据。
如果在正常工作期间,不断将这些参数写到EEPROM中,会占用CPU资源,消耗函数执行时间。
如果系统能够检测到系统掉电,在掉电的同时将这些参数存储到外部或者内部的EEPROM中,会大大减小系统的负担。
二、 设计实现
电路设计如图1所示 ,主要有上半部分的光耦、两个三极管和一个大电容组成掉电检测电路。
图1 系统掉电检测图
当系统正常供电时,通过电阻分压,能够将光耦导通,各个点状态为
l PowerDown电压为高电平
l D7 二极管正常导通
l C22 1000uF大电容上电压为12V左右
当系统掉电瞬间,各个点状态为
l 光耦无法导通,PowerDown电压为低电平
l D7二极管截止
l C22 1000uF大电容上电压不会突变,电压值12V左右,释放电荷为后面电路供电
掉电瞬间,光耦输出端电压有高电平变为低电平,产生一个下降沿。由于C22电容上存储很多电荷,能够短暂为后面电路提供电流。有公式
C=I*T (1-1)
可得,掉电后能够工作时间由电容大小和后面电路电流大小共同计算出。