⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 type_def.h

📁 该程序用msp430单片机开发了一款单相电子式多费率电能表
💻 H
字号:

extern void BCD1INC(unsigned char *Dest);
extern void BCD2INC(unsigned char *Dest);
extern void BCD3INC(unsigned char *Dest);
extern void BCD4INC(unsigned char *Dest);
extern void BCD4INC10(unsigned char *Dest);

extern void DELAY10MS(void);
extern void DELAY1MS(void);
extern void DELAY1S(void);

typedef struct
{
  unsigned char  ID;
  unsigned char *Addr1;
} DisData;




unsigned char   gtimer01[3],gtimer02[3],gtimer03[3],gtimer04[3],gtimer05[3],gtimer06[3];
unsigned char   gtimer07[3],gtimer08[3],Chkgt;


unsigned char   worka[4],workb[4],workc[4],workd[4],worke[4],workf[4];

__no_init   unsigned char   MeterID[6]    @ 0x200;           //0x210~0x215    表号
__no_init   unsigned char   Pswd[4]       @ 0x206;
__no_init   unsigned char   ChkID         @ 0x20A;          //0x21A           表号校验位

__no_init   unsigned char   Second        @ 0x20B;
__no_init   unsigned char   Minute	  @ 0x20C;
__no_init   unsigned char   Hour	  @ 0x20D;
__no_init   unsigned char   Week	  @ 0x20E;
__no_init   unsigned char   Day		  @ 0x20F;
__no_init   unsigned char   Month	  @ 0x210;
__no_init   unsigned char   Year[2]       @ 0x211;
__no_init   unsigned char   ChkClk        @ 0x213;

__no_init   unsigned char   ygzip         @ 0x214;
__no_init   unsigned char   ygjip         @ 0x215;
__no_init   unsigned char   ygfip         @ 0x216;
__no_init   unsigned char   ygpip         @ 0x217;
__no_init   unsigned char   yggip         @ 0x218;
__no_init   unsigned char   wgzip         @ 0x219;
//__no_init   unsigned char   wgjip         @ 0x21A;
//__no_init   unsigned char   wgfip         @ 0x21B;
//__no_init   unsigned char   wgpip         @ 0x21C;
//__no_init   unsigned char   wggip         @ 0x21D;
__no_init   unsigned char   chkip         @ 0x21A;



__no_init   unsigned char   YgKwhZXS     @ 0x21F;          //0x220~0x223     当前总有功电能
__no_init   unsigned char   YgKwhJXS     @ 0x220;          //0x224~0x227     当前尖峰有功电能
__no_init   unsigned char   YgKwhFXS     @ 0x221;          //0x228~0x22B     当前峰有功电能
__no_init   unsigned char   YgKwhPXS     @ 0x222;          //0x22C~0x22F     当前平有功电能
__no_init   unsigned char   YgKwhGXS     @ 0x223;          //0x230~0x233     当前谷有功电能
__no_init   unsigned char   WgKwhZXS     @ 0x224;          //0x245~0x248     当前总无功电能
//__no_init   unsigned char   WgKwhJXS     @ 0x225;          //0x249~0x24C     当前尖峰无功电能
//__no_init   unsigned char   WgKwhFXS     @ 0x226;          //0x24D~0x250     当前峰无功电能
//__no_init   unsigned char   WgKwhPXS     @ 0x227;          //0x251~0x254     当前平无功电能
//__no_init   unsigned char   WgKwhGXS     @ 0x228;          //0x255~0x258     当前谷无功电能
__no_init   unsigned char   ChkXS        @ 0x225;          //0x244           当前电量数据校验

__no_init   unsigned int    pulse1       @ 0x226;
__no_init   unsigned int    pulse2       @ 0x228;





__no_init   unsigned char   YgKwhZ[3]    @ 0x230;          //0x220~0x223     当前总有功电能
__no_init   unsigned char   YgKwhJ[3]    @ 0x233;          //0x224~0x227     当前尖峰有功电能
__no_init   unsigned char   YgKwhF[3]    @ 0x236;          //0x228~0x22B     当前峰有功电能
__no_init   unsigned char   YgKwhP[3]    @ 0x239;          //0x22C~0x22F     当前平有功电能
__no_init   unsigned char   YgKwhG[3]    @ 0x23C;          //0x230~0x233     当前谷有功电能
__no_init   unsigned char   ChkYg        @ 0x23F;          //0x244           当前电量数据校验
__no_init   unsigned char   WgKwhZ[3]    @ 0x240;          //0x245~0x248     当前总无功电能
//__no_init   unsigned char   WgKwhJ[3]    @ 0x243;          //0x249~0x24C     当前尖峰无功电能
//__no_init   unsigned char   WgKwhF[3]    @ 0x246;          //0x24D~0x250     当前峰无功电能
//__no_init   unsigned char   WgKwhP[3]    @ 0x249;          //0x251~0x254     当前平无功电能
//__no_init   unsigned char   WgKwhG[3]    @ 0x24C;          //0x255~0x258     当前谷无功电能
__no_init   unsigned char   ChkWg        @ 0x243;          //0x269           当前电量数据校验

__no_init   unsigned char   diswork[5]   @ 0x250;





                                                            //0x26A~0x2FF     空闲


__no_init   unsigned int    EspState        @ 0x500;            //0x20A~0x20B   
__no_init   unsigned int    MeterRunState   @ 0x502;            //0x20C~0x20D
__no_init   unsigned char   disbit1         @ 0x504;

__no_init   unsigned char   flbzh           @ 0x50A;
__no_init   unsigned char   bgbzh           @ 0x50B;
__no_init   unsigned char   bgtimer         @ 0x50C;
//0x50B~0x580     空闲




__no_init   unsigned char   ubV1Rms[3]       @ 0x560;         //0x5A0~0x5A2     电压 
__no_init   unsigned char   ubIRms[3]        @ 0x563;         //0x5A3~0x5A5     电流
__no_init   unsigned char   iPowerFct[3]      @ 0x566;

__no_init   long            ActEnergy1       @ 0x570;         //通道1的有功能量
__no_init   long            ActEnergy2       @ 0x574;         //通道2的有功能量
__no_init   long            ReActEnergy      @ 0x578;	      //无功能量
__no_init   long            AppEnergy        @ 0x57C;	      //视功能量
__no_init   unsigned int    PowerFct         @ 0x580;         //功率因数
__no_init   int             iCapInd          @ 0x582;         //感性容性





long          		lActEnergy1;			//通道1的有功能量
long          		lActEnergy2;			//通道2的有功能量
long          		lReActEnergy;			//无功能量
long          		lAppEnergy;			//视功能量
long          		lActensper1;			//通道1的每周期有功能量
long          		lActensper2;			//通道2的每周期有功能量
unsigned int  		uiPowerFct;			//功率因数
int           		iCapInd;			//感性容性
unsigned long 		ulMainsPeriod;			//电网周期
unsigned int  		uiMainsCnt;			//周期计数器
unsigned int  		uiV1Rms;			//电压
unsigned long 		ulIRms;				//电流

unsigned int		SystemFlag;			//系统标志位
unsigned char           BtCycle;			//0.5秒计数器
unsigned int 		uESP430_STAT0;


unsigned char      ucChkFlg; 
unsigned long      ulActP1;
#ifdef TAMPER_DETECTION
  unsigned long      ulActP2;
#endif
  unsigned long      ulReActP;
  unsigned long      ulAppP;

  unsigned long      ulMainsPeriodBak;
  unsigned long long ullMainsCntBak;
  unsigned int       uiMainsFrequency;
  long                iPf;
  unsigned long      ulLastActP;
  
  unsigned char      ulPulsKwhQp;
  unsigned char      ucActPulseCycle;
  unsigned char      ucReActPulseCycle;
  unsigned char      ucPulsKwhPp;
  unsigned char      ucPulsKwhQp;
  unsigned long long ullAccKwhPp;
  unsigned long long ullAccKwhQp;
  int               REACT_PULSE_CYCLE;

  
 unsigned int        Pages;
 unsigned char       Ms_1;











//ESP 参数设置定义
typedef struct
{
  int			iPhaseCorr1;			//电流1相位校正值       2
  unsigned int 		uiGainCorr1;			//功率P1增益修正值      2
  unsigned int 	        uiAdaptI1;			//电流1匹配因子         2 
  long         		lPowerOffset1;			//功率P1功率偏益值      4
  unsigned long		ulStartCurrent;		        //启动电流值            4
  unsigned int 		uiNomFreq;			//标称电网频率值        2 
  unsigned int 		uiVDropLevel;			//下跌检测电压值        2
  unsigned int 		uiVPeakLevel;			//峰值电压值            2
  unsigned int 		uiIPeakLevel;			//峰值电流值            2
  unsigned char		ucDcRemPer;			//去直流周期数          1
  unsigned int 		uiV1Gain;			//                      2
  unsigned long	        ulIGain;			//                      4
  signed int   		iTempSampleOffset;	        //                      2
} EspDef;
__no_init EspDef Esp @ 0x590;

⌨️ 快捷键说明

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