?? s805g3.src
字號:
CP RegulateVoltValue+1,#OUT_VOLT_240/256
JR UGT, SKIP_REGULATE_2_H
JR ULT, SKIP_CHECK_IF_LESS_203
CP RegulateVoltValue, #OUT_VOLT_240%256
JR ULT, SKIP_CHECK_IF_LESS_203
SKIP_REGULATE_2_H:
CLR Regulate_1_Time
CLR Regulate_2_Time_L
CLR Regulate_3_Time_H
CLR Regulate_3_Time_L
CLR Regulate_4_Time
CP Regulate_2_Time_H, #REGULATE_TIME
JR ULT, EXIT_REGULATE_2
REGULATE_TEAM_1
JP EXIT_REGULATE_2
SKIP_CHECK_IF_LESS_203:
CP RegulateVoltValue+1,#OUT_VOLT_203/256
JR UGT, EXIT_REGULATE_2
JR ULT, SKIP_REGULATE_2_L
CP RegulateVoltValue, #OUT_VOLT_203%256
JR UGT, EXIT_REGULATE_2
SKIP_REGULATE_2_L:
CLR Regulate_1_Time
CLR Regulate_2_Time_H
CLR Regulate_3_Time_H
CLR Regulate_3_Time_L
CLR Regulate_4_Time
CP Regulate_2_Time_L, #REGULATE_TIME
JR ULT, EXIT_REGULATE_2
REGULATE_TEAM_3
EXIT_REGULATE_2:
RET
REGULATE_3::
CP RegulateVoltValue+1,#OUT_VOLT_236/256
JR UGT, SKIP_REGULATE_3_H
JR ULT, SKIP_CHECK_IF_LESS_205
CP RegulateVoltValue, #OUT_VOLT_236%256
JR ULT, SKIP_CHECK_IF_LESS_205
SKIP_REGULATE_3_H:
CLR Regulate_1_Time
CLR Regulate_2_Time_H
CLR Regulate_2_Time_L
CLR Regulate_3_Time_L
CLR Regulate_4_Time
CP Regulate_3_Time_H, #REGULATE_TIME
JR ULT, EXIT_REGULATE_3
REGULATE_TEAM_2
JP EXIT_REGULATE_3
SKIP_CHECK_IF_LESS_205:
CP RegulateVoltValue+1,#OUT_VOLT_205/256
JR UGT, EXIT_REGULATE_3
JR ULT, SKIP_REGULATE_3_L
CP RegulateVoltValue, #OUT_VOLT_205%256
JR UGT, EXIT_REGULATE_3
SKIP_REGULATE_3_L:
CLR Regulate_1_Time
CLR Regulate_2_Time_H
CLR Regulate_2_Time_L
CLR Regulate_3_Time_H
CLR Regulate_4_Time
CP Regulate_3_Time_L, #REGULATE_TIME
JR ULT, EXIT_REGULATE_3
REGULATE_TEAM_4
EXIT_REGULATE_3:
RET
REGULATE_4::
CP RegulateVoltValue+1,#OUT_VOLT_238/256
JR UGT, SKIP_REGULATE_4
JR ULT, EXIT_REGULATE_4
CP RegulateVoltValue, #OUT_VOLT_238%256
JR ULT, EXIT_REGULATE_4
SKIP_REGULATE_4:
CLR Regulate_1_Time
CLR Regulate_2_Time_H
CLR Regulate_2_Time_L
CLR Regulate_3_Time_H
CLR Regulate_3_Time_L
CP Regulate_4_Time, #REGULATE_TIME
JR ULT, EXIT_REGULATE_4
REGULATE_TEAM_3
EXIT_REGULATE_4:
RET
;================================================
DEAL_DISPLAY:: ; Process display, use out volt average value in the 500ms
TM FlagReg, #DELAY_6S
JR NZ, SKIP_PROCESS_DELAY_6S
TM FlagReg, #REFRESH_DISPLAY_VOLT
JR NZ, SKIP_DEAL_DISPLAY
ADD DisplayVoltSum, OutVoltValue
ADC DisplayVoltSum+1, OutVoltValue+1
INC DisplayVoltCnt
RET
SKIP_PROCESS_DELAY_6S: ; Delay 6s
CLR R9
LD R8, Delay_6s_Cnt
CALL DISP_LED_DATA
WORK_LED ON
ERROR_LED OFF
BUZZER_OFF
TM FlagReg, #DELAY_6S_YEL_FLASH
JR NZ, SKIP_ERROR_LED_ON
DELAY_LED OFF
JR SKIP_IF_EXIT_DELAY_6S
SKIP_ERROR_LED_ON:
DELAY_LED ON
SKIP_IF_EXIT_DELAY_6S:
CP Delay_6s_Cnt, #01
JR UGE, EXIT_PROCESS_DELAY_6S
ON_RL1
AND FlagReg, #~DELAY_6S
AND FlagReg, #~OUT_VOLT_PROTECT
AND FlagReg, #~REFRESH_DISPLAY_VOLT
LD Out_Volt_High_265_Time, #DISPLAY_TIME
LD Out_Volt_High_255_Time, #DISPLAY_TIME
LD Out_volt_High_245_Time, #DISPLAY_TIME
LD Out_Volt_Normal_Time, #DISPLAY_TIME
LD Out_Volt_Less_150_Time, #DISPLAY_TIME
CLR Cnt_2s
CLR Cnt_10s
LD DisplayVoltValueBackup+1, RegulateVoltValue+1
LD DisplayVoltValueBackup, RegulateVoltValue
EXIT_PROCESS_DELAY_6S:
RET
SKIP_DEAL_DISPLAY:
AND FlagReg, #~REFRESH_DISPLAY_VOLT ;CLEAR THE REFRESH DISPLAY VOLAGE FLAG
LD R1, DisplayVoltSum+1
LD R0, DisplayVoltSum
CLR R3
LD R2, DisplayVoltCnt
CALL DOUBLE_BYTES_DIV
LD DisplayVoltValue+1,R1 ;GET THE AVERAGE VALUE TO STORE IN DISPLAY VOLTVALUE
LD DisplayVoltValue, R0
CLR DisplayVoltSum+1
CLR DisplayVoltSum
CLR DisplayVoltCnt
SKIP_PROCESS_USE_PREVISION_OUT_VOLT:
NOP
OUT_VOLT_HIGH_265:
CP DisplayVoltValue+1,#OUT_VOLT_265/256
JR UGT, SKIP_OUT_VOLT_HIGH_265 ;IF OUTPUT > 265 THEN GOTO
JR ULT, OUT_VOLT_HIGH_255 ;IF OUPUT <255 THEN GOTO
CP DisplayVoltValue, #OUT_VOLT_265%256 ;THIS INDICATE HIGH BIT IS THE SAME
JR ULT, OUT_VOLT_HIGH_255 ;COMPARE LOW BYTE THAT OUTPUT>
SKIP_OUT_VOLT_HIGH_265:
OR FlagReg2, #DISP_HIGH_265_FLAG
AND FlagReg2, #~DISP_HIGH_255_FLAG
AND FlagReg2, #~DISP_HIGH_245_FLAG
AND FlagReg2, #~DISP_NORMAL_FLAG
AND FlagReg2, #~DISP_LOW_150_FLAG
CP Out_Volt_High_265_Time, #DISPLAY_TIME
JP ULT, SKIP_SET_PREVISION_OUT_VOLT_PROCESS
SKIP_OUT_VOLT_HIGH_265_ZONE:
AND FlagReg2, #~DISP_HIGH_265_FLAG
TM FlagReg2, #DISP_HIGH_255_FLAG
JR NZ, JUMP_CLR_High_255_Time_265
CLR Out_Volt_High_255_Time
JUMP_CLR_High_255_Time_265:
TM FlagReg2, #DISP_HIGH_245_FLAG
JR NZ, JUMP_CLR_High_245_Time_265
CLR Out_volt_High_245_Time
JUMP_CLR_High_245_Time_265:
TM FlagReg2, #DISP_NORMAL_FLAG
JR NZ, JUMP_CLR_Normal_Time_265
CLR Out_Volt_Normal_Time
JUMP_CLR_Normal_Time_265:
TM FlagReg2, #DISP_LOW_150_FLAG
JR NZ, JUMP_CLR_Less_150_Time_265
CLR Out_Volt_Less_150_Time
JUMP_CLR_Less_150_Time_265:
LD DisplayVoltValueBackup+1, DisplayVoltValue+1
LD DisplayVoltValueBackup, DisplayVoltValue
CLR Cnt_10s
CALL DISP_H
WORK_LED ON
DELAY_LED ON
ERROR_LED ON
BUZZER_ON
CP Cnt_2s, #15
JR ULT, EXIT_OUT_VOLT_HIGH_265
OFF_RL1
OR FlagReg, #OUT_VOLT_PROTECT
LD Cnt_10s, #10
EXIT_OUT_VOLT_HIGH_265:
RET
OUT_VOLT_HIGH_255:
CP DisplayVoltValue+1,#OUT_VOLT_255/256
JR UGT, SKIP_OUT_VOLT_HIGH_255
JP ULT, OUT_VOLT_HIGH_245
CP DisplayVoltValue, #OUT_VOLT_255%256
JP ULT, OUT_VOLT_HIGH_245
SKIP_OUT_VOLT_HIGH_255:
AND FlagReg2, #~DISP_HIGH_265_FLAG
OR FlagReg2, #DISP_HIGH_255_FLAG
AND FlagReg2, #~DISP_HIGH_245_FLAG
AND FlagReg2, #~DISP_NORMAL_FLAG
AND FlagReg2, #~DISP_LOW_150_FLAG
CP Out_Volt_High_255_Time, #DISPLAY_TIME
JP ULT, SKIP_SET_PREVISION_OUT_VOLT_PROCESS
SKIP_OUT_VOLT_HIGH_255_ZONE:
AND FlagReg2, #~DISP_HIGH_255_FLAG
TM FlagReg2, #DISP_HIGH_265_FLAG
JR NZ, JUMP_CLR_High_265_Time_255
CLR Out_Volt_High_265_Time
JUMP_CLR_High_265_Time_255:
TM FlagReg2, #DISP_HIGH_245_FLAG
JR NZ, JUMP_CLR_High_245_Time_255
CLR Out_volt_High_245_Time
JUMP_CLR_High_245_Time_255:
TM FlagReg2, #DISP_NORMAL_FLAG
JR NZ, JUMP_CLR_Normal_Time_255
CLR Out_Volt_Normal_Time
JUMP_CLR_Normal_Time_255:
TM FlagReg2, #DISP_LOW_150_FLAG
JR NZ, JUMP_CLR_Less_150_Time_255
CLR Out_Volt_Less_150_Time
JUMP_CLR_Less_150_Time_255:
LD DisplayVoltValueBackup+1, DisplayVoltValue+1
LD DisplayVoltValueBackup, DisplayVoltValue
CLR Cnt_2s
TM FlagReg, #FLASH_FLAG
JR NZ, SKIP_DISP_H
CALL DISP_OFF
ERROR_LED OFF
JR SKIP_CHECK_IF_PROTECT_255
SKIP_DISP_H:
CALL DISP_H
WORK_LED ON
DELAY_LED ON
ERROR_LED ON
SKIP_CHECK_IF_PROTECT_255:
TM FlagReg2, #BUZZER_255
JR NZ, SKIP_BUZZER_255_ON
BUZZER_OFF
JP SKIP_BUZZER_255
SKIP_BUZZER_255_ON:
BUZZER_ON
SKIP_BUZZER_255:
CP Cnt_10s, #10
JR ULT, EXIT_OUT_VOLT_HIGH_255
OFF_RL1
CALL DISP_H
WORK_LED ON
DELAY_LED ON
ERROR_LED ON
BUZZER_ON
OR FlagReg, #OUT_VOLT_PROTECT
LD Cnt_2s, #15
EXIT_OUT_VOLT_HIGH_255:
RET
OUT_VOLT_HIGH_245:
CP DisplayVoltValue+1,#OUT_VOLT_245/256
JR UGT, SKIP_OUT_VOLT_HIGH_245
JP ULT, OUT_VOLT_NORMAL
CP DisplayVoltValue ,#OUT_VOLT_245%256
JP ULT, OUT_VOLT_NORMAL
SKIP_OUT_VOLT_HIGH_245:
AND FlagReg2, #~DISP_HIGH_265_FLAG
AND FlagReg2, #~DISP_HIGH_255_FLAG
OR FlagReg2, #DISP_HIGH_245_FLAG
AND FlagReg2, #~DISP_NORMAL_FLAG
AND FlagReg2, #~DISP_LOW_150_FLAG
CP Out_volt_High_245_Time, #DISPLAY_TIME
JP ULT, SKIP_SET_PREVISION_OUT_VOLT_PROCESS
SKIP_OUT_VOLT_HIGH_245_ZONE:
AND FlagReg2, #~DISP_HIGH_245_FLAG
TM FlagReg2, #DISP_HIGH_265_FLAG
JR NZ, JUMP_CLR_High_265_Time_245
CLR Out_Volt_High_265_Time
JUMP_CLR_High_265_Time_245:
TM FlagReg2, #DISP_HIGH_255_FLAG
JR NZ, JUMP_CLR_High_255_Time_245
CLR Out_Volt_High_255_Time
JUMP_CLR_High_255_Time_245:
TM FlagReg2, #DISP_NORMAL_FLAG
JR NZ, JUMP_CLR_Normal_Time_245
CLR Out_Volt_Normal_Time
JUMP_CLR_Normal_Time_245:
TM FlagReg2, #DISP_LOW_150_FLAG
JR NZ, JUMP_CLR_Less_150_Time_245
CLR Out_Volt_Less_150_Time
JUMP_CLR_Less_150_Time_245:
LD DisplayVoltValueBackup+1, DisplayVoltValue+1
LD DisplayVoltValueBackup, DisplayVoltValue
CLR Cnt_2s
CLR Cnt_10s
TM FlagReg, #OUT_VOLT_PROTECT
JR Z, JUMP_SET_DELAY_6S_245
OR FlagReg, #DELAY_6S
LD Delay_6s_Cnt, #00
JP EXIT_OUT_VOLT_HIGH_245
JUMP_SET_DELAY_6S_245:
TM FlagReg, #FLASH_FLAG
JR NZ, SKIP_DISP_OUT_VOLT_TRUE
CALL DISP_OFF
WORK_LED ON
DELAY_LED ON
ERROR_LED OFF
JP SKIP_PROCESS_BUZZER_245
SKIP_DISP_OUT_VOLT_TRUE:
LD R9, DisplayVoltValue+1
LD R8, DisplayVoltValue
CALL DISP_LED_DATA
WORK_LED ON
DELAY_LED ON
ERROR_LED ON
SKIP_PROCESS_BUZZER_245:
TM FlagReg2, #BUZZER_245
JR NZ, SKIP_BUZZER_245_ON
BUZZER_OFF
JP SKIP_BUZZER_245
SKIP_BUZZER_245_ON:
BUZZER_ON
SKIP_BUZZER_245:
EXIT_OUT_VOLT_HIGH_245:
RET
OUT_VOLT_NORMAL:
CP DisplayVoltValue+1,#OUT_VOLT_150/256
JR UGT , SKIP_OUT_VOLT_NORMAL
JP ULT , OUT_VOLT_LOW_150
CP DisplayVoltValue, #OUT_VOLT_150%256
JP ULT, OUT_VOLT_LOW_150
SKIP_OUT_VOLT_NORMAL:
AND FlagReg2, #~DISP_HIGH_265_FLAG
AND FlagReg2, #~DISP_HIGH_255_FLAG
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -