📄 threephaseengine12.asm
字号:
PhC_W_FAcc_15_8 EQU 0xCD ; overwritten every line cycle
PhC_W_FAcc_23_16 EQU 0xCE
PhC_W_FAcc_31_24 EQU 0xCF
PhC_W_FAcc_39_32 EQU 0xD0
PhA_I_Abs_TMax EQU 0xD1 ; Temp value for abs max of ph A current, overwritten every line cycle
PhA_V_Abs_TMax EQU 0xD2 ; Temp value for abs max of ph A voltage, overwritten every line cycle
PhB_I_Abs_TMax EQU 0xD3 ; Temp value for abs max of ph B current, overwritten every line cycle
PhB_V_Abs_TMax EQU 0xD4 ; Temp value for abs max of ph B voltage, overwritten every line cycle
PhC_I_Abs_TMax EQU 0xD5 ; Temp value for abs max of ph C current, overwritten every line cycle
PhC_V_Abs_TMax EQU 0xD6 ; Temp value for abs max of ph C voltage, overwritten every line cycle
PhA_I_Abs_FMax EQU 0xD7 ; Final value for abs max of ph A current, accumulates over LINE_CYC
PhA_V_Abs_FMax EQU 0xD8 ; Final value for abs max of ph A voltage, accumulates over LINE_CYC
PhB_I_Abs_FMax EQU 0xD9 ; Final value for abs max of ph B current, accumulates over LINE_CYC
PhB_V_Abs_FMax EQU 0xDA ; Final value for abs max of ph B voltage, accumulates over LINE_CYC
PhC_I_Abs_FMax EQU 0xDB ; Final value for abs max of ph C current, accumulates over LINE_CYC
PhC_V_Abs_FMax EQU 0xDC ; Final value for abs max of ph C voltage, accumulates over LINE_CYC
Period_F_7_0 EQU 0xDD ; Final value is total period over LINE_CYC line cycles,
Period_F_15_8 EQU 0xDE ; overwritten every line cycle
Period_F_23_16 EQU 0xDF
FINAL_BANK_END EQU 0xFF ; End of final bank
; User accessible registers, must start on a 256 byte boundary
USER_BANK1 EQU 0x100 ; User bank 1, may be moved
MODE1_7_0 EQU 0x100 ; Operating mode register 1
;----Begin Bits----
MODE1_CREEP EQU 0x00 ; Creep is enabled if high
MODE1_SING_PHASE EQU 0x01 ; Multi-point phase corr if low, single point if high
MODE1_ABS EQU 0x02 ; Take positive energy only if high
MODE1_PHA_W_EN EQU 0x03 ; Phase A is enabled for energy acc when high
MODE1_PHB_W_EN EQU 0x04 ; Phase B is enabled for energy acc when high
MODE1_PHC_W_EN EQU 0x05 ; Phase C is enabled for energy acc when high
;----End Bits----
MODE1_15_8 EQU 0x101
;----Begin Bits----
;----End Bits----
STATUS1_7_0 EQU 0x104 ; Status register 1
;----Begin Bits----
STAT1_PHC_W_RAW_SIGN EQU 0x00 ; Sign of PHC_W_RAW before absolute value taken (if enabled)
STAT1_PHB_W_RAW_SIGN EQU 0x01 ; Sign of PHB_W_RAW before absolute value taken (if enabled)
STAT1_PHA_W_RAW_SIGN EQU 0x02 ; Sign of PHA_W_RAW before absolute value taken (if enabled)
;----End Bits----
STATUS1_15_8 EQU 0x105
;----Begin Bits----
;----End Bits----
CAL_CONTROL_7_0 EQU 0x108 ; Calibration control register 1
;----Begin Bits----
CAL_MODE EQU 0x00 ; Set high for calibration mode
CAL_UPDATE EQU 0x01 ; Set high to initiate LINE_CYC line cycles (goes low when complete)
CAL_DUMMYVAL EQU 0x02 ; Set high to activate simulated calibration
;----End Bits----
CAL_CONTROL_15_8 EQU 0x109
;----Begin Bits----
;----End Bits----
LINE_CYC_7_0 EQU 0x10A ; Line cycles to average for current and voltage
LINE_CYC_15_8 EQU 0x10B
LINE_CYC_CNT_7_0 EQU 0x10C ; Current line cycle count for average
LINE_CYC_CNT_15_8 EQU 0x10D
PHA_I_RMS_RAW2_7_0 EQU 0x110 ; Left adjusted Phase A current squared,
PHA_I_RMS_RAW2_15_8 EQU 0x111 ; final sum over LINE_CYC line cycles
PHA_I_RMS_RAW2_23_16 EQU 0x112
PHA_I_RMS_RAW2_31_24 EQU 0x113
PHA_I_RMS_RAW2_39_32 EQU 0x114
PHA_I_RMS_RAW2_47_40 EQU 0x115
PHA_I_RMS_RAW_7_0 EQU 0x116 ; Phase A RMS current
PHA_I_RMS_RAW_15_8 EQU 0x117
PHA_I_RMS_7_0 EQU 0x118 ; Phase A current in X A/LSB
PHA_I_RMS_15_8 EQU 0x119
PHA_V_RMS_RAW2_7_0 EQU 0x11A ; Left adjusted Phase A voltage squared,
PHA_V_RMS_RAW2_15_8 EQU 0x11B ; final sum over LINE_CYC line cycles
PHA_V_RMS_RAW2_23_16 EQU 0x11C
PHA_V_RMS_RAW2_31_24 EQU 0x11D
PHA_V_RMS_RAW2_39_32 EQU 0x11E
PHA_V_RMS_RAW2_47_40 EQU 0x11F
PHA_V_RMS_RAW_7_0 EQU 0x120 ; Phase A RMS voltage
PHA_V_RMS_RAW_15_8 EQU 0x121
PHA_V_RMS_7_0 EQU 0x122 ; Phase A voltage in X V/LSB
PHA_V_RMS_15_8 EQU 0x123
PHB_I_RMS_RAW2_7_0 EQU 0x124 ; Left adjusted Phase B current squared,
PHB_I_RMS_RAW2_15_8 EQU 0x125 ; final sum over LINE_CYC line cycles
PHB_I_RMS_RAW2_23_16 EQU 0x126
PHB_I_RMS_RAW2_31_24 EQU 0x127
PHB_I_RMS_RAW2_39_32 EQU 0x128
PHB_I_RMS_RAW2_47_40 EQU 0x129
PHB_I_RMS_RAW_7_0 EQU 0x12A ; Phase B RMS current
PHB_I_RMS_RAW_15_8 EQU 0x12B
PHB_I_RMS_7_0 EQU 0x12C ; Phase B current in X A/LSB
PHB_I_RMS_15_8 EQU 0x12D
PHB_V_RMS_RAW2_7_0 EQU 0x12E ; Left adjusted Phase B voltage squared,
PHB_V_RMS_RAW2_15_8 EQU 0x12F ; final sum over LINE_CYC line cycles
PHB_V_RMS_RAW2_23_16 EQU 0x130
PHB_V_RMS_RAW2_31_24 EQU 0x131
PHB_V_RMS_RAW2_39_32 EQU 0x132
PHB_V_RMS_RAW2_47_40 EQU 0x133
PHB_V_RMS_RAW_7_0 EQU 0x134 ; Phase B RMS voltage
PHB_V_RMS_RAW_15_8 EQU 0x135
PHB_V_RMS_7_0 EQU 0x136 ; Phase B voltage in X V/LSB
PHB_V_RMS_15_8 EQU 0x137
PHC_I_RMS_RAW2_7_0 EQU 0x138 ; Left adjusted Phase C current squared,
PHC_I_RMS_RAW2_15_8 EQU 0x139 ; final sum over LINE_CYC line cycles
PHC_I_RMS_RAW2_23_16 EQU 0x13A
PHC_I_RMS_RAW2_31_24 EQU 0x13B
PHC_I_RMS_RAW2_39_32 EQU 0x13C
PHC_I_RMS_RAW2_47_40 EQU 0x13D
PHC_I_RMS_RAW_7_0 EQU 0x13E ; Phase C RMS current
PHC_I_RMS_RAW_15_8 EQU 0x13F
PHC_I_RMS_7_0 EQU 0x140 ; Phase C current in X A/LSB
PHC_I_RMS_15_8 EQU 0x141
PHC_V_RMS_RAW2_7_0 EQU 0x142 ; Left adjusted Phase C voltage squared,
PHC_V_RMS_RAW2_15_8 EQU 0x143 ; final sum over LINE_CYC line cycles
PHC_V_RMS_RAW2_23_16 EQU 0x144
PHC_V_RMS_RAW2_31_24 EQU 0x145
PHC_V_RMS_RAW2_39_32 EQU 0x146
PHC_V_RMS_RAW2_47_40 EQU 0x147
PHC_V_RMS_RAW_7_0 EQU 0x148 ; Phase C RMS voltage
PHC_V_RMS_RAW_15_8 EQU 0x149
PHC_V_RMS_7_0 EQU 0x14A ; Phase C voltage in X V/LSB
PHC_V_RMS_15_8 EQU 0x14B
I_RMS_7_0 EQU 0x14C ; Phases A+B+C RMS current
I_RMS_15_8 EQU 0x14D
NEUT_I_RMS_RAW2_7_0 EQU 0x150 ; Left adjusted neutral line current squared,
NEUT_I_RMS_RAW2_15_8 EQU 0x151 ; final sum over LINE_CYC line cycles
NEUT_I_RMS_RAW2_23_16 EQU 0x152
NEUT_I_RMS_RAW2_31_24 EQU 0x153
NEUT_I_RMS_RAW2_39_32 EQU 0x154
NEUT_I_RMS_RAW2_47_40 EQU 0x155
NEUT_I_RMS_RAW_7_0 EQU 0x156 ; Neutral line RMS current
NEUT_I_RMS_RAW_15_8 EQU 0x157
NEUT_I_RMS_7_0 EQU 0x158 ; Neutral line current in X A/LSB
NEUT_I_RMS_15_8 EQU 0x159
NEUT_V_RMS_RAW2_7_0 EQU 0x15A ; Left adjusted neutral line voltage squared,
NEUT_V_RMS_RAW2_15_8 EQU 0x15B ; final sum over LINE_CYC line cycles
NEUT_V_RMS_RAW2_23_16 EQU 0x15C
NEUT_V_RMS_RAW2_31_24 EQU 0x15D
NEUT_V_RMS_RAW2_39_32 EQU 0x15E
NEUT_V_RMS_RAW2_47_40 EQU 0x15F
NEUT_V_RMS_RAW_7_0 EQU 0x160 ; Neutral line RMS voltage
NEUT_V_RMS_RAW_15_8 EQU 0x161
NEUT_V_RMS_7_0 EQU 0x162 ; Neutral line voltage in X V/LSB
NEUT_V_RMS_15_8 EQU 0x163
PHA_W_RAW_7_0 EQU 0x164 ; Phase A raw active power (V * I * period over one line cycle)
PHA_W_RAW_15_8 EQU 0x165
PHA_W_RAW_23_16 EQU 0x166
PHA_W_RAW_31_24 EQU 0x167
PHA_W_RAW_39_32 EQU 0x168
PHA_W_RAW_47_40 EQU 0x169
PHB_W_RAW_7_0 EQU 0x16A ; Phase B raw active power (V * I * period over one line cycle)
PHB_W_RAW_15_8 EQU 0x16B
PHB_W_RAW_23_16 EQU 0x16C
PHB_W_RAW_31_24 EQU 0x16D
PHB_W_RAW_39_32 EQU 0x16E
PHB_W_RAW_47_40 EQU 0x16F
PHC_W_RAW_7_0 EQU 0x170 ; Phase C raw active power (V * I * period over one line cycle)
PHC_W_RAW_15_8 EQU 0x171
PHC_W_RAW_23_16 EQU 0x172
PHC_W_RAW_31_24 EQU 0x173
PHC_W_RAW_39_32 EQU 0x174
PHC_W_RAW_47_40 EQU 0x175
PHA_W_7_0 EQU 0x176 ; Phase A active power (in X W/LSB), offset and gain corrected,
PHA_W_15_8 EQU 0x177 ; over one line cycle
PHA_W_23_16 EQU 0x178
PHA_W_31_24 EQU 0x179
PHB_W_7_0 EQU 0x17A ; Phase B active power (in X W/LSB), offset and gain corrected,
PHB_W_15_8 EQU 0x17B ; over one line cycle
PHB_W_23_16 EQU 0x17C
PHB_W_31_24 EQU 0x17D
PHC_W_7_0 EQU 0x17E ; Phase C active power (in X W/LSB), offset and gain corrected,
PHC_W_15_8 EQU 0x17F ; over one line cycle
PHC_W_23_16 EQU 0x180
PHC_W_31_24 EQU 0x181
PHA_VA_RAW_7_0 EQU 0x182 ; Phase A raw apparent power (VRMS * IRMS * PERIOD over
PHA_VA_RAW_15_8 EQU 0x183 ; LINE_CYC line cycles)
PHA_VA_RAW_23_16 EQU 0x184
PHA_VA_RAW_31_24 EQU 0x185
PHA_VA_RAW_39_32 EQU 0x186
PHA_VA_RAW_47_40 EQU 0x187
PHB_VA_RAW_7_0 EQU 0x188 ; Phase B raw apparent power (VRMS * IRMS * PERIOD over
PHB_VA_RAW_15_8 EQU 0x189 ; LINE_CYC line cycles)
PHB_VA_RAW_23_16 EQU 0x18A
PHB_VA_RAW_31_24 EQU 0x18B
PHB_VA_RAW_39_32 EQU 0x18C
PHB_VA_RAW_47_40 EQU 0x18D
PHC_VA_RAW_7_0 EQU 0x18E ; Phase C raw apparent power (VRMS * IRMS * PERIOD over
PHC_VA_RAW_15_8 EQU 0x18F ; LINE_CYC line cycles)
PHC_VA_RAW_23_16 EQU 0x190
PHC_VA_RAW_31_24 EQU 0x191
PHC_VA_RAW_39_32 EQU 0x192
PHC_VA_RAW_47_40 EQU 0x193
PHA_VA_7_0 EQU 0x194 ; Phase A apparent power (in X VA/LSB), offset and gain corrected,
PHA_VA_15_8 EQU 0x195 ; over LINE_CYC line cycles)
PHA_VA_23_16 EQU 0x196
PHA_VA_31_24 EQU 0x197
PHB_VA_7_0 EQU 0x198 ; Phase B apparent power (in X VA/LSB), offset and gain corrected,
PHB_VA_15_8 EQU 0x199 ; over LINE_CYC line cycles)
PHB_VA_23_16 EQU 0x19A
PHB_VA_31_24 EQU 0x19B
PHC_VA_7_0 EQU 0x19C ; Phase C apparent power (in X VA/LSB), offset and gain corrected,
PHC_VA_15_8 EQU 0x19D ; over LINE_CYC line cycles)
PHC_VA_23_16 EQU 0x19E
PHC_VA_31_24 EQU 0x19F
PHA_VAR_RAW_7_0 EQU 0x1A0 ; Phase A raw reactive power, over LINE_CYC line cycles
PHA_VAR_RAW_15_8 EQU 0x1A1
PHA_VAR_RAW_23_16 EQU 0x1A2
PHA_VAR_RAW_31_24 EQU 0x1A3
PHA_VAR_RAW_39_32 EQU 0x1A4
PHA_VAR_RAW_47_40 EQU 0x1A5
PHB_VAR_RAW_7_0 EQU 0x1A6 ; Phase B raw reactive power, over LINE_CYC line cycles
PHB_VAR_RAW_15_8 EQU 0x1A7
PHB_VAR_RAW_23_16 EQU 0x1A8
PHB_VAR_RAW_31_24 EQU 0x1A9
PHB_VAR_RAW_39_32 EQU 0x1AA
PHB_VAR_RAW_47_40 EQU 0x1AB
PHC_VAR_RAW_7_0 EQU 0x1AC ; Phase C raw reactive power, over LINE_CYC line cycles
PHC_VAR_RAW_15_8 EQU 0x1AD
PHC_VAR_RAW_23_16 EQU 0x1AE
PHC_VAR_RAW_31_24 EQU 0x1AF
PHC_VAR_RAW_39_32 EQU 0x1B0
PHC_VAR_RAW_47_40 EQU 0x1B1
PHA_VAR_7_0 EQU 0x1B2 ; Phase A reactive power (in X VAR/LSB), offset and gain corrected,
PHA_VAR_15_8 EQU 0x1B3 ; over LINE_CYC line cycles)
PHA_VAR_23_16 EQU 0x1B4
PHA_VAR_31_24 EQU 0x1B5
PHB_VAR_7_0 EQU 0x1B6 ; Phase B reactive power (in X VAR/LSB), offset and gain corrected,
PHB_VAR_15_8 EQU 0x1B7 ; over LINE_CYC line cycles)
PHB_VAR_23_16 EQU 0x1B8
PHB_VAR_31_24 EQU 0x1B9
PHC_VAR_7_0 EQU 0x1BA ; Phase C reactive power (in X VAR/LSB), offset and gain corrected,
PHC_VAR_15_8 EQU 0x1BB ; over LINE_CYC line cycles)
PHC_VAR_23_16 EQU 0x1BC
PHC_VAR_31_24 EQU 0x1BD
PERIOD_7_0 EQU 0x1C0 ; Total number of 1.6us clock ticks over last LINE_CYC line cycles
PERIOD_15_8 EQU 0x1C1
PERIOD_23_16 EQU 0x1C2
PERIOD_31_24 EQU 0x1C3
ENERGY_W_7_0 EQU 0x1C4 ; Total raw active energy accumulated so far
ENERGY_W_15_8 EQU 0x1C5
ENERGY_W_23_16 EQU 0x1C6
ENERGY_W_31_24 EQU 0x1C7
ENERGY_W_39_32 EQU 0x1C8
ENERGY_W_47_40 EQU 0x1C9
ENERGY_W_55_48 EQU 0x1CA
ENERGY_W_63_56 EQU 0x1CB
ENERGY_W_Z_7_0 EQU 0x1CC ; Total raw active energy accumulated since the
ENERGY_W_Z_15_8 EQU 0x1CD ; last read of this register
ENERGY_W_Z_23_16 EQU 0x1CE
ENERGY_W_Z_31_24 EQU 0x1CF
ENERGY_W_Z_39_32 EQU 0x1D0
ENERGY_W_Z_47_40 EQU 0x1D1
ENERGY_W_Z_55_48 EQU 0x1D2
ENERGY_W_Z_63_56 EQU 0x1D3
ENERGY_W_L_RAW_7_0 EQU 0x1D4 ; Total raw active energy accumulated over the
ENERGY_W_L_RAW_15_8 EQU 0x1D5 ; last LINE_CYC line cycles
ENERGY_W_L_RAW_23_16 EQU 0x1D6
ENERGY_W_L_RAW_31_24 EQU 0x1D7
ENERGY_W_L_RAW_39_32 EQU 0x1D8
ENERGY_W_L_RAW_47_40 EQU 0x1D9
ENERGY_W_L_7_0 EQU 0x1DA ; Total active energy, in X KWHr/LSB, over
ENERGY_W_L_15_8 EQU 0x1DB ; the last LINE_CYC line cycles
ENERGY_W_L_23_16 EQU 0x1DC
ENERGY_W_L_31_24 EQU 0x1DD
ENERGY_VA_7_0 EQU 0x1DE ; Total raw apparent energy accumulated so far
ENERGY_VA_15_8 EQU 0x1DF
ENERGY_VA_23_16 EQU 0x1E0
ENERGY_VA_31_24 EQU 0x1E1
ENERGY_VA_39_32 EQU 0x1E2
ENERGY_VA_47_40 EQU 0x1E3
ENERGY_VA_55_48 EQU 0x1E4
ENERGY_VA_63_56 EQU 0x1E5
ENERGY_VA_Z_7_0 EQU 0x1E6 ; Total raw apparent energy accumulated since the
ENERGY_VA_Z_15_8 EQU 0x1E7 ; last read of this register
ENERGY_VA_Z_23_16 EQU 0x1E8
ENERGY_VA_Z_31_24 EQU 0x1E9
ENERGY_VA_Z_39_32 EQU 0x1EA
ENERGY_VA_Z_47_40 EQU 0x1EB
ENERGY_VA_Z_55_48 EQU 0x1EC
ENERGY_VA_Z_63_56 EQU 0x1ED
ENERGY_VA_L_RAW_7_0 EQU 0x1EE ; Total raw apparent energy accumlated over
ENERGY_VA_L_RAW_15_8 EQU 0x1EF ; the last LINE_CYC line cycles
ENERGY_VA_L_RAW_23_16 EQU 0x1F0
ENERGY_VA_L_RAW_31_24 EQU 0x1F1
ENERGY_VA_L_RAW_39_32 EQU 0x1F2
ENERGY_VA_L_RAW_47_40 EQU 0x1F3
ENERGY_VA_L_7_0 EQU 0x1F4 ; Total apparent energy, in X KVAHr/LSB, over
ENERGY_VA_L_15_8 EQU 0x1F5 ; the last LINE_CYC line cycles
ENERGY_VA_L_23_16 EQU 0x1F6
ENERGY_VA_L_31_24 EQU 0x1F7
PHA_I_ABS_MAX EQU 0x1F8 ; Maximum absolute value of most significant bytes
PHA_V_ABS_MAX EQU 0x1F9 ; of ADC readings for current and voltage for all
PHB_I_ABS_MAX EQU 0x1FA ; three phases over the most recent LINE_CYC line
PHB_V_ABS_MAX EQU 0x1FB ; cycles
PHC_I_ABS_MAX EQU 0x1FC
PHC_V_ABS_MAX EQU 0x1FD
USER_BANK1_END EQU 0x1FF ; End user bank 1
USER_BANK2 EQU 0x200 ; User bank 2, must follow user bank 1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -