defvar.h
来自「电能表源码」· C头文件 代码 · 共 186 行
H
186 行
/*************************************************************************************
文件类型:
文件作用:程序变量定义,用户可以自己修改和定义
修改权限:
文件相关:
创 建 人:GeminiKQ
创建日期:2006.12.20
当前版本:Ver0.1
版本信息:Ver0.1 GeminiKQ
**************************************************************************************/
//#include "typedef.h"
#include "ChipMac.h"
#ifdef MAIN
#define EXTERN
const unsigned char code clr_bittable[]= // 清零表格
{0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
const unsigned char code set_bittable[]= // 置位表格
{BIT0,BIT1,BIT2,BIT3,BIT4,BIT5,BIT6,BIT7};
#else
#define EXTERN extern
EXTERN const unsigned char code clr_bittable[];
EXTERN const unsigned char code set_bittable[];
#endif
EXTERN struct coredata_tablestruct *ID_coretalbpoint[4]; //核心数据指针
EXTERN uint8 xdata ram[100] ; //地址与数据存贮结构中的RAM表格一致
EXTERN uint8 xdata wr_buff[50]; //读写缓存
EXTERN Word32 xdata data_addr; //读写地址
//程序运行状态
EXTERN uint8 sta_meterrun; //0:正常模式,1:编程模式,2,厂内模式,4休眠模式、5激活模式、6、停电抄表模式
EXTERN uint8 time_runprosta; //编程模式下运行时间。默认10分钟
//中断标志位
EXTERN uint32 buff_flagint; //存贮中断标志位设置情况
EXTERN uint8 time_qiandong; //防潜时间
//===========================================
//电量累加变量
//===========================================
//EXTERN bit bdata F_stordot_z,F_storint; //电量存贮标志位
EXTERN bit bdata F_energeadd; //能量累加模块运行标志
EXTERN uint32 buffer_energ[2]; //CF缓存
EXTERN uint8 sumCF_Z; //CF累加器
EXTERN uint8 xiaoshu; // 小数
EXTERN uint8 F_cfopen; //CF开标志
EXTERN uint8 count_opencftime; //CF开延时
EXTERN uint8 count_errenergmode; //CF飞走错次数
//===========================================
//时钟模块变量、定时器变量
//===========================================
EXTERN bit bdata Flg_rtvrefresh; //RTC时钟刷新标志
EXTERN uint8 times_10ms; //10ms中断的次数
//按键变量
EXTERN union byte_define flag_keypag; //按键状态扫描寄存器
EXTERN uint8 sta_keypag; //按键当前所处状态:
EXTERN uint8 time_keypag_on; //按键按下持续的时间
//LCD显示变量
EXTERN bit data flag_startlcddisp; //显示秒刷新时间到标志位
EXTERN bit data flag_lunxian; //以设轮显参数标志位
EXTERN uint8 curent_dispoint; //当前显示项指针
EXTERN uint8 point_dipnum; //当前显示号。
EXTERN uint8 time_dispdelay; //事件显示延时
EXTERN uint8 time_turn; //自动轮显时间计数器
EXTERN uint8 time_lunxian; //自动轮显时间
EXTERN uint8 type_dispevent; //显示事件包括:无事件发生,按键上翻、下翻;红外按键上翻、下翻,按键和红外
EXTERN uint8 station_disp; //当前显示状态:自动、按键、轮显、红外遥控
EXTERN uint8 disp_buffer[16]; //显示缓存
//通讯处理变量
EXTERN uint8 F_commudiv; //通讯符号显示标志
EXTERN uint8 *point_addr; //数据缓存指针
EXTERN uint8 *len_data; //数据长度
EXTERN uint8 *type_protcl; //规约类型
EXTERN uint8 *sta_chanel; //通道状态
EXTERN uint8 type_channel; //通道类型 0:485 1:红外
//通讯模块变量定义
EXTERN uint8 xdata buff_485data[25]; //485通讯缓冲
EXTERN uint8 len_485commdata; //接收到数据的个数
EXTERN uint8 point_sendaddr; //发送数据指针
EXTERN uint8 timedelay_comm; //通讯等待延时
EXTERN uint8 sta_485comm; //485通讯当前状态:0:等待 1:接受 2:挂起 3:发送
EXTERN uint8 jiaoyan_type; //校验类型 0:偶校验 1:奇校验、2:无校验。
EXTERN uint8 type_protocl485; //规约类型 0:全国规约 1:IEE规约
EXTERN uint16 buff_485rec; //485接收缓存
//红外通讯变量
EXTERN uint8 xdata buff_reddata[25]; //红外通讯缓冲
EXTERN uint8 len_infrcommdata; //接收到数据的个数
EXTERN uint8 point_infrsendaddr; //发送数据指针
EXTERN uint8 timedelay_infrcomm; //通讯等待延时
EXTERN uint8 sta_infrcomm; //红外通讯当前状态:0:等待 1:接受 2:挂起 3:发送
EXTERN uint8 jiaoyan_typeinfr; //校验类型 0:偶校验 1:奇校验、2:无校验。
EXTERN uint8 type_protoclinfr; //规约类型 0:全国规约 1:IEE规约
EXTERN uint16 buff_intrrec; //红外接收缓存
//通讯处理变量
EXTERN uint8 F_commudiv; //通讯符号显示标志
EXTERN uint8 *point_addr; //数据缓存指针
EXTERN uint8 *len_data; //数据长度
EXTERN uint8 *type_protcl; //规约类型
EXTERN uint8 *sta_chanel; //通道状态
EXTERN uint8 type_channel; //通道类型 0:485 1:红外
//===============================================================================================
//需量计算变量
//==========================================================================================
EXTERN uint16 time_maichong_z,time_maichong_f; //CF脉冲累加时间
EXTERN uint16 time_count_z,time_count_f; //时间计数器
EXTERN uint16 num_xuliangCF_z,num_xuliangCF_f; //在需量周期内CF个数
EXTERN uint8 flag_xuliangmode,flag_xuliangminut; //需量模块运行标志,需量周期计算标志
EXTERN uint8 time_xuliangcount,xuliang_zhouqi; //需量周期计数器
EXTERN uint16 offset_xuliangaddr; //需量偏移地址
EXTERN bit bdata F_refreshxuliang; //最大需量保存标志
//===========================================================================================
//到抄表日转存历史数据变量
//============================================================================================
EXTERN uint8 chaobiaori_data; //抄表日
EXTERN uint8 sta_zhuancun; //转存状态
EXTERN uint8 flag_zhuancun_run; //转存运行标志
EXTERN uint8 bufftime;
//========================================================================================
//有效值变量
//========================================================================================
EXTERN bit bdata flag_realdatarefresh; //瞬时值刷新时间到标志位
EXTERN uint8 type_refreshdata; //瞬时值刷新类型
EXTERN uint8 Flg_kwhfangxiang; //功率方向
//========================================================================================
//拉合闸变量
//=========================================================================================
EXTERN uint8 time_plusswitch; //拉合闸脉冲宽度
EXTERN bit bdata flag_runswitchmode; //拉合闸模块运行
EXTERN uint16 delay_cftime; //CF时间间隔
EXTERN uint16 timocount_cf; //CF计时器
//=========================================================================================
//程序自检参数
//=========================================================================================
//EXTERN bit bdata flag_runcheckmode; //自检模块运行标志位
//EXTERN uint8 flag_mincheck; //分钟检测标志位
//EXTERN uint8 count_flagereas[7]; //flash擦除等待时间计数器
//EXTERN uint8 count_erastindianpage; //停电保存页擦除等待时间
//EXTERN uint8 times_pllerror; //pll错误时间
//停电模块
EXTERN uint16 time_dispsleep; //停电显示时间
EXTERN uint16 time_jihuo; //激活时间
EXTERN uint16 time_lostiv; //停电防窃电时间
EXTERN uint16 test_data;
//======================================================
//
//==============================================================
EXTERN uint8 comm; //通讯符号标志
EXTERN uint8 battest; //电池检测标志
//==============================================
// 需量参数
//==============================================
EXTERN uint8 xdata xuliang[60]; // 最大需量表格
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?