你好,
我有一个应用程序,DA14585连接到I2C ADC,并通过蓝牙将测量数据发送到连接到计算机的接收器。我想把电脑上的时间和传感器板同步。这样,我可以从传感器板发送时间戳数据,而不必担心传输或数据处理过程中的时间偏差。接收机只需从数据的时间戳中减去同步时间,就可以计算出传感器何时测量数据。
我发现函数lld_evt_time_get()以625µs为增量返回正常运行时间。有更快的吗?我的板使用16MHz +/-30ppm和32.768kHz +/-10ppm晶体。
谢谢你!
安塞尔
设备:
嗨ahiggs
如果我没有弄错,你想实现一个“实时时钟”,因为DA14585不包括RTC。lld_evt_time_get()对625us基准时间计数器测量基于时间的(),并返回BLE计时器的值。您可以使用lld_evt_time_get()函数以625us为增量获取当前时间。如果你需要更快的计时,你将不得不禁用睡眠和使用系统棒计时器,它可以提供低至1us精度。在睡眠模式下,16MHz关闭,系统运行与低功耗时钟(外部XTAL32振荡器或内部RCX20时钟)。
谢谢,PM_Dialog
感谢您的回复。哪个晶体是lld_evt_time_get()函数/ BLE定时器的源?
嗨ahiggs
lld_evt_time_get()没有稳定的时钟源,但是会根据设备是休眠还是唤醒而变化,并根据XTAL16和XTAL32测量从上电到上电所经过的时间。为此,在活动模式下测量的时间来自XTAL16,但在睡眠模式下,它通过XTAL32测量,并在设备唤醒时得到补偿并应用于计时器。
谢谢,PM_Dialog