zoukankan      html  css  js  c++  java
  • 用nRF52的RTC实现万年历

     nRF52系列芯片内部有3个RTC,其中RTC0是给协议栈softdevice用,RTC1分配给 App timer用,剩下的RTC2可以用来实现万年历功能。

     代码基于SDK15.0,在BLE_APP_UART例程上进行添加和修改:

    1)   在工程Application目录添加ble_calendar.c 并包含对应头文件和目录;

    2)   详细代码参看: https://pan.baidu.com/s/1BlTMcz5qnfZ3SjscczoOlw ,提取码:k97k

    3)   用nrf Toolbox -> UART工具编译三条命令,分别发‘s’  ’g’   ‘u’  

    4)   用putty 和 RTT都可以查看打印结果

    RTC寄存器和分频系数设置方法:

     

     Example:

    计算 COUNTER frequency 8 Hz (125 ms counter period)

    PRESCALER = round(32.768 kHz / 8 Hz) – 1 = 4095

    f RTC = 8 Hz

    125 ms counter period 

    RTC Counter 为24 bit, Prescaler 值为12 bit 因此最小resolution 为30.517us, 最大为125ms, 按最大resolution 12bit 计算的话最长时间可以计到582.542小时,具体如下表所示:

  • 相关阅读:
    「学习笔记」min_25筛
    HNOI2019游记
    【SDOI2017】数字表格
    【APIO2016】烟火表演
    【SCOI2015】小凸想跑步
    java Thread源码分析
    java ThreadGroup源码分析
    bean获取Spring容器
    spring 管理bean
    thinkphp5.0.19 request
  • 原文地址:https://www.cnblogs.com/lim11/p/11133253.html
Copyright © 2011-2022 走看看