📄 att702x.h
字号:
#ifndef _ATT702X_H_
#define _ATT702X_H_
#define ATT_COMMAND_ADDR_CLRCAL 0xC3
#define ATT_COMMAND_VALUE_CLRCAL 0x000000
#define ATT_COMMAND_ADDR_READCAL 0xC6
#define ATT_COMMAND_VALUE_READCAL 0x00005a
#define ATT_COMMAND_ADDR_CALENA 0xC9
#define ATT_COMMAND_VALUE_CALENA 0x000000
#define ATT_COMMAND_VALUE_CALDIS 0x000001
#define ATT_COMMAND_ADDR_RESET 0xD3
#define ATT_COMMAND_VALUE_RESET 0x000000
#define ATT_REGISTER_LEN 3
#define ATT_VALUE_ENLINEFREQ (unsigned long)(0x007812)
#define ATT_VALUE_ENHARMONIC (unsigned long)(0x0055AA)
#define ATT_VALUE_DISABLELINEFREQ (unsigned long)(0x596655)
#define ATT_VALUE_ENCURRENTSEQ (unsigned long)(0x005678)
#define ATT_VALUE_DISABLECURRENTSEQ (unsigned long)(0xA5A5A5)
#define ATT_VALUE_ENVANGLE (unsigned long)(0x003584)
#define ATT_VALUE_DISABLEVANGLE (unsigned long)(0xA55A5A)
#define ATT_PFLAG_MASK_BIT 0x01
#define ATT_PFLAG_MASK_PA 0x01
#define ATT_PFLAG_MASK_PB 0x02
#define ATT_PFLAG_MASK_PC 0x04
#define ATT_PFLAG_MASK_PT 0x08
#define ATT_PFLAG_MASK_QA 0x10
#define ATT_PFLAG_MASK_QB 0x20
#define ATT_PFLAG_MASK_QC 0x40
#define ATT_PFLAG_MASK_QT 0x80
#define ATT_SFLAG_MASK_VSEQERR 0x08 //电压相序错误位
#define ATT_SFLAG_MASK_ISEQERR 0x10 //电流相序错误位
//Register Numbers
#define ATT_REGISTER_CAL_NUMBER 42
/*********************************************************************\
ATT7026校表寄存器R/W
\*********************************************************************/
#define ATT_ADDR_IREGION1 0x02
#define ATT_ADDR_IREGION2 0x03
#define ATT_ADDR_IREGION3 0x04
#define ATT_ADDR_IREGION4 0x05
#define ATT_ADDR_PGAINA0 0x06
#define ATT_ADDR_PGAINB0 0x07
#define ATT_ADDR_PGAINC0 0x08
#define ATT_ADDR_PGAINA1 0x09
#define ATT_ADDR_PGAINB1 0x0A
#define ATT_ADDR_PGAINC1 0x0B
#define ATT_ADDR_PHSREGA0 0x0C
#define ATT_ADDR_PHSREGA1 0x0D
#define ATT_ADDR_PHSREGA2 0x0E
#define ATT_ADDR_PHSREGA3 0x0F
#define ATT_ADDR_PHSREGA4 0x10
#define ATT_ADDR_PHSREGB0 0x11
#define ATT_ADDR_PHSREGB1 0x12
#define ATT_ADDR_PHSREGB2 0x13
#define ATT_ADDR_PHSREGB3 0x14
#define ATT_ADDR_PHSREGB4 0x15
#define ATT_ADDR_PHSREGC0 0x16
#define ATT_ADDR_PHSREGC1 0x17
#define ATT_ADDR_PHSREGC2 0x18
#define ATT_ADDR_PHSREGC3 0x19
#define ATT_ADDR_PHSREGC4 0x1A
#define ATT_ADDR_UGAINA 0x1B
#define ATT_ADDR_UGAINB 0x1C
#define ATT_ADDR_UGAINC 0x1D
#define ATT_ADDR_IRECHG 0x1E
#define ATT_ADDR_ISTARTUP 0x1F
#define ATT_ADDR_HFCONST 0x20
#define ATT_ADDR_LFCONST 0x21
#define ATT_ADDR_IGAINA 0x26
#define ATT_ADDR_IGAINB 0x27
#define ATT_ADDR_IGAINC 0x28
#define ATT_ADDR_FAILVOLTAGE 0x29
#define ATT_ADDR_EADDMODE 0x2a
#define ATT_ADDR_ENLINEFREQ 0x2D
#define ATT_ADDR_ENUANGLE 0x2E
#define ATT_ADDR_ENDTIORDER 0x30
#define ATT_ADDR_ENHARMONIC 0x3C
#define ATT_ADDR_HFDOUBLE 0x3E
#define ATT_ADDR_UADCPGA 0x3F
/***********************************************************************\
ATT7026输出参数寄存器Read Only
\***********************************************************************/
#define ATT_ADDR_PA 0x01
#define ATT_ADDR_PB 0x02
#define ATT_ADDR_PC 0x03
#define ATT_ADDR_PT 0x04
#define ATT_ADDR_QA 0x05
#define ATT_ADDR_QB 0x06
#define ATT_ADDR_QC 0x07
#define ATT_ADDR_QT 0x08
#define ATT_ADDR_SA 0x09
#define ATT_ADDR_SB 0x0A
#define ATT_ADDR_SC 0x0B
#define ATT_ADDR_ST 0x0C
#define ATT_ADDR_URMSA 0x0D
#define ATT_ADDR_URMSB 0x0E
#define ATT_ADDR_URMSC 0x0F
#define ATT_ADDR_IRMSA 0x10
#define ATT_ADDR_IRMSB 0x11
#define ATT_ADDR_IRMSC 0x12
#define ATT_ADDR_IRMST 0x13
#define ATT_ADDR_PFA 0x14
#define ATT_ADDR_PFB 0x15
#define ATT_ADDR_PFC 0x16
#define ATT_ADDR_PFT 0x17
#define ATT_ADDR_PGA 0x18
#define ATT_ADDR_PGB 0x19
#define ATT_ADDR_PGC 0x1A
#define ATT_ADDR_PGT 0x1B
#define ATT_ADDR_FREQ 0x1C
#define ATT_ADDR_EPA 0x1E
#define ATT_ADDR_EPB 0x1F
#define ATT_ADDR_EPC 0x20
#define ATT_ADDR_EPT 0x21
#define ATT_ADDR_EQA 0x22
#define ATT_ADDR_EQB 0x23
#define ATT_ADDR_EQC 0x24
#define ATT_ADDR_EQT 0x25
#define ATT_ADDR_RSPIDATA 0x28
#define ATT_ADDR_URMST 0x2B
#define ATT_ADDR_SFLAG 0x2C
#define ATT_ADDR_WSPIDATA1 0x2D
#define ATT_ADDR_WSPIDATA2 0x2E
#define ATT_ADDR_EFLAG 0x30
#define ATT_ADDR_EPA2 0x31
#define ATT_ADDR_EPB2 0x32
#define ATT_ADDR_EPC2 0x33
#define ATT_ADDR_EPT2 0x34
#define ATT_ADDR_EQA2 0x35
#define ATT_ADDR_EQB2 0x36
#define ATT_ADDR_EQC2 0x37
#define ATT_ADDR_EQT2 0x38
#define ATT_ADDR_PFLAG 0x3D
#define ATT_ADDR_CHKSUM1 0x3E
#define ATT_ADDR_UANGLE_A 0x5C
#define ATT_ADDR_UANGLE_B 0x5D
#define ATT_ADDR_UAGNLE_C 0x5E
#define ATT_ADDR_LINE_EPA 0x70
#define ATT_ADDR_LINE_EPB 0x71
#define ATT_ADDR_LINE_EPC 0x72
#define ATT_ADDR_LINE_EPT 0x73
#define ATT_ADDR_LINE_EQA 0x74
#define ATT_ADDR_LINE_EQB 0x75
#define ATT_ADDR_LINE_EQC 0x76
#define ATT_ADDR_LINE_EQT 0x77
#define SPI_WRITE_OPER 0x80
#define SPI_Read_OPER 0x7F
void Att702xSeqErrDet(void);
void Att702xReinit(void);
void Att702xValidityCheck(void);
void ReadActivePowerFromAtt702x(void);
void ReadReActivePowerFromAtt702x(void);
#if 0
void ReadLineActivePowerFromAtt702x(void);
void ReadLineReActivePowerFromAtt702x(void);
#endif
void ReadLinePowerFromAtt7022B(void);
void SpiWriteOrder(unsigned char addr,unsigned char wdata);
void Att702xWrite(unsigned char addr,unsigned char *data);
void Att702xRead(unsigned char addr,unsigned char *data);
extern unsigned short DeltaWattActiveZ[4];
extern unsigned short DeltaWattActiveF[4];
extern unsigned short DeltaWattReactiveZ[4];
extern unsigned short DeltaWattReactiveF[4];
extern unsigned short DeltaWattLActive[4];
extern unsigned short DeltaWattLReactive[4];
extern const unsigned char _att702x_wr[];
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -