emeter_sinne_gen.c

来自「TI三相电能表源程序」· C语言 代码 · 共 34 行

C
34
字号
//**************************************************************************
//    This is a simple sinne gen function written in C
//
//    Vincent Chan 
//    Texas Instruments Hong Kong Ltd
//    Date        Comments
//    =====================
//    01/09/19    Code Starts
//**************************************************************************
#include "emeter_3phase.h"
//--------------------------------------------------------------------------

extern const int cos_table[128];

int sinne_gen(int *phaser,int phaser_rate)
{
int i;

*phaser += phaser_rate;
i=*phaser;
if(i<0) i=-i;         //wait modular value
i>>=7;                //need 9 bit results only
if(i<128)         
  {                   //first quadrant
  return(cos_table[i]>>5);      //returns max +1024
  }
else
  {                   //second quadrant
  i=256-i;
  return(-cos_table[i]>>5);	//returns min -1024
  }  
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?