首页 供应 求购 产品 公司 登陆

华大单片机RTC补偿

  • 发布时间:2021-08-09 10:22:39
    报价:面议
    地址:辽宁,沈阳,辽宁省沈阳市铁西区建工西路5号财富星座B座
    公司:沈阳芯硕科技有限公司

    手机:13802923731
    电话:024-85718900
    用户等级:普通会员 已认证

    华大单片机有些型号带有RTC功能模块,提供秒、分、时、日、周、月、年的信息,每月的天数和闰年的天数可自动调整。RTC时钟模块的时钟源可以选用内部低速时钟、外部低速时钟和外部高速时钟。内部低速时钟全环境范围(VCC = 1.8 ~ 5.5V,T AMB = -40 ~ 85°C)下精确度为正负5%,这种精度不能满足计时时间要求严格的使用。用户想要得到高精度的计时就必须使用外接晶振。使用外接晶振后并不是完全可以无误差,只是降低了误差,如果还想得到更高的精度还需要对RTC进行补偿。


    补偿原理说明与计算:
    由于计数器采用 32.768KHz 的时钟计数,如果需要对每秒精度进行补偿时,只能按照 32.768KHz 的整数周期补偿,则每秒补偿的单位为(1/32768)*10 6 =30.5ppm,无法满足高精度的要求。那么要在 32.768KHz 的计数时钟下实现精度较高的时钟补偿时,需要在算法上做调整,将补偿周期扩大 32 倍。则在只能补偿的单位为 30.5ppm 的情况下,平均每秒的补偿单位变为为 30.5ppm/32=0.96ppm。满足了精度较高的时钟补偿要求。而且补偿发生在每 32 秒内比较均匀的范围内。所以,该寄存器中引入了 5 位小数的设定。
    设定值计算如下:

    如果补偿目标值为 +20.6ppm,计算相应的寄存器值如下:

    如果补偿目标值为-20.6ppm,计算相应的寄存器值如下:







    补偿代码如下:
           int16_t RTC_err;                                                          //一天内误差多少秒   
           float    RTC_Value = 0;  
           RTC_Value=RTC_err/(24*60*60) *(1000000);             //将误差转换为PPM
           RTC_Value=RTC_Value*32768/1000000;
           RTC_COM = Change_FloattoBin(RTC_Value);            //取2的补码
           M0P_RTC->COMPEN_f.CR = RTC_COM;

    uint16_t Change_FloattoBin(float data)     //取2的补码部分
    {
      float data1 = data;
      
      uint16_t temp_data=0;
      uint16_t temp_data1=0;
      uint8_t i,data_inter;

      if(data<0)
      {
      data=-data;
    }
      data_inter = (uint8_t)data;
      data-=data_inter;
      for(i=0;i<6;i++)
      {
        data = data*2;
        if(data>=1)
        {
          data-=1;
          temp_data|=1<<(5-i);
        }
      }
      temp_data|=(data_inter<<6);
      if(data1<0)
      {
        temp_data=~temp_data+1;  
      }
      else
      {   
        temp_data1=temp_data;
      }
      temp_data1=temp_data;
      temp_data1>>=1;  
      temp_data1+=0x20;
      temp_data1&=0x1ff;
      return temp_data1;//取低9位补偿值
    }

    华大单片机RTC补偿

    提醒:联系时请说明是从志趣网看到的。

免责申明:志趣网所展示的信息由用户自行提供,其真实性、合法性、准确性由信息发布人负责。使用本网站的所有用户须接受并遵守法律法规。志趣网不提供任何保证,并不承担任何法律责任。 志趣网建议您交易小心谨慎。

©志趣网