📄 subconfig.h.bak
字号:
/************************************************************************
* 1 main.c
*************************************************************************/
#define MEMW_ENABLE 0xaa //
#define MEMW_FORBID 0x55 //
#define ADDENEPL_MODUL 0x0a //
#define COMM_MODUL 0x3a //
#define DIS_MODUL 0x4a //
/************************************************************************
* 2 RsCOMM.c
*************************************************************************/
#define CONS_TMR0_1200 117
#define COMMPTR_MAX 80
#define ComDisNum 0x07 //num of cdata table
#define RS_MinSize 12
#define RTx_MaxSize 80
#define RRx_MaxSize 48
///////////////////////////
// ComBuf define //
///////////////////////////
#define RS_HeadPtr 0
#define RS_AddrPtr 1
#define RS_Head0Ptr 7
#define RS_CtlPtr 8
#define RS_LenPtr 9
#define RS_Cmd 10
#define RS_CmdLPtr 10
#define RS_CmdHPtr 11
#define RS_DPtr 12
#define Rs_Head Comm.commBuff[0]
#define Rs_Addr Comm.commBuff[1]
#define Rs_Addr0 Comm.commBuff[1]
#define Rs_Addr1 Comm.commBuff[2]
#define Rs_Addr2 Comm.commBuff[3]
#define Rs_Addr3 Comm.commBuff[4]
#define Rs_Addr4 Comm.commBuff[5]
#define Rs_Addr5 Comm.commBuff[6]
#define Rs_Head0 Comm.commBuff[7]
#define Rs_Ctl Comm.commBuff[8]
#define Rs_Len Comm.commBuff[9]
#define Rs_IDL Comm.commBuff[10]
#define Rs_IDH Comm.commBuff[11]
#define Rs_Data Comm.commBuff[12]
#define Rs_Data2 Comm.commBuff[13]
#define Rs_Data3 Comm.commBuff[14]
#define Rs_Data4 Comm.commBuff[15]
#define Rs_WData Comm.commBuff[16]
#define Rs_CRC Comm.commBuff[RS_Cmd+Rs_Len]
#define Rs_End Comm.commBuff[RS_Cmd+Rs_Len+1]
/////////////////////////
// Control byte define //
/////////////////////////
#define RS_CTL_Read 0x01
#define RS_CTL_ReadCont 0x02
#define RS_CTL_ReRead 0x03
#define RS_CTL_Write 0x04
#define RS_CTL_AdjTime 0x08
#define RS_CTL_WrMetID 0x0A
#define RS_CTL_ChgBaut 0x0C
#define RS_CTL_ChgPswd 0x0F
#define RS_CTL_RstMD 0x10
#define RS_CTL_ECAdj 0x1E
#define RS_CTL_ReadAdd 0x1F
///////////////////////
// State byte define //
///////////////////////
#define RS_State_OK 0x00
#define RS_State_IVData 0x01
#define RS_State_IVID 0x02
#define RS_State_PswE 0x04
#define RS_State_NOres 0x08
//////////////////////////////
/// /////
//////////////////////////////
#define bit_IDSet 0x01 //
#define bit_ECClr 0x02 //
/////////////////////////////////
/// ////
////////////////////////////////
#define mmok 0x00 //
#define mmover 0x01 //
#define mmerr 0x02 //
#define keyoff 0x03 //
#define uferr 0x04 //
////////////////////////////////////
// Comm.status define
#define COMM_STATUS_INIT 1 //
#define COMM_STATUS_FREE 2 //
#define COMM_STATUS_URRX 3 //
#define COMM_STATUS_URANAL 4 //
#define COMM_STATUS_URTXRDY 5 //
#define COMM_STATUS_URTXFE 6 //
#define COMM_STATUS_URTX 7 //
#define COMM_MODE_RS485 0x80 //
#define COMM_TX_READY 0x10 //
/************************************************************************
* 3 addenetgy.c
*************************************************************************/
/************************************************************************
* 4 Mem.c
*************************************************************************/
#define E2P_COM 0x40*0
#define E2P_CS 0x40*1
#define E2P_CSBK 0x40*2
#define E2P_ALL 0x40*3
//#define DEFNum sizeof(DefTab)/sizeof(DEF_TAB)
#define CHECKWORD 0xa5
#define E2PBAK 0x0100
//csback area
#define E2P_TENINT 0xa000
#define E2P_RENINT E2P_TENINT+0x05
#define E2P_ZENINT E2P_RENINT+0x05
#define E2P_LENINT 0xa010
#define E2P_TENDEC E2P_LENINT+0x05
#define E2P_RENDEC E2P_TENDEC+1
#define E2P_ZENDEC E2P_RENDEC+1
#define E2P_LENDEC E2P_ZENDEC+1
#define E2P_PLUSE E2P_LENDEC+1
#define E2P_PLUSECK E2P_PLUSE+1
#define E2P_PREPAYSTATUS 0xa020 //电能表预付费状态 1+1
// =00,正常使用状态
// =01 低于报警1状态
// =02 低于报警2状态
// =03 过零使用状态
// =04 过赊欠使用状态
#define E2P_ARML1 0Xa022 //报警1门限 4+1
#define E2P_ARML2 0xa027 //报警2门限 4+1
#define E2P_CREDIT 0xa030 //赊欠电量门限 4+1字节
#define E2P_ID 0xa080 //表号
#define E2P_IDUSER 0xa088 //用户号
#define E2P_MM0 0xa090 //密码...
#define E2P_REECLR 0xa094 //电能初始化记录
#define E2P_OPW 0xa094+5 //超功率上限
#define E2P_DALYSTATUS 0xa0A0 //继电器状态控制字 =3A 继电器开; =A3,继电器关
#define E2P_USERDEFINE 0xa0A2 //0: =1 报警1有效
//1: =1 报警2有效
//2: =1 赊欠有效
#define E2P_EADJ 0xa0B0
#define E2P_BUY1 0xa0C0 //本次购电量
#define E2P_CNTIC 0xa0C0+5 //IC卡非法次数
#define E2P_ZBUY 0xa0C0+7 //累计购电量
/************************************************************************
* 5 SysInit.c
*************************************************************************/
/************************************************************************
* 6 LCD_Display.c 的相关常量声明
*************************************************************************/
//********************************************************************
// LCD character bitmap
// 0 a
// ----- -----
// | | | |
// 4| |1 f| |b
// | 5 | | g |
// ----- -----
// | | | |
// 6| |2 e| |c
// | 7 | | d |
// ----- *3 ----- *dpc
//*******************************************************************
//新疆预付费表液晶JX-H22621
#define DS_Chr_0 0xD7 // 0:
#define DS_Chr_1 0x06 // 1:
#define DS_Chr_2 0xE3 // 2:
#define DS_Chr_3 0xA7 // 3:
#define DS_Chr_4 0x36 // 4:
#define DS_Chr_5 0xB5 // 5:
#define DS_Chr_6 0xF5 // 6:
#define DS_Chr_7 0x07 // 7:
#define DS_Chr_8 0xF7 // 8:
#define DS_Chr_9 0xB7 // 9:
#define DS_Chr_A 0x77 // A:
#define DS_Chr_b 0xF4 // B:
#define DS_Chr_C 0xD1 // C:
#define DS_Chr_d 0xE6 // D:
#define DS_Chr_E 0xF1 // E:
#define DS_Chr_F 0x71 // F:
#define DS_Chr_H 0X76 // H:
#define DS_Chr_L 0XD0 // L:
#define DS_Chr_J 0x20 // -:
#define DS_Chr_P 0x72 // P:
#define DS_Chr_o 0xe4 // o:
#define DS_Chr_r 0x60 // r:
#define DS_Chr_Time 0x80 // DisBuff[11].byte.b7 //time
#define DS_Chr_Pkey 0x40 // DisBuff[11].byte.b6 //program status
#define DS_Chr_T4 0x20 // DisBuff[11].byte.b5 //triff 4,gu
#define DS_Chr_T2 0x10 // DisBuff[11].byte.b4 //triff 2,feng
#define DS_Chr_Erev 0x08 // DisBuff[11].byte.b3 //energy revase
#define DS_Chr_T3 0x04 // DisBuff[11].byte.b2 //triff 3,ping
#define DS_Chr_T1 0x02 // DisBuff[11].byte.b1 //triff 1,jian
#define DS_Chr_Last1 0x01 // DisBuff[11].byte.b0 //shang
#define DS_Chr_P1 0x80 // DisBuff[10].byte.b7 //time
#define DS_Chr_BAT 0x40 // DisBuff[10].byte.b6 //time
#define DS_Chr_PW 0x20 // DisBuff[10].byte.b5 //time
#define DS_Chr_RMB 0x10 // DisBuff[10].byte.b4 //time
#define DS_Chr_COMM 0x08 // DisBuff[10].byte.b3 //time
#define DS_Chr_ALRM 0x04 // DisBuff[10].byte.b2 //time
#define DS_Chr_Leave 0x80 //DisBuff[9].byte.b7 //time
#define DS_Chr_h 0x40 // DisBuff[9].byte.b6 //program status
#define DS_Chr_duan 0x20 // DisBuff[9].byte.b5 //triff 4,gu
#define DS_Chr_ENG 0x10 // DisBuff[9].byte.b4 //triff 2,feng
#define DS_Chr_P2 0x08 // DisBuff[9].byte.b3 //energy revase
#define DS_Chr_kW 0x04 // DisBuff[9].byte.b2 //triff 3,ping
#define DS_Chr_S4 0x02 // DisBuff[9].byte.b1 //triff 1,jian
#define DS_Chr_imp 0x01 // DisBuff[9].byte.b0 //shang
#define DS_Chr_P3 0x08 //DisBuff[8].byte.b3 //energy revase
#define DS_Chr_qian 0x08 // DisBuff[7].byte.b3 //energy revase
#define DS_Chr_CLO1 0x08 // DisBuff[6].byte.b3 //energy revase
#define DS_Chr_BUY 0x08 // DisBuff[5].byte.b3 //energy revase
#define DS_Chr_CLO2 0x08 // DisBuff[4].byte.b3 //energy revase
#define DS_Chr_DANJIA 0x08 // DisBuff[3].byte.b3 //energy revase
#define DS_Chr_ZONG 0x08 // DisBuff[2].byte.b3 //energy revase
#define DS_Chr_YUE 0x08 // DisBuff[1].byte.b3 //energy revase
#define DS_Chr_10BC 0x08 // DisBuff[0].byte.b3 //energy revase
// Display digit
#define DS_Unit 12 // max buffer num is 12
#define DS_BDig 11 // max serial number is 11
/* LcdDis.staus define */
// [B7:B4] include 16 status
#define DIS_STU_CYC 0x00 // cycle dispaly statue
#define DIS_STU_IC0 0x01 // reading card status
#define DIS_STU_IC1 0x02 // have card status
#define DIS_STU_RST 0x03 // sys reset status
//[B3:B0] 16 max assistant status
// 1 define when cycle status
#define DISSUBCYC_LEN 0x00 //leave energy display
#define DISSUBCYC_TEN 0x01 // total energy display
#define DISSUBCYC_CMD 0x02 // averge power display
#define DISSUBCYC_SYS 0x03 // sys error display
// 2 define when reading card
#define DISSUBIC0_COM 0x00 // reading card display
#define DISSUBIC0_OK 0x01 //read card ok display
#define DISSUBIC0_FAIL 0x01 //read card fail display
#define DISSUBIC0_BUY 0x02 //buy energy card display
// 3 define when have card
#define DISSUBIC1_IDH 0x00 // high meter id display
#define DISSUBIC1_IDL 0x01 //low meter id display
#define DISSUBIC1_BAM1 0x02 // alarm level1 energy display
#define DISSUBIC1_BAM2 0x03 // alarm level1 energy display
#define DISSUBIC1_OMD 0x04 // max demand limit display
/* define which even can trigger display item change */
#define DISTG_RESERT 0x01 // sys reset trigger
#define DISTG_AUTO 0x02 // time interval trigger
#define DISTG_KEY 0x03 // display key trigger
#define DISTG_CARDIN 0x04 // inserting card trigger
#define DISTG_CARDOUT 0x05 // pull out card trigger
/* LcdDis.ptr define */
#define DSPTR_RST 0 // sys reset display item
#define DSPTR_LEN 1 // leave energy display item
#define DSPTR_TEN 2 // total energy dispaly item
#define DSPTR_AMD 3 // average power display item
#define DSPTR_IDH 4 // meter id high display
#define DSPTR_IDL 5 // meter id low display
#define DSPTR_AM1 6 // alarm level 1 display
#define DSPTR_AM2 7 // alarm level 2 display
#define DSPTR_OPW 8 // over max deman display
#define DSPTR_BUY 9 // buy energy display
#define DSPTR_ZEN 10 // criedt energy display
#define DSPTR_RIC 11 // reading card display
#define DSPTR_TIC 12 // read card ok display
#define DSPTR_FIC 13 // read card fail display
#define DSPTR_SYS 14 // sys error information display
// LcdDis.tmrMd define
#define DSTMR_ATO 5 // auto display item change interval time
#define DSTMR_KEY 5 // key display item change interval time
#define DSTMR_IC 2 // when card in ,interval time
#define DSTMR_RST 4 //sys error information display interval time
//************************************************************************
//* 7 TOU.C
//*************************************************************************/
#define f_Sec 0x01 //
#define f_Min 0x02 //
#define f_Hou 0x04 //
#define f_Day 0x08 //
#define f_Mon 0x10 //
/************************************************************************
* 8 CData.c
*************************************************************************/
// ComInfo define
// 11000000 00000000 read or program ability
#define EN_R 0X8000 //enable read
#define EN_W 0x4000 //enable program
#define EN_RW 0xc000
//00111000 00000000 operate data type
#define P_ENO 0x0800*0 //EEPROM, no cs; no backup
#define P_ECS 0x0800*1 //EEPROM, cs; no backup
#define P_ECSBK 0x0800*2 //EEPROM, cs; backup
#define P_RNO 0x0800*3 //RAM,no cs; no backup
#define P_RCSBK 0x0800*4 //RAM, cs; backup
#define P_ALL 0x0800*7 //
// 00000110 00000000 operate security level
#define W_MM 0x0200*0 // only by password control
#define W_HKEY 0x0200*1 // also by hard-key control
#define W_SKEY 0x0200*2 // also by sofy-key control
#define W_FCT 0x0200*3 // by super level control.
// 00000001 11000000 special command operate
#define CM_GEN 0x0040*0 //general command
#define R_ZEC 0x0040*1 // block current energy data read
#define UR_TESHU 0x0040*7
// 00000000 00111111 operate data length
#define UR_LEN 0x003F //max length must less 63
/************************************************************************
* PrepayCNL.c
*************************************************************************/
#define REPAY_NATURAL 0x00
#define REPAY_ALRM1 0x01
#define REPAY_ALRM2 0x02
#define REPAY_ZERO 0x03
#define REPAY_CREDIT 0x04
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -