跳过主要内容

从RTC模块中获取时间

DA14580

1年前

发表thanhtu1310分 6个答复
0个投票

嗨,我买了DA14580基本套件。我必须与之合作。现在,我正在使用DA14580制作计时器设备。特定时间将在我的Android手机上设置。DA14580将从Android手机(通过BLE GATT连接)中获取设定时间信息。然后,DA14580将从RTC模块DS1307(通过I2C通信协议)中获取实时信息,并根据设定时间激活蜂鸣器。但是,根据DA1458X软件平台参考UM-B-051 DOCCUMENT,完成BLE工作后,DA14580将进入睡眠模式(扩展/深度睡眠模式),然后是无线电域,外围域将供电,并且XTAL16M时钟电源被停止。那么如何在睡眠模式下使用I2C连接?还是我必须使用外部处理器? Thanks

接受的答案!

1年前

pm_dialog

嗨,thanhtu131,

该应用程序特定。功耗在您的设计中至关重要吗?

使用睡眠模式以使电流消耗较低。但是,在睡眠模式下,所有外围设备域都被关闭(包括I2C),因此您将无法使用任何外围块。

如果功耗不是关键,则可以在活动模式下配置DA14580,以便您始终能够使用I2C。

您还可以结合睡眠和活动模式。无需外部处理器。

谢谢,pm_dialog

1年前

thanhtu131 0分

我可以设置唤醒时间1或0​​.5s吗?然后DA14580可以醒来并检查I2C数据并再次进入睡眠模式吗?功耗会比始终设置活动模式更好地降低吗?

接受的答案!

1年前

pm_dialog

嗨,thanhtu131,

该设备在广告或连接间隔之间进入睡眠模式,并通过BLE计时器唤醒。通常,是的,您可以使用计时器定期唤醒,但它再次是专门应用的。您只能在活动模式下与I2C接口进行交互 - 当您不需要I2C活动时,您应该将设备为睡眠模式。

谢谢,pm_dialog

1年前

thanhtu131 0分

感谢您的回答。我的产品将从我的手机中接收套房(时间,天...),然后它将继续将收到的时间表与从DS1307(使用I2C接口)获得的实时信息进行比较并触发蜂鸣器。但是,关键是继续获取​​实时信息可能会导致大量能源消耗。而且该应用程序不会崩溃:)因此,我有2种方法可以遵循:

1/将应用程序始终处于活动模式

2/将应用程序睡眠时间设置为1。然后它醒来,再次睡觉...

第二种方法是否比第一个减少能源消耗?你有建议吗?谢谢

1年前

pm_dialog

嗨,thanhtu131,

由于DA14580将与对等设备连接,因此,如果您在睡眠模式下配置了它,则它将在连接间隔之间进入睡眠。由于连接连接,因此无需设置计时器即可使其入睡。

您可以设置一个计时器,以便停止广告并将其置于睡眠模式。类似于SDK的BLE_APP_SLEEPMODE示例。

谢谢,pm_dialog

1年前

thanhtu131 0分

谢谢,我明白了