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

📄 public.h

📁 用ADE7169F16单片机实现了单向多费4率电能表
💻 H
字号:
/*************************************
;Ade7169 demo program     
;*************************************
;AUTHOR:        Su RuTong
;DATE:          03 09 2006
;*************************************/

#ifndef _PUBLIC_H_
#define _PUBLIC_H_


//#include "ioADE7169F16.h"

#define BIT0 (0x01)
#define BIT1 (0x02)
#define BIT2 (0x04)
#define BIT3 (0x08)
#define BIT4 (0x10)
#define BIT5 (0x20)
#define BIT6 (0x40)
#define BIT7 (0x80)


#define __disable_interrupt() (EA=0)         // (IE&=0x7F)
#define __enable_interrupt()  (EA=1)         // (IE|=0x80)

typedef struct _sys_watt_data_
{
    unsigned int chksum;                            // 校验
    unsigned long WattHourLeft[2];                // 电能累计数:正向有功,反向有功;正向无功,反向无功;视在
    unsigned long req_pwr[2];
    unsigned char WattHourCounter[2];         // 电能的脉冲数:正向有功,反向有功;正向无功,反向无功;视在
}_sys_watt_data;

typedef struct _sys_realtime_wat_data_
{
    unsigned int chksum;                            // 校验
    unsigned long Watt[2];                // 电能累计数:正向有功,反向有功;正向无功,反向无功;视在
    unsigned long req_pwr[2];
    unsigned char WattCounter[2];         // 电能的脉冲数:正向有功,反向有功;正向无功,反向无功;视在
}_sys_realtime_wat_data;

typedef struct _sys_tariff_data_
{
    unsigned char chksum;
    unsigned char tariff;
    unsigned int wattpulsecnt[2];
    unsigned int vartpulsecnt[2];
    unsigned long watthour[2];
    unsigned long varthour[2];
}_sys_tariff_data;


typedef struct _sys_instantaneous_data_
{
    unsigned int chksum;                            // 校验
    unsigned int PER_FREQ;
    unsigned long Vrms;
    unsigned long Irms;
    unsigned long Waveform[2];
}_sys_inst_data;


extern _sys_tariff_data idata curdata; //current data
extern _sys_inst_data idata instdata;


extern unsigned char data green;
extern unsigned char data PERIPH_TMP;
extern void delay(unsigned int tt);

extern unsigned char Hex2BcdChar(unsigned char hex);
extern unsigned char Bcd2HexChar(unsigned char bcd);
extern unsigned short Hex2BcdShort(unsigned short hex);
extern unsigned short Bcd2HexShort(unsigned short bcd);
extern unsigned long Hex2BcdLong(unsigned long hex);
extern unsigned long Bcd2HexLong(unsigned long bcd);
extern unsigned char CalCS(unsigned char idata *ptr,unsigned char len);
extern void _reserved(void);
extern void _mem_set(unsigned char idata *dest,unsigned char dat,unsigned char len);



#endif


⌨️ 快捷键说明

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