问题标签 [real-time-clock]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
timer - STM32通过RTC从待机中唤醒
我正在编程 STM32L051R8 并且有下一个问题。我大部分时间都在尝试使用待机模式,有时会被 RTC 唤醒,这是一种自动唤醒。如果我在没有睡眠的情况下工作 - 一切正常,我每次都会收到 RTC 中断,但是当我使用待机时 - 不要。
如果我使用待机,我有一个很好的第一个周期:
- 重置
- 设置实时时钟
- 进入待机
- 等待中断
- 醒来
但是第二个和下一个周期在进入待机 (3) 后立即唤醒。
timer - NTP 和 RTC 硬件时钟奇怪的结果
为了使 ODroid 上的系统时间尽可能接近实时,我尝试向 ODroid 添加实时时钟。RTC 的精度为 +/- 4ppm。
如果没有实时时钟,我会得到这样的结果(每 60 秒与 NTP 服务器同步)。蓝色是用于比较的橙色 Pi。x 轴是样本,y 轴是 NTP-server 报告的偏移量,以 ms 为单位。
所以我尝试的是同样的事情(虽然有更多的样本,但间隔相同),但我不只是与 NTP 服务器同步,而是执行了以下操作:
- 将系统时间设置为硬件时钟时间。
- 与 NTP-server 同步更新系统时间,并记录服务器给定的偏移量
- 将硬件时钟更新为系统时间,因为它刚刚同步到实时。
然后我等待 60 秒并重复。我没想到它是完美的,但我得到的东西让我有点震惊。
我到底在看什么?抖动变得越来越小,几乎是一条直线,但当它达到完美时间(大约 410 分钟......)时,它似乎还在继续,让抖动和偏移再次增长。
谁能解释一下,或者告诉我我做错了什么?这很奇怪!
c++ - 日期时间,字符串比较
我需要将传入的字符串与来自 DS1307 RTC 模块的日期和时间进行比较。如果达到字符串的特定时间,我将触发一个事件。
我试过使用转换为整数,但它不起作用。
错误说conversion from DateTime to non-scalar type String is requested
如何将日期时间与字符串进行比较?
arduino - Arduino RTC 模块显示备用信息
所以我尝试使用 DS1302 RTC 制作一个 Arduino LCD 实时时钟。
它工作并正确读取存储在 RTC 中的时间,但每隔一秒显示空数据集
我似乎找不到问题。
它可能来自图书馆本身,但我是从一个视频中获得的,该视频在视频中似乎运行良好。
我是这种环境的新手,因此非常感谢任何类型的帮助。这是我的草图。
raspberry-pi - 树莓派零 DS3231 RTC
我有一个 Raspberry PI 零并想添加一个 HWClock DS3231 ( https://www.amazon.de/DS3231-RTC-Modul-f%C3%BCr-Raspberry/dp/B01B4IV30C/ref=sr_1_fkmr0_2?s=computers&ie= UTF8&qid=1486456449&sr=8-2-fkmr0&keywords=raspberry+pi+zero+rtc ) 就可以了。
在我的 Raspberry PI 3 B 上,它运行良好。但是当我尝试在我的零上使用它时它不会工作。
我不确定我是否将 RTC 放在正确的 GPIO 引脚上,但没有找到任何方法。有没有人使用 Raspberry PI Zero 与 DS3231 RTC 模块一起工作?
谢谢你的帮助。
linux - 无法将实时时钟的模式设置为 UTC
在我的 Debian (Jessie) Linux 机器上,我想按照timedatectl命令的建议将实时时钟的模式设置为 UTC(见下文)。但这似乎无法正常工作。
执行作为systemd-timesyncd守护进程概念一部分的timedatectl命令会导致以下警告:
警告:系统配置为读取本地时区的 RTC 时间。无法完全支持此模式。它会在时区更改和夏令时调整方面产生各种问题。RTC 时间永远不会更新,它依赖于外部设施来维护它。如果可能,请通过调用“timedatectl set-local-rtc 0”来使用 UTC 格式的 RTC。
提交建议的命令:
导致以下错误:
设置本地 RTC 失败:设置 RTC 为本地/UTC 失败:输入/输出错误
当第二次立即提交相同的命令时,没有错误,上面的 UTC 警告也消失了。但不幸的是,这在 1-2 分钟后又恢复了!这意味着当等待几分钟然后再次执行timedatectl时,警告又回来了!
备注:我正在使用具有 RTC 时钟(不是嵌入式系统)的普通 Linux 机器!
timer - STM32 RTC 初始化期间超时
我正在尝试在 STM32F469I-DISCO 板上初始化 RTC。因为我还在学习,所以我尝试使用 HAL API,它允许我完成一些项目,直到我对这个微控制器有足够的了解,可以直接使用寄存器。
无论如何,我的代码使用来自 CubeF4 的 STM32F469I-DISCO 模板,它允许直接加载 HAL 层和系统时钟(通过 8 MHz HSE 振荡器实现 180 MHz)。
为了初始化 RTC,我遵循了UM1725 中给出的说明:STM32F4 HAL 和 LL 驱动程序的说明。第 715 页,第 55.2.4 节您有使用 HAL_RTC API 的说明。
第一点说有必要启用“RTC域访问”。这一点在上面的部分(55.2.3,同一页)中进行了解释。
我做了它被要求做的事情。这是我的代码(简化,我只让 RTC Init 部分和系统时钟配置):
它不起作用。在深入研究了最低层之后,我设法找到了它不起作用的地方。我只是不知道为什么。
HAL_RTC_Init() 调用返回 HAL_ERROR 状态。出现此 HAL_ERROR 是因为 HAL_RTC_Init() 调用 RTC_EnterInitMode() 并返回 HAL_TIMEOUT 状态,因为在预期时间内未达到条件。以下是功能:
和 :
所以,如果我调查得很好,问题是条件:hrtc->Instance->ISR & RTC_ISR_INITF == (uint32_t)RESET 一直为真(因为引发了 TIMEOUT 条件)。我不明白的是根据上面的函数(EnterInitMode),RTC_ISR_INITF 和 ISR 变量似乎被明确定义,因此按位运算值不是 0(RESET)。
“ISR”直接在函数中定义,是 RTC_INIT_MASK (#define with 0xFFFFFFFF value in stm32f4xx_hal_rtc.h)
“RTC_ISR_INITF”是一个宏: (0x1U << RTC_ISR_INITF_Pos) 其中 RTC_ISR_INITF_Pos 是 stm32f469xx.h 中定义的 6U (#define)
如果我说“&”操作不是 0 我错了吗?
你知道为什么我会提出这个 TIMEOUT 条件吗?
提前致谢 !
timer - RTC 未运行
我尝试在我的 Arduino 项目中使用 RTC DS1307,每次我运行我的代码时都会收到此错误:RTC is not running
. 该代码应每分钟点亮一个 LED:10sc 并每分钟关闭一次:20s。
这是我写的代码:
我使用了来自 Arduino 站点的 RTClib.h 库。请有任何想法。
esp8266 - RTC 内存 ESP8266 12-E 读写
什么是写入变量的正确语法让我们说 int100
到 ESP8266 12-E 模块的 RTC 内存中,并在重启或深度睡眠后检索它。