电路图如下:
备用电源使用0.47F超级电容供电,可以使用芯片的涓流充电功能。
arduino库可以使用Rtc_by_Makuna库,直接打开例程,设置引脚即可。
默认无充电功能,可以使用函数Rtc.SetTrickleChargeSettings(0xA5);开启涓流充电功能。
参数0xA5可以根据需要调整:
// DS1302 Trickle Charge Control Register Bits
enum DS1302TcrResistor
{
DS1302TcrResistor_Disabled = 0, //电阻设置
DS1302TcrResistor_2KOhm = B00000001,
DS1302TcrResistor_4KOhm = B00000010,
DS1302TcrResistor_8KOhm = B00000011,
DS1302TcrResistor_MASK = B00000011, //设置位置为0-1位
};
enum DS1302TcrDiodes
{
DS1302TcrDiodes_None = 0, //二极管设置
DS1302TcrDiodes_One = B00000100,
DS1302TcrDiodes_Two = B00001000,
DS1302TcrDiodes_Disabled = B00001100,
DS1302TcrDiodes_MASK = B00001100, //设置位置为2-3位
};
enum DS1302TcrStatus
{
DS1302TcrStatus_Enabled = B10100000, //使能涓流充电
DS1302TcrStatus_Disabled = B01010000, //失能涓流充电
DS1302TcrStatus_MASK = B11110000, //设置位置为4-7位
};