RX8025 RTC闹钟唤醒Alarm_D的初始化

用完INTA周期输出又要求隔几个小时触发唤醒MCU,只好使用Alarm_D闹钟唤醒,为了避免INTA中期输出和Alarm_D输出冲突,关闭INTA周期输出,现对Alarm_D初始化做一个记录。方便以后查看。

//产生时分报警INTA 输出
static void SetAlarm_D(SYSCLOCKALARMVALUEINFO stClockAlarmSetValue)
{
u8  nRegInfo , nCount = 0 ;

//地址写入是0X0E,实际在函数内部的地址为0XE0
while(!(Rx8025_ReadProc(0x0E, 1, &nRegInfo)) && nCount ++ < 50);


//设置时间
nCount = 0;

//地址写入是0X0B,实际在函数内部的地址为0XB0
while(!(Rx8025_WirteProc(0x0B, SysDecToBCDProc((u8)stClockAlarmSetValue.nMinute))) && nCount ++ < 50);
nCount = 0;
while(!(Rx8025_WirteProc(0x0C, SysDecToBCDProc((u8)stClockAlarmSetValue.nHour))) && nCount ++ < 50);


//设置DAFG位  不需要设置
//Rx8025_ReadProc(0x0F, 1, &nRegInfo);
//nRegInfo |=0X02;
//Rx8025_ReadProc(0x0F, 1, &nRegInfo);


//开启Alarm_D
nCount = 0;
nRegInfo |=0x40;
while(!(Rx8025_WirteProc(0x0E, nRegInfo)) && nCount ++ < 50);
}

为了可靠设置参数,做了一下重复判断。按照说明书要求(1)先关闭Alarm_D(初始化RX8025时已关闭)(2)设置小时和分钟(3)打开Alarm_D(置位DALE)。

中文版说明书翻译不是很准确。建议对比英文版。

PS:Alarm_D唤醒后不要忘记清楚DAFG位,清除后下一次才能继续唤醒,这一点和INTA电平周期唤醒一样,都是要清除相应的位。。。



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
RX8025T是一种高性能实时时钟模块,常见于嵌入式系统或电子产品中用于提供精确的时钟功能。它具有低功耗、高精度、温度补偿等特点,常用于实时时钟应用中。 针对RX8025T的驱动,一般需要在系统中进行相应的设置和配置。驱动程序一般包括以下几个部分: 1. 时钟初始化:首先,需要对RX8025T模块进行初始化设置,包括时钟频率、时区、日期、时间等参数。这些设置通常通过I2C或SPI等通信接口与模块进行交互完成。 2. 时钟读取:驱动程序需要提供读取当前时间的接口,以供系统获取准确的日期和时间信息。读取时钟信息可以通过读取RX8025T模块的寄存器,并将其转换为可读的日期和时间格式。 3. 时钟校准:由于RX8025T模块的温度对时钟精度有一定的影响,因此驱动程序通常会实现时钟校准的功能。校准可以通过与外部参考时钟或时间服务器进行同步,或者通过周期性校正来提高时钟的准确性。 4. 时钟中断:RX8025T模块通常支持中断功能,可以在指定的时间或事件发生时触发中断信号。驱动程序需要实现中断的注册和处理功能,以便及时地响应这些中断事件。 5. 电源管理:为了节省功耗,在不使用时可以关闭或休眠RX8025T模块。驱动程序需要提供相应的接口来管理模块的电源状态,以满足不同应用场景的需求。 综上所述,RX8025T驱动程序设计的关键在于正确进行模块的初始化、读取、校准和管理。合理而完善的驱动程序可以确保RX8025T模块在嵌入式系统中正常运行,并提供准确可靠的时钟功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值