📄 extern.h
字号:
extern unsigned char TempCs_Comm; //发送数据帧的校验和
extern unsigned char SignData_Len; //标识下数据长度,2004.7.26添加
extern unsigned char CoutSign_Len; //块操作时子项计数,2004.7.26添加
extern unsigned int SignPrgrm; //编程标识;需要传给事件记录模块 初始值为0
extern unsigned int SignTrgDisp; //通信触发步显显示标识;需要传给显示模块 初始值为0
extern unsigned char Txd_Fe_Cnt; //发送FE个数
extern unsigned char Cf_Star; //脉冲认可标志
extern unsigned char Tx_Flg;
extern unsigned char Tmfh_Cnt; //
extern unsigned char CrntRStr_Flg[1]; //电流反向寄存器
extern unsigned char ClrPw_Accdnt[1]; //清零标志 = 0xe8成立 //非编程状态清零次数
extern unsigned char Batt_WorkSec_Cnt;
/***********************************************************************/
extern unsigned char Databuf[60]; //备用数据缓冲区
extern unsigned char LcdBuf_Disp[13]; //显示缓冲区
extern unsigned char CF_CUNT; //脉冲计数器
extern unsigned char Revp_Reg; //反向标志寄存器 = 0x38 表示电表在下电前有反向事件发生
extern float BrochkSec_Cnt;
extern unsigned int Cf_Alt_TmConst; //脉冲间隔时间常数
extern unsigned int Cf_Alt_TmCnt; //脉冲间隔时间计数
extern unsigned char Txd_Flg; //广播校时后秒计数器
/********************************************************************************************/
extern unsigned char SysData_Verify[16]; //RAM区系统数据校验区
/***************************************************************************************/
extern unsigned char RPPwrTtl_Dtr[4]; //(当前)正向有功总电能(+A) XXXXXXXX.XX kwh
extern unsigned char RNPwrTtl_Dtr[4]; //(当前)反向有功总电能(-A) XXXXXX.XX kWh
extern unsigned char RBatt_WorkTm_Dtr[3]; //电池工作时间 NNNNNN min
extern unsigned char RDtWk_Dtr[4]; //日期及周次 YYMMDDWW
extern unsigned char RTm_Dtr[3]; //时间 hhmmss
extern unsigned char RMtWd_Dtr[1]; //电表运行状态字(见附录B1)XX
extern unsigned char RMtCt_Dtr[3]; //电表常数(只读) NNNNNN
extern unsigned char RMtNo_Dtr[6]; //表号 NNNNNNNNNNNN
extern unsigned char RUsrNo_Dtr[6]; //用户号 NNNNNNNNNNNN
extern unsigned char RDvcNo_Dtr[6]; //设备号 NNNNNNNNNNNN
extern unsigned char RShftDspTm_Dtr[1]; //循显时间 XX s
extern unsigned char RStpDspTm_Dtr[1]; //停显时间 XX s
extern unsigned char RAUtRdTm_Dtr[2]; //自动抄表日期 DDhh
extern unsigned char RIntPwr_Dtr[4]; //有功电能起始读数 XXXXXX.XX kwh
extern unsigned char RPassWd_Dtr[4]; //密码权限及密码 NNNNNNNN
extern unsigned char RRttDspNo_Dtr[16]; //16个正常显示序号存放区序号
extern unsigned char RKeyDspNo_Dtr[16]; //16个按键显示序号存放区序号
extern unsigned char ROpnClsLcd_Dtr[4]; //开显示/关显示时间
extern unsigned char REnger_Clr[4]; //备份电量
/***************************************************************************************/
extern union MyFlg Rx_Command_Flg;
extern union MyFlg Txrx_state;
extern union MyFlg TxData_state;
extern union MyFlg Cf_int_reg;
extern union MyFlg TimDef_Reg;
extern union MyFlg Flag_Comm;
extern union MyFlg ErrByte_Comm; //错误信息字,1相应错误发生0无相应错误,其中第3,4,7位恒为0
extern union MyFlg TggerFlg_Disp;
extern union MyFlg OtherFlg_Disp;
extern union MyFlg AccdntRcd_Comm;
extern union MyFlg Cf_Flg;
extern union MyFlg Power_Flg;
extern union MyFlg Sys_Reg;
extern union MyFlg_Word DispFlag_Disp;
/****************************************************************************************/
void delay_10ms(void);
/***************************************************************************************/
#define NOP {nop();nop();}
/***************************************************************************************/
#define RxTxState_Comm Flag_Comm.BIT.B0 // SIO 收发状态标志;
#define NeedSign_Comm Flag_Comm.BIT.B1 // 续发标志,1为有效 0无效
#define Txd_Bgin Flag_Comm.BIT.B2 //rs485开始发送
#define Rx_Int Rx_Command_Flg.BIT.B0 /* */
#define Rx_Star Rx_Command_Flg.BIT.B1 /* */
#define Rx_End Rx_Command_Flg.BIT.B2 /*红外位接收结束*/
#define Rx_End_8bit Rx_Command_Flg.BIT.B3 /*红外1字节位长度*/
#define Rx_End_10bit Rx_Command_Flg.BIT.B4 /*红外1字节帧长度*/
#define Rx_bit_verf Rx_Command_Flg.BIT.B5
#define Rx_Stop Rx_Command_Flg.BIT.B6
#define AT_RxState Txrx_state.BIT.B2 /*红外字节接收完成标志*/
#define AT_TxState Txrx_state.BIT.B2 /*红外字节发送开始标志*/
#define AT_RxdState Txrx_state.BIT.B3 /*rs485字节接收完成标志*/
#define AT_TxdState Txrx_state.BIT.B3 /*rs485字节发送开始标志*/
#define Tx_Bgin TxData_state.BIT.B0 /*红外1字节发送开始标志*/
#define Tx_Next TxData_state.BIT.B1 /*红外1字节数据发送标志*/
#define Tx_Word_flg TxData_state.BIT.B2
#define Tx_Odd_flg TxData_state.BIT.B3 /*红外1字节偶校验发送标志*/
#define Tx_Odd TxData_state.BIT.B4 /*红外1字节偶校验*/
#define Tx_End TxData_state.BIT.B5 /*红外1字节发送结束标志*/
#define Cf_Int_Flg Cf_int_reg.BIT.B0 /*ADE7755脉冲中断标志*/
#define Cf_flg Cf_int_reg.BIT.B1 /*ADE7755脉冲中断生成标志*/
#define led_flg Cf_int_reg.BIT.B2 /*脉冲指示生成标志*/
#define Cf_Set Cf_int_reg.BIT.B3 /*脉冲生成标志*/
#define Time1s_Flg TimDef_Reg.BIT.B0 //秒信号
#define Time1s_Flg1 TimDef_Reg.BIT.B1 //秒信号
#define Time1s_Flg2 TimDef_Reg.BIT.B2
#define Time1s_Flg3 TimDef_Reg.BIT.B3
#define Time500ms_Flg TimDef_Reg.BIT.B4
#define Time1s_Flg4 TimDef_Reg.BIT.B5
#define Time1s_Flg5 TimDef_Reg.BIT.B6
#define Time1min_Flg TimDef_Reg.BIT.B7
#define Trig_Byte TggerFlg_Disp.BYTE //触发字节信号
#define AllFlg_Trig TggerFlg_Disp.BIT.B0 //全显 触发信号 初始值为1
#define Hello_Trig TggerFlg_Disp.BIT.B1 //Hello 触发信号
#define End_Trig TggerFlg_Disp.BIT.B2 //End 触发信号
#define Error_Trig TggerFlg_Disp.BIT.B3 //Error 触发信号
#define ClbrtTm_Trig TggerFlg_Disp.BIT.B4 //广播校时 触发信号
#define ComDisp_Trig TggerFlg_Disp.BIT.B5 //通讯步显 触发信号
#define KeyDisp_Trig TggerFlg_Disp.BIT.B6 //按键 触发信号
#define IrComm_Disp TggerFlg_Disp.BIT.B7 //背光点亮 触发信号
#define Disp_WORD DispFlag_Disp.WORD //显示字信号
#define AllFlg_Disp DispFlag_Disp.BIT.B0 //全显 显示信号
#define Hello_Disp DispFlag_Disp.BIT.B1 //Hello 显示信号
#define End_Disp DispFlag_Disp.BIT.B2 //End 显示信号
#define Error_Disp DispFlag_Disp.BIT.B3 //Error 显示信号
#define ClbrtTm_Disp DispFlag_Disp.BIT.B4 //广播校时 显示信号
#define ComDisp_Disp DispFlag_Disp.BIT.B5 //通讯步显 显示信号
#define KeyDisp_Disp DispFlag_Disp.BIT.B6 //按键 显示信号
#define E2Err_Disp DispFlag_Disp.BIT.B7 //E2出错 显示信号
#define R8025Err_Disp DispFlag_Disp.BIT.B8 //R8025出错 显示信号
#define Shut_Disp DispFlag_Disp.BIT.B9 //关显示 信号
#define Other_Byte OtherFlg_Disp.BYTE //其他字节信号
#define Hello_over OtherFlg_Disp.BIT.B0 //Hello 显示结束
#define TmSctChng_Disp OtherFlg_Disp.BIT.B1 //时段数改变信号
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -