c++ - 如何在不使用 RTC 的情况下向 SD 卡添加时间戳
问题描述
我正在使用带有 arduino mega 的 SD 卡。每次我写卡时,大约每 2 或 3 秒一次,我希望文本旁边有一个时间戳。它在串行监视器上的工作方式相同。我想知道是否有任何方法可以通过编程方式而不是获取 RTC。
解决方案
那里有软件 RTC 库,例如swRTC,而Arduino-RTC具有纯软件模式。
这些库依赖于 Arduino 时钟的准确性,因此它们不会那么准确,并且需要经常调整。此外,每次重置 Arduino 时都需要设置它们。
设置和调整这些软件 RTC 需要某个地方的当前时间,例如通过串行连接的 PC、网络时间的 WiFi、GPS 时间、互联网上的 SNTP 服务器等。
最简单的方法是手动设置启动时间,并使用millis() 自己保持时间。也不是很准确,但总比没有好。
话虽如此:我只会得到一个硬件 RTC;它们便宜,相当准确,并且有备用电池,因此它们始终保持时间。它们也比 Arduinos 中的 RTC 更好,后者在硬件中确实有一个。
推荐阅读
- python - 将新元素添加到 3 维数组 NUMPY
- terraform - 为什么 Terraform 看不到我手动安装的提供程序?
- kubernetes - 子网掩码与kubernetes master ip mask的关系
- r - 变异多个/连续列(使用 dplyr)
- c++ - 头文件和库文件有什么区别?
- swift - 视图未在类别菜单项选择 SwiftUI 上更新
- python - Django-Simple-Captcha Cron 作业删除验证码记录
- javascript - 不在循环中执行语句
- r - 访问 R 中的共享点文件夹
- javascript - 如何在我的 cypress 测试中处理 gmail 登录并对收件箱执行操作?