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

📄 munipulate7758.h

📁 ADE7758三相电能芯片读写源程序
💻 H
字号:
#ifdef	MANIP7758_GLOBALS 
#define	MANIP7758_EXT
#else
#define	MANIP7758_EXT extern
#endif

#define 	Addr_AWATTHR		0x01
#define 	Addr_BWATTHR		0x02
#define 	Addr_CWATTHR		0x03
#define	Addr_AVARHR		0x04
#define	Addr_BVARHR		0x05
#define	Addr_CVARHR		0x06
#define  	Addr_AVAHR			0x07
#define  	Addr_BVAHR			0x08
#define  	Addr_CVAHR			0x09
#define  	Addr_AIRMS			0x0a
#define  	Addr_BIRMS			0x0b
#define  	Addr_CIRMS			0x0c
#define  	Addr_AVRMS			0x0d
#define  	Addr_BVRMS			0x0e
#define  	Addr_CVRMS			0x0f
#define   Addr_FREQ			0x10
#define   Addr_TEMP			0x11
#define   Addr_WFORM		0x12
#define   Addr_OPMODE		0x13
#define   Addr_MMODE		0x14
#define   Addr_WAVMODE		0x15
#define   Addr_COMPMODE		0x16
#define   Addr_LCYCMODE		0x17
#define   Addr_MASK			0x18
#define   Addr_STATUS		0x19
#define   Addr_RSTATUS		0x1a
#define   Addr_ZXTOUT		0x1b		
#define   Addr_LINCYC		0x1c
#define   Addr_SAGCYC		0x1d
#define   Addr_SAGLVL		0x1e
#define   Addr_VPINTLVL		0x1f
#define   Addr_IPINTLVL		0x20
#define   Addr_VPEAK			0x21
#define   Addr_IPEAK			0x22
#define   Addr_GAIN			0x23
#define   Addr_AVRMSGAIN	0x24
#define   Addr_BVRMSGAIN	0x25
#define   Addr_CVRMSGAIN	0x26
#define   Addr_AGAIN			0x27
#define   Addr_BGAIN			0x28
#define   Addr_CGAIN			0x29
#define   Addr_AWG			0x2a
#define   Addr_BWG			0x2b
#define   Addr_CWG			0x2c
#define   Addr_AVARG			0x2d
#define   Addr_BVARG			0x2e
#define   Addr_CVARG			0x2f
#define   Addr_AVAG			0x30
#define   Addr_BVAG			0x31
#define   Addr_CVAG			0x32
#define   Addr_AVRMSOS		0x33
#define   Addr_BVRMSOS		0x34
#define   Addr_CVRMSOS		0x35
#define   Addr_AIRMSOS		0x36
#define   Addr_BIRMSOS		0x37
#define   Addr_CIRMSOS		0x38
#define   Addr_AWATTOS		0x39
#define   Addr_BWATTOS		0x3a
#define   Addr_CWATTOS		0x3b
#define   Addr_AVAROS			0x3c
#define   Addr_BVAROS			0x3d
#define   Addr_CVAROS			0x3e
#define   Addr_APHCAL		0x3f
#define   Addr_BPHCAL		0x40
#define   Addr_CPHCAL		0x41
#define   Addr_WDIV			0x42
#define   Addr_VARDIV		0x43
#define   Addr_VADIV			0x44
#define   Addr_APCFNUM		0x45
#define   Addr_APCFDEN		0x46
#define   Addr_VARCFNUM		0x47
#define   Addr_VARCFDEN		0x48

#define   Addr_CHKSUM		0x7e
#define   Addr_VERSION		0x7f


#define	P_7758NCS				HF_PDR3_P37
#define	P_7758NCS_active		P_7758NCS=1
#define	P_7758NCS_inactive		P_7758NCS=0
#define	SET_OUTPUT_7758NCS	HF_PCR3_PCR37=1

#define	P_7758CLK				HF_PDR3_P31
#define	P_7758CLK_LOW			P_7758CLK=1
#define	P_7758CLK_HIGH		P_7758CLK=0
#define	SET_OUTPUT_7758CLK	HF_PCR3_PCR31=1

#define	P_7758DIN				HF_PDR3_P36
#define	P_7758DIN_LOW			P_7758DIN=1
#define	P_7758DIN_HIGH		P_7758DIN=0
#define	SET_OUTPUT_7758DIN	HF_PCR3_PCR36=1

#define	P_7758DOUT				HF_PDR3_P30
#define	SET_INPUT_7758DOUT	HF_PCR3_PCR30=0

#define	P_7758IQR				HF_PDR4_P43
#define	SET_INT_MODE7758IQR	HF_PMR2_IRQ0=1

struct  Struct_Data7758{ 
 					union {
 						long AWATTHR;
 						uchar ACH_aw[4];
 						}U_aw;
					union {
 						long  BWATTHR;
 						uchar ACH_bw[4];
 						}U_bw;
					union {
 						long CWATTHR;
 						uchar ACH_cw[4];
 						}U_cw;
					union {
 						long AVARHR;
 						uchar ACH_avar[4];
 						}U_avar;
					union {
 						long BVARHR;
 						uchar ACH_bvar[4];
 						}U_bvar;
					union {
 						long CVARHR;
 						uchar ACH_cvar[4];
 						}U_cvar;
					union {
 						uint AIRMS;
 						uchar ACH_ai[2];
 						}U_ai;
					union {
 						uint BIRMS;
 						uchar ACH_bi[2];
 						}U_bi;
					union {
 						uint CIRMS;
 						uchar ACH_ci[2];
 						}U_ci;
					union {
 						uint AVRMS;
 						uchar ACH_av[2];
 						}U_av;
					union {
 						uint BVRMS;
 						uchar ACH_bv[2];
 						}U_bv;
					union {
 						uint CVRMS;
 						uchar ACH_cv[2];
 						}U_cv;
				};
struct Struct_meter_data
{
	long A_WattHr;
	long B_WattHr;
	long C_WattHr;
	long A_VarHr;
	long B_VarHr;
	long C_VarHr;
};
struct Struct_7758scl{
					uchar avscale;
					uchar bvscale;
					uchar cvscale;
					uchar aiscale;
					uchar biscale;
					uchar ciscale;
					uint    awscale;
					uint    bwscale;
					uint    cwscale;
					uint    avarscale;
					uint    bvarscale;
					uint    cvarscale;
					};

union Union_7758scl{
	   struct Struct_7758scl Str_58scl;
	   uchar ACH_scal[18];
           };

struct Struct_7758parameter{
			union{
				uchar OPMODE;
				uchar ACH_opm[1];
				}U_opm;
			union{
				uint APCFDEN;
				uchar ACH_apcf[2];
				}U_apcf;
	             union{
				uint VARCFDEN;
				uchar ACH_varcp[2];
				}U_varcp;
	             union{
				uint AWG;
				uchar ACH_awg[2];
				}U_awg;
	             union{
				uint BWG;
				uchar ACH_bwg[2];
				}U_bwg;
	             union{
				uint CWG;
				uchar ACH_cwg[2];
				}U_cwg;
			union{
				uint AVARG;
				uchar ACH_avarg[2];
				}U_avarg;
			union{
				uint BVARG;
				uchar ACH_bvarg[2];
				}U_bvarg;
			union{
				uint CVARG;
				uchar ACH_cvarg[2];
				}U_cvarg;	
			union{
				uchar WDIV;
				uchar ACH_wdiv[1];
				}U_wdiv;	
			union{
				uchar  VARDIV;
				uchar ACH_vardiv[1];
				}U_vardiv;	
			union
				{
				uchar APHCAL;
				uchar ACH_aphcal[1];
				}U_aphcal;
			union
				{
				uchar BPHCAL;
				uchar ACH_bphcal[1];
				}U_bphcal;
			union
				{
				uchar CPHCAL;
				uchar ACH_cphcal[1];
				}U_cphcal;
			union
				{
				uint AWATTOS;
				uchar  ACH_awattos[2];
				}U_awattos;
			union
				{
				uint BWATTOS;
				uchar  ACH_bwattos[2];
				}U_bwattos;
			union
				{
				uint CWATTOS;
				uchar  ACH_cwattos[2];
				}U_cwattos;
			union
				{
				uint AVAROS;
				uchar  ACH_avaros[2];
				}U_avaros;
			union
				{
				uint BVAROS;
				uchar  ACH_bvaros[2];
				}U_bvaros;
			union
				{
				uint CVAROS;
				uchar  ACH_cvaros[2];
				}U_cvaros;
			};

MANIP7758_EXT  struct  Struct_meter_data GST_MeterData;
MANIP7758_EXT  union   Union_7758scl  GU_7758scl;
MANIP7758_EXT  struct  Struct_Data7758  GST_58data;
MANIP7758_EXT	struct Struct_7758parameter GST_58para;

MANIP7758_EXT	uchar	GA_buf_rdwr7758[3];
MANIP7758_EXT     uint		GW_watt_scale;
MANIP7758_EXT     uint		GW_var_scale;

MANIP7758_EXT	uchar read_1byte7758(void);
MANIP7758_EXT	void  write_1byte7758(uchar PB_data);
MANIP7758_EXT 	void Data_wr7758(uchar PB_addr ,uchar *PP_data_point);
MANIP7758_EXT	void Data_rd7758(uchar PB_addr);
MANIP7758_EXT	void Read_58data_batch(void);
MANIP7758_EXT	void ini_7758(void);
MANIP7758_EXT	void sleep_7758com(void);
MANIP7758_EXT	void	ready_7758com(void);
MANIP7758_EXT     void  Energy_process(uchar PB_Addr,long *PPDW_Energy,
	long *PPDW_EnergBuf,uint PW_scal);
MANIP7758_EXT    void Process_store_v_cr(uchar PB_addr, uchar *PP_data);

⌨️ 快捷键说明

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