zoukankan      html  css  js  c++  java
  • 【树莓派】关于树莓派掉电问题

    树莓派没有电池,所以断电断网情况下,时间会停留在上次关机的时间。

    如果再次开机,有网络的情况下,可以进行时间同步。

    但是极端情况下,没有网络,就只能手动去修改;而没网的情况下,客户不懂Linux,不会手动修改,那只能使用电池解决方案。

    可以用这东西:

    CR1220

    CR1220电池是锂二氧化锰一次性电池,不可充电,标称电压3v,常用于数码产品及其他小电子产品的CMOS电池上、记忆功能或断电参数保护,相机安装这块电池用来保存系统时间和设置,一般优质电池使用寿命2到3年。 如果不安装该电池或者电池失效。

    12表示电池的直径是12.5mm,20代表电池的高度为2.0mm。很小吧。这么小的一个纽扣玩意儿,可以支持2~3年。

    这种电池很多,现在需要一个很小的纽扣电池就足够了:

    下面补充一下RTC与NTP相关:

    RTC 与 NTP

    早期版本的 FreeBSD 有一个问题是,如果使用 ntpd 来校准系统时钟的话,如果长期开机,则在重启之后,时间会差很远,之前一直没仔细研究这个问题。最近突然发现 FreeBSD 8.1-RELEASE 里面没有这个问题了,于是翻看了一下代码和之前的一些邮件才明白是怎么回事,总结一下:

    一般来说操作系统在引导以后会自行维护时钟,简单地说,就是操作系统根据某个时钟源,例如单CPU系统中的TSC,或多CPU系统中比较常用的高精度事件计时器HPET等等,计算出时间的流逝并修改系统时间。只有在系统刚刚引导的时候,才会直接取 RTC 时间(在关机时,主板上的电池仍可维持 RTC 电路的计时功能)。

    我们知道,任何测量工具都是有误差的,普通的 PC 系统上配置的计时装置肯定不会做的非常精密,这也是我们为什么要运行 ntpd 的主要原因。在系统运行的过程中,这些误差不断地积累,使用 ntpd 时,系统可以计算出所采用的时钟源与实际的时间之间的误差,并逐步调整时间源的计数周期与实际时间的比例,从而维持系统时钟的精确性。

    在重启时,在内存中维护的系统时刻数据便随之丢弃了,操作系统再次启动时读取的是先前未经修正过的、继续在积累误差的 RTC 时间数据(注意:RTC是不依赖于OS运行的;OS可以修改其时刻数据,但无论开机还是关机,只要维持其需要的电流即可确保 RTC 继续自行更新,而无需 OS 干预)。

    FreeBSD先前的实现中,只有非常少的地方调用了 resettodr(9) 来修正 RTC 时间,这些地方主要是settimeofday()之类的直接设置内核时刻数据的点,而对于 ntp 的情况,则没有相应的处理。

    新的实现 (以r207360为主体,包含r207359, r207362)则增加了一个callout,每半小时将系统时钟刷回RTC一次,从而解决了这个问题。

    关于为什么不应该使用 ntpdate 来对时(ntpdate会使用settimeofday()),请参考 A core的 这篇 介绍 NTP 的文章,以及我的 这篇 文章。

    -----------------------------------

    RTC(实时时钟芯片) 

    RTC,英文全称:Real-time clock,中文名称:实时时钟,是指可以像时钟一様输出实际时间的电子设备,一般会是集成电路,因此也称为时钟芯片。实时时钟芯片是日常生活中应用最为广泛的消费类电子产品之一。它为人们提供精确的实时时间,或者为电子系统提供精确的时间基准,目前实时时钟芯片大多采用精度较高的晶体振荡器作为时钟源。

     基本目前所有的RTC都需要后备电源供电,都是用纽扣电池,RTC功率低,而且使用的时长不长,用纽扣电池就最为合适。而在选用纽扣电池,我们一般都需要了解一下产品的特性,到底是客户是否能自行更换电池?在后备电源这一块,有没有带充电电路?预算在这个后备电源上投入多少成本?空间有多大?众所周知,目前广泛应用在RTC都是3V纽扣电池,而3V纽扣电池有分可充电与不可充电。

     不可充电型的3V纽扣电池,都是用在一些产品基本接近不断电状态或者就算断电时间不长,还有一个就是空间相对比较大。同规格的纽扣电池,不可充电的容量是比可充电的容量高出不少,就以CR1220ML1220为例,CR1220的容量是45mah,ML1220的容量是15mah,不过不可充电的成本就低很多;而可充电的3V纽扣电池就多数用在哪些比较精密的,可能会断电时间比较长的产品中,而空间都是比较小。比较不容易去更换电池,主电源断电后,就靠这个后备电源来保存时间,比较容易理解,就好像我们以前用的诺基亚手机,当我们把手机电池拆掉了一个晚上,第二天装上电池,我们都能看到手机上的时间还是很准确,不会复位,而这个时候,其实后备电池都用很大部分的电量,当装会手机电池后,又会给这颗小电池充满电。

  • 相关阅读:
    c 语言学习第一天
    react+antd 使用脚手架动态修改主题色
    用 vitePress 快速创建一个文档项目
    react懒加载,减少首屏加载时间
    react-devtools安装以及使用中的问题
    react为什么不用数组的下标来绑定key
    三种js缓存(笔记)
    关于浏览器自动记住登录帐号和密码后, 一些输入框会显示帐号密码信息
    H5 Hybrid开发-前端资源本地化方案纪要
    webpack + ts 配置路径别名无死角方法总结
  • 原文地址:https://www.cnblogs.com/haochuang/p/7098165.html
Copyright © 2011-2022 走看看