微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > DS1302备用电源的设计

DS1302备用电源的设计

时间:08-24 来源:互联网 点击:

DS1302是DALLAS公司的一种具有涓细电流充电能力的电路,主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。采用普通32.768kHz晶振。它可以对年、月、日、周、日、时、分、秒进行计时,且具有闰年补偿等多种功能。

在这里我要特别说明的是DS1302的备用电源的选择,当然可以用电池,我以前的板子上就是用了一颗纽扣电池CR2032。但是,如果断电时间较短(几小时或几天)时,就可以用漏电较小的普通电解电容器代替。一般地,100 μF就可以保证1小时的正常走时。我现在是用了电脑主板的电解电容,是3000uF的。强大至极,一个星期都能保持住时间。

我是用这个电路来计算我的车辆单程耗油量的,设计中有单程耗油量的显示,比如从九江到庐山我要清楚的知道我费了多少油。之前的设计中是把每次开车启动发动机开始,到拔下钥匙停车为止算作一个单程的,这样就带来了一个问题。比如从九江到庐山,只能算一个单程啊,你不能因为路上接电话,买早点、在庐山园门进山等等原因而带来的停车熄火,而另外又重新计为一个单程吧。

经过试验,电路图设计如下,效果非常满意哦。

这里我设定单程时间的原则是:假如半小时内的再次启动不算新的单程,应该还是累计计算单程耗油量。

设计思路为:

开机初始化时,先读时钟芯片的时间,假如时钟芯片的时间为零(停车的时间太长了,以致于电解电容器都没电了),计一次新的单程。
否则,记下时钟芯片内的时间,再查询机内EEPROM的时间计数,这两个时间相比,相差不到半小时的话,耗油量就累计计数。
超过了半小时,应该记为一次新的单程了,此时,将时钟调为00:00:00,EEPROM清零,开始一次新的单程计数。

这个实验,解决了我长期来冥思苦想的一个命题:

当车辆再次启动时,如何得知此次启动与上次停车之间的时间间隔?(不得用电池给单片机加电,尽可能少的器件完成)。

想出来了而且实验也成功了,就特别的写出来供大家分享。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top