Puisi dariku untuk mu..... :*

;-------------- PROGRAM HISTORY ARRANGEMENT -------------
;(1) MASK ORDER DATE :
; FILE_NAME(ASM) :
; " (H16) :
; CHECK SUM : 'durung diitung'
; ½Äº° :
;--------------------------------------------------------
module main
$include "TMP86FS49.H"
;
;#####################################################
;########## CS Linear ³»¼ö(I-micom) PROGRAM ##########
;########## 2011.10.10 ~ ##########
;########## By albertus endry ##########
;#####################################################
;
;=================== TMP86FS49 I/O ASSIGN ============
; GND -( 1) VSS P37 (64)- x
; 4MHZ -( 2) XIN P36 (63)- x
; 4MHZ -( 3) XOUT P35 (62)- x
; P/D <-( 4) TEST P34 (61)- x
; +5V <-( 5) VDD P33 (60)- x
; GND <-( 6) P21 P32 (59)- x
; GND <-( 7) P22 P31 (58)- x
; RESET <-( 8) RESET P30 (57)- x
; x -( 9) P20 P54 (56)- x
; LINEAR TX <-(10) P00 P53 (55)<- EEPROM
; FLASH(RX) -(11) P01 P52 (54)-> EEPROM
; FLASH(TX) -(12) P02 P51 (53)-> EEPROM
; x -(13) P03 P50 (52)-> EEPROM
; x -(14) P04 P17 (51)-> C-FAN BLDC
; F-DOOR S/W ->(15) P05 P16 (50)-> F-FAN BLDC
; R-DOOR S/W ->(16) P06 P15 (49)<- F-FAN FEED BACK
; C-FAN FEED BACK ->(17) P07 P14 (48)-> BUZZER PPG
; +5V -(18) VAREF P13 (47)-> BUZZER TR
; +5V -(19) AVDD P12 (46)-> R-LAMP(HALF)
; R2-SNR ->(20) P60 P11 (45)-> R-LAMP
; DEF-SNR ->(21) P61 P10 (44)-> DEF-HEATER
; R1-SNR ->(22) P62 P47 (43)-> F-LAMP
; RT-SNR ->(23) P63 P46 (42)-> F-FAN(L)
; CUT-COMPEN. ->(24) P64 P45 (41)-> F-FAN(H)
; RESIST-COMPEN. ->(25) P65 P44 (40)-> COMP
; x ->(26) P66 P43 (39)<- TEST S/W
; KEY1 <-(27) P67 P42 (38)- x
; DATA2 <-(28) P70 P41 (37)-> V-LED
; DATA1 <-(29) P71 P40 (36)-> SCAN5
; DATA0 <-(30) P72 P77 (35)-> SCAN4
; SCAN0 <-(31) P73 P76 (34)-> SCAN3
; SCAN1 <-(32) P74 P75 (33)-> SCAN2
;========================================================
;
;
; ###################################
; # RAM DEFINE EQU #
; ###################################
;===============================
BIT0 EQU 0
BIT1 EQU 1
BIT2 EQU 2
BIT3 EQU 3
BIT4 EQU 4
BIT5 EQU 5
BIT6 EQU 6
BIT7 EQU 7
;===============================================================
;---- MAIN TASK REGISTER ---- BANK0
;A EQU 0x0040 ;A_REGISTER
;W EQU 0x0041 ;W "
;C EQU 0x0042 ;C "
;B EQU 0x0043 ;B "
;E EQU 0x0044 ;E "
;D EQU 0x0045 ;D "
;L EQU 0x0046 ;L "
;H EQU 0x0047 ;H "
;------------------------------------------
;---- TBT(1.024ms) INTERRUPT REGISTER ----(COMP COMMUNICATION)
RBS3_A EQU 0x0048 ;A_REGISTER
RBS3_W EQU 0x0049 ;W "
RBS3_C EQU 0x004A ;C "
RBS3_B EQU 0x004B ;B "
RBS3_E EQU 0x004C ;E "
RBS3_D EQU 0x004D ;D "
RBS3_L EQU 0x004E ;L "
RBS3_H EQU 0x004F ;H "
;------------------------------------------
;---- INTERRUPT REGISTER ----(RESERVED)
RBS2_A EQU 0x0050 ;A_REGISTER
RBS2_W EQU 0x0051 ;W "
RBS2_C EQU 0x0052 ;C "
RBS2_B EQU 0x0053 ;B "
RBS2_E EQU 0x0054 ;E "
RBS2_D EQU 0x0055 ;D "
RBS2_L EQU 0x0056 ;L "
RBS2_H EQU 0x0057 ;H "
;-----------------------------------------------
;--- TC2(100MS) INTERRUPT REGISTER ----(100MS)
RBS1_A EQU 0x0058 ;A_REGISTER
RBS1_W EQU 0x0059 ;W "
RBS1_C EQU 0x005A ;C "
RBS1_B EQU 0x005B ;B "
RBS1_E EQU 0x005C ;E "
RBS1_D EQU 0x005D ;D "
RBS1_L EQU 0x005E ;L "
RBS1_H EQU 0x005F ;H "
;-----------------------------------------------
;--- TC1(1.472ms) INTERRUPT REGISTER ----(Display SCAN)
RBS0_A EQU 0x0060 ;A_REGISTER
RBS0_W EQU 0x0061 ;W "
RBS0_C EQU 0x0062 ;C "
RBS0_B EQU 0x0063 ;B "
RBS0_E EQU 0x0064 ;E "
RBS0_D EQU 0x0065 ;D "
RBS0_L EQU 0x0066 ;L "
RBS0_H EQU 0x0067 ;H "
;------------------------------------------------
;--- INTERRUPT REGISTER ----(RESERVED)
RBS4_A EQU 0x0068 ;A_REGISTER
RBS4_W EQU 0x0069 ;W "
RBS4_C EQU 0x006A ;C "
RBS4_B EQU 0x006B ;B "
RBS4_E EQU 0x006C ;E "
RBS4_D EQU 0x006D ;D "
RBS4_L EQU 0x006E ;L "
RBS4_H EQU 0x006F ;H "
;
;
;==============================================================
;---------------- GENERAL FLAG DEFINITION -------------
;==============================================================
GENFLAG EQU 0x0070 ;GENERAL FLAG -(ÀÏ¹Ý flag)
;--- BIT DEFINITION ---
ADINIOK EQU 0 ;A/D CONVERSION INITIAL O.K finish FLAG
RQRPASS EQU 1 ;R&QR KEY 1SEC PASS ---> LED ALL ON FLAG
KY_ROLD EQU 4 ;DING-BUZZER-ING ALARM FLAG
TST_RING EQU 5 ;TEST_MODE_BUZZER RING FLAG
DO_RING EQU 6 ;DOOR_OPEN BUZZER FLAG(500MS TOGGLE)
KY_RING EQU 7 ;BUZZER_RING REQUEST FLAG (WHEN KEY PUSHED)
;=====================================================================
ERRFLAG EQU 0x0071 ;ERROR_FLAG
;--- BIT DEFINITION ---
RSERR EQU 1 ;R1_SENSOR ERROR FLAG
DSERR EQU 2 ;D_SENSOR ERROR FLAG
RTSERR EQU 3 ;RT_SENSOR ERROR FLAG
ERRDEF EQU 4 ;DEFROST ERROR FLAG
;;;;;R2SERR EQU 5 ;R2_SENSOR ERROR FLAG
FFANERR EQU 6 ;F-FAN ERROR FLAG
CFANERR EQU 7 ;C-FAN ERROR FLAG
;=====================================================================
ERR_1ST EQU 0x0072 ;ERROR_FLAG
;=====================================================================
TSTFLAG EQU 0x0073 ;TEST_MODE_FLAG RAM
;--- BIT DEFINITION ---
TSTM1F EQU 0 ;TEST_MODE_1 FLAG
TSTM2F EQU 1 ;TEST_MODE_2 FLAG
TSTPM EQU 3 ;TEST_MODE DOOR OPEN FLAG
TSTISF EQU 4 ;TEST_MODE_BUZZER RING INITIAL SET FLAG
TSTMAST EQU 7 ;TEST_MODE_MASTER FLAG
;=====================================================================
FANFLAG EQU 0x0074 ;FAN_MOTOR RPM MODE FLAG
;--- BIT DEFINITION ---
FHIGH EQU 0 ;FAN_MOTOR RPM MODULATION FLAG(1:1750,0:1450)
;=====================================================================
; EQU 0x0075 ;reserved
;=====================================================================
QRFLAG EQU 0x0076 ;Q/R FLAG
;--- BIT DEFINITION ---
QR_LED EQU 6 ;Q/R OPERATION(LED) FLAG
QR_OPR EQU 7 ;Q/R OPERATION FLAG
;=====================================================================
DEFFLAG EQU 0x0077 ;DEFROST CONTROL FLAG
;--- BIT DEFINITION ---
DEFF EQU 0 ;DEFROST FLAG
DCT_F EQU 2 ;DEEP COOL TOGGLE FLAG
DCEND_F EQU 3 ;DEEP COOL END FLAG
;SOJUN EQU 4 ;HOMBAR HEATER ON/OFF JUGE RT RANGE
;P_MAST EQU 7 ;SOJUN MODE MAST FLAG
;=====================================================================
IHDFLAG EQU 0x0078 ;INITIAL HEATER DRIVE FLAG
;--- BIT DEFINITION ---
IHDF EQU 0 ;INITIAL HEATER DRIVE FLAG
;=====================================================================
DOFLAG EQU 0x0079 ;DOOR OPEN FLAG
;--- BIT DEFINITION ---
DO_R EQU 0 ;R_DOOR OPEN FLAG (0:OPEN , 1:CLOSE)
FD_1ST EQU 1 ;F,R_DOOR ÃÖÃÊ ¿­¸² °¨Áö
DUTY1 EQU 2 ;¾ßä LED DUTY RATE (1/3)
DUTY2 EQU 3 ;¾ßä LED DUTY RATE (2/3)
BZTG EQU 4 ;DING~ TOGGLE F
DO_BREQ EQU 5 ;DOOR_OPEN BUZZER_RING REQUEST FLAG
DO_F EQU 6 ;F_DOOR OPEN FLAG (0:OPEN , 1:CLOSE)
DO_MAST EQU 7 ;DOOR_OPEN MAST FLAG
;=====================================================================
; EQU 0x007A ;reserved
;=====================================================================;100408
LOADF EQU 0x007B ;LOAD ON/OFF FLAG
LOADF2 EQU 0x007C ;LOAD ON/OFF FLAG2
LOADOUT EQU 0x007D ;LOAD OUTPUT -(ºÎÇÏÃâ·Â µ¥ÀÌŸ)
LOADOUT2 EQU 0x007E ;LOAD OUTPUT2 -(ºÎÇÏÃâ·Â µ¥ÀÌŸ)
;=====================================================================
BUZOUT EQU 0x007F ;BUZZER OUTPUT FLAG
;=====================================================================
;--- A/D CONVERSION RAM DEFINITION ---
;;R2SDT EQU 0x0080 ;P61(AIN1)R2_SENSOR A/D INPUT <080830><090114_2>
DSDT EQU 0x0081 ;P62(AIN2)D_SENSOR A/D INPUT
RSDT EQU 0x0082 ;P63(AIN3)R_SENSOR A/D INPUT
RTSDT EQU 0x0083 ;P64(AIN4)RT_SENSOR A/D INPUT
RCUTDT EQU 0x0084 ;P65(AIN5)R_CUT COMPENSATION A/D INPUT
RCMPDT EQU 0x0085 ;P66(AIN6)R_REG COMPENSATION A/D INPUT
; EQU 0x0086 ;reserved
; EQU 0x0087 ;reserved
;=====================================================================
DODEFCNT EQU 0x0088 ;Door open DEFROST COUNTER
; EQU 0x0089 ;(2byte)
;--- (TIME_DATA) DEFINITION ---
DEF_VAR EQU 1980 ;º¯µ¿Á¦»ó 33hr = 1980min
;DEF_VAR EQU 2580 ;º¯µ¿Á¦»ó 43hr = 2580min
;=====================================================================
DCOOLCNT EQU 0x008A ;Additionally Deep Cooling COUNTER
;=====================================================================
RLAMP7M EQU 0x008B ;R-LAMP OFF AFTER R-DOOR OPEN 7MIN
FLAMP7M EQU 0x008C ;F-LAMP OFF AFTER F-DOOR OPEN 7MIN
;=====================================================================
B100MS EQU 0x008D ;TC2 100ms BASE TIME INCREMENT RAM
B1SEC EQU 0x008E ;TC2 1sec BASE TIME INCREMENT RAM
B1MIN EQU 0x008F ;TC2 1min BASE TIME INCREMENT RAM
;=====================================================================
INDLY EQU 0x0090 ;INITIAL 500ms TIME DELAY COUNT RAM
;=====================================================================
IDHCHK EQU 0x0091 ;INITIAL HEATER ON 5sec COUNTER
;=====================================================================
LOADLY EQU 0x0092 ;LOAD SEQUENTIAL DRIVE 500ms DELAY COUNTER
;=====================================================================
BZCNT EQU 0x0093 ;BUZZER_ON_100,(500)ms counter
; EQU 0x0094 ;(2byte)
;=====================================================================
DEF_F12 EQU 0x0095 ;FAN DELAY AFTER DEFROST
;=====================================================================
CD7MIN EQU 0x0096 ;COMP OFF 7MIN DELAY COUNTER
;=====================================================================
FANON60S EQU 0x0097 ;AFTER DOOR OPEN, FAN ON 60SEC <090211>
;=====================================================================
;--- Door_open time counter ram ---
DO_TIME EQU 0x0098 ;DOOR_OPEN TIME COUNTER (60sec,30sec)
DO_BCNT EQU 0x0099 ;DOOR_OPEN BUZZER RING COUNTER (3times)
DO_B500 EQU 0x009A ;DOOR_OPEN BUZZER 500ms TOGGLE COUNTER
;=====================================================================
;--- DECREMENT --- 4HR=0F0H , 7HR=1A4H , 73HR=111CH
DEFCNT EQU 0x009B ;DEF_TIME_LOW_BYTE
; EQU 0x009C ;DEF_TIME_HIGH_BYTE
;--- (TIME_DATA) DEFINITION ---
DEF4HR EQU 240 ;defrost_time(INITIAL)= 4 HOUR
DEF7HR EQU 420 ;defrost_time(NORMAL) = 7 HOUR
;=====================================================================
DEFCNT1 EQU 0x009D ;ISO SOJUN DEFROST TIMER (BUCK-UP DATA)
; EQU 0x009E ; " (2BYTE)
;=====================================================================
TST2HR EQU 0x009F ;TEST_MODE 2½Ã°£ PASS COUNTER RAM
;=====================================================================
DEF2HR EQU 0x00A0 ;DEFROST MAX. 2HR COUNTER
;=====================================================================
LQCFLAG EQU 0x00A1 ;LQC_INSPECTION FLAG ( 1450 <--> 1750 )
;--- BIT DEFINITION
LQC_TOG EQU 0 ;LQC_INSPECTION FAN_MODE TOGGLE FLAG
LQC_REV EQU 4 ;LQC_INSPECTION KEY SAME ON REVERSE FLAG
;=====================================================================
S_F_F EQU 0x00A2 ;SPECIAL_FUNCTION_MODE
;--- BIT DEFINITION ---
A_Q_R_F EQU 0 ;INITIAL AUTO_QUICK_REF'_FLAG CLR
RLOAD1 EQU 1 ;INITIAL LOAD_CONFRONTATION_FLAG (MIDDLE)
RLOAD2 EQU 2 ;R_ROOM_LOAD_CONFRONTATION_FLAG (MIDDLE)
FLOAD EQU 3 ;F ROOM LOAD ºÎÇÏ´ëÀÀ FLAG <080726>
D1STF EQU 4 ;R½Ç ºÎÇÏ´ëÀÀ DOOR_OPEN FIRST FLAG
D1STF2 EQU 5 ;º¯µ¿Á¦»ó DOOR_OPEN FIRST FLAG <080726>
D1STF3 EQU 6 ;F½Ç ºÎÇÏ´ëÀÀ DOOR_OPEN FIRST FLAG <080726>
;=====================================================================
;======= F½Ç ºÎÇÏ´ëÀÀ °ü·Ã º¯¼ö ==============================
;=====================================================================
FL1HR EQU 0x00A3 ;F½Ç ºÎÇÏ´ëÀÀ ¿îÀü 1HR CNT <080726>
FLD1HR EQU 0x00A4 ;F½Ç ºÎÇÏ´ëÀÀ Áö¿¬ 1HR CNT <080726>
FDO30S EQU 0x00A5 ;F½Ç DOOR OPEN ¿¬¼Ó 30S CNT <090213>
FDOA40S EQU 0x00A6 ;F½Ç DOOR OPEN Àû»ê 40S CNT <090213>
F30M EQU 0x00A7 ;F½Ç DOOR ÃÖÃÊ OPEN ÈÄ 30M CNT <090213>
;=====================================================================
DEF_F17 EQU 0x00A8 ;HIGH RPM FAN DELAY TIME(17MIN) AFTER DEFROST
RQRLED EQU 0x00A9 ;R&Q/R KEY µ¿½Ã´©¸§ ½Ã°£COUNTER (1sec)
;=====================================================================
KEYLOCK EQU 0x00AA ;LOCK KEY FLAG
;--- BIT DEFINIATION (NEW TYPE) ---
KLOCK EQU 0
LOCK_TOG EQU 1
;=====================================================================
HLAMP5M EQU 0x00AB ;HALF_LAMP 5MIN ON/OFF COUNTER
;=====================================================================
FANONMOR EQU 0x00AC ;AFTER COMP OFF, MORE TIME F-FAN ON <100319>
;=====================================================================
QRCNT EQU 0x00AD ;Q/R OPERATION MAX 2HR COUNTER
;=====================================================================
;HBARCNT EQU 0x00AE ;HOMBAR HEATER 15MIN COUNT <090114>
;IHBHT5S EQU 0x00AF ;INITIAL HOME-BAR HEATER 5SEC COUNT <090114>
;=====================================================================
RERR15M EQU 0x00B0 ;R_SENSOR ERROR COMP ON/OFF 15MIN COUNTER
;=====================================================================
RCOM EQU 0x00B1 ;R-ROOM COMPENSATION DATA RAM
RCUTCOM EQU 0x00B2 ;R_ROOM CUT COMPENSATION DATA RAM
RTJG EQU 0x00B3 ;RT-RANGE 0~7
; EQU 0x00B4 ;reserved
; EQU 0x00B5 ;reserved
CMP6HR EQU 0x00B6 ;COMP OPERATION TIME 6HOUR COUNTER
; EQU 0x00B7 ;(2byte)
;=====================================================================
;---- TEST_MODE_BUZZER WARNING TIME COUNTER ----
TSTMBW EQU 0x00B8 ;TEST_MODE BUZZER RING TIME COUNTER
TSTMBC EQU 0x00B9 ;TEST_MODE BUZZER RING COUNTER (INCREMENT)
;=====================================================================
;---- EEPROM USING RAM ----
EPWFLAG EQU 0x00BA ;EEPROM WRITING REQUEST FLAG
;---- DATA DEFINITON ----
RNFLAG EQU 0 ;R-NOTCH EEPROM WRITING FLAG
HL_WRT EQU 1 ;DEFROST TIME H,L FLAG
;=====================================================================
;---- EEPROM COUNT RAM ----
EWCNT EQU 0x00BB ;EEPROM COUNTER
DEFBKUP EQU 0x00BC ;DEFCNT BACK-UP 30min COUNTER
;=====================================================================
AD_R20M EQU 0x00BD ;º¯µ¿Á¦»ó ºÎÇÏ´ëÀÀ 20ºÐ
AD_R20S EQU 0x00BE ;º¯µ¿Á¦»ó ºÎÇÏ´ëÀÀ 20ÃÊ
;=====================================================================
LQC30S EQU 0x00BF ;LQC FAN CHECK 30SEC COUNTER
IRLCHK EQU 0x00C0 ;TEST MODE2 HALF-LAMP CHECK 5SEC COUNTER
KCH10S EQU 0x00C1 ;ALL_KEY_CHANGE 10sec DELAY COUNTER
;=====================================================================
INIHALF EQU 0x00C2 ;100319 Ãʱâ 10ºÐ LINEAR COMP HALF-STROKE ¿îÀü
;=====================================================================
;--- A/D CONVERSION CALCULATION ---
ADCHSEL EQU 0x00C3 ;A/D CHANNEL SELECT ( 0 ~ 7 ch )
ADCNT EQU 0x00C4 ;A/D 16 TIMES COUNTER RAM
ADAVRL EQU 0x00C5 ;A/D AVERAGE CAL' RAM (LOW_BYTE)(AVERAGE DATA)
ADAVRH EQU 0x00C6 ;A/D AVERAGE CALCULATION RAM (HIGH_BYTE)
;=====================================================================
;======= R½Ç ºÎÇÏ´ëÀÀ °ü·Ã º¯¼ö ==============================
;=====================================================================
RSOLD EQU 0x00C7 ;R ºÎÇÏ´ëÀÀ R_SENSOR OLD DATA <080726>
RD20S EQU 0x00C8 ;R_LOAD DOOR OPEN 20SEC COUNTER
R20M EQU 0x00C9 ;R-LOAD 20MIN COUNTER
RL3HR EQU 0x00CA ;R-LOAD MAX 3HR COUNTER
RLD3HR EQU 0x00CB ;R_LOAD CONTROL DELAY 3HR
RLTEMP EQU 0x00CC ;ºÎÇÏ´ëÀÀ ½ÃÀÇ ¿îÀü ¿Âµµ <090511> RT ¿Âµµ¿¡ µû¶ó ºÎÇÏ´ëÀÀ ½Ã°£,¿Âµµ º¯È­
; EQU 0x00CD ;(2byte)
;=====================================================================
SINCEDEF EQU 0x00CE ;<100220> Á¦»ó ÈÄ FULL ³Ã·Â ¿îÀü ½Ã°£
ERR3HR EQU 0x00CF ;100320 HIDDEN ERROR 3hr COUNT
;=====================================================================
;============ ERROR MODE DISPLAY ASSIGNMENT =============
EDSPDT0 EQU 0x00D0 ;DISP_DATA_0 -(digit_0 data)
EDSPDT1 EQU 0x00D1 ;DISP_DATA_1 -(digit_1 data)
EDSPDT2 EQU 0x00D2 ;DISP_DATA_2 -(digit_2 data)
EDSPDT3 EQU 0x00D3 ;DISP_DATA_3 -(digit_3 data)
EDSPDT4 EQU 0x00D4 ;DISP_DATA_4 -(digit_4 data)
EDSPDT5 EQU 0x00D5 ;DISP_DATA_5 -(digit_5 data)
; EQU 0x00D6 ;reserved
; EQU 0x00D7 ;reserved
;=====================================================================
;=========== DISPLAY MODULE ASM SEGMENT LOCATION ==============
;=====================================================================
;DIGIT5(36):-----------------------------------------------| |
;DIGIT4(35):---------------------------------------| | |
;DIGIT3(34):-------------------------------| | | |
;DIGIT2(33):-----------------------| | | | |
;DIGIT1(32):---------------| | | | | |
;DIGIT0(31):-------| | | | | | |
; | | | | | | |
; |DSPDT0 |DSPDT1 |DSPDT2 |DSPDT3 |DSPDT4 |DSPDT5 |
; | | | | | | |
; | | | | | | |
;DISPLAY_DATA0(30) |A1 |A2 |A3 |A4 |A5 |A6 |
;------------------------------------------------------------------------
;DISPLAY_DATA1(29) |A7 |MINUS |QR |QR |QR |QR |
;------------------------------------------------------------------------
;DISPLAY_DATA2(28) |LOCK |LOCK |LOCK |LOCK |C_TEMP | |
;------------------------------------------------------------------------
;DSP_KEY INPUT(27) |R_KEY |QR_KEY |EN_KEY | | | |
;=====================================================================
;============ CS-PJT DISPLAY ASSIGNMENT ============
DSPDT0 EQU 0x00D8 ;DISP_DATA_0 -(digit_0 data)-
R0 EQU 2 ;R_TEMP_DISPLAY R0
R3 EQU 1 ;R_TEMP_DISPLAY R3
;------------------------------------------------------------------
DSPDT1 EQU 0x00D9 ;DISP_DATA_1 -(digit_1 data)
R1 EQU 2 ;R_TEMP_DISPLAY R1
R4 EQU 1 ;R_TEMP_DISPLAY R4
;------------------------------------------------------------------
DSPDT2 EQU 0x00DA ;DISP_DATA_2 -(digit_2 data)
R2 EQU 2 ;R_TEMP_DISPLAY R2
;------------------------------------------------------------------
;DSPDT3 EQU 0x00DB ;DISP_DATA_3 -(digit_3 data)
;------------------------------------------------------------------
;DSPDT4 EQU 0x00DC ;DISP_DATA_4 -(digit_4 data)
;------------------------------------------------------------------
;DSPDT5 EQU 0x00DD ;DISP_DATA_5 -(digit_5 data)
;------------------------------------------------------------------
; EQU 0x00DE ;reserved
; EQU 0x00DF ;reserved
;=====================================================================
RN_NOW EQU 0x00E0 ;R_NOTCH_NOW_STATUS RAM
RN_CHN EQU 0x00E1 ;R_NOTCH_CHANGE_STATUS
RN_B_U EQU 0x00E2 ;R_NOTCH_BACK_UP
;---- DATA DEFINITION ----
TEMP6 EQU 1 ;==>TEMPERATER 6
;;TEMP5 EQU 2 ;==>TEMPERATER 5
TEMP4 EQU 3 ;==>TEMPERATER 4
TEMP3 EQU 4 ;==>TEMPERATER 3
TEMP2 EQU 5 ;==>TEMPERATER 2
;;TEMP1 EQU 6 ;==>TEMPERATER 1
TEMP0 EQU 7 ;==>TEMPERATER 0
;=====================================================================
; EQU 0x00E3 ;reserved
;=====================================================================
;--- SCAN KEY INPUT RAM DATA DEFINITION---
KYWORK EQU 0x00E4 ;KEY_WORK_AREA - (KEY ÇöÀç ÀÔ·Â)
KYSTATE EQU 0x00E5 ;KEY_STATE_AREA -(KEY »óŸ¦ ³ªÅ¸³»´Â RAM)
;--- DATA DEFINITION ---
OFFALL EQU 0 ;KEY_ALL_OFF DATA -(¸ðµç KEY°¡ OFFµÇ¾î ÀÖÀ½)
ONCHAT EQU 1 ;ON_CHATTERING -(¾î´À KEY Áß ´­·¯Áö°í ÀÖÀ½)
ONKEY EQU 2 ;KEY_ON -(CHATTERINGó¸® µÇ¾î KEY ´­·¯Á³À½)
OFFCHAT EQU 3 ;OFF_CHATTERING -(CHAT' OFF µÇ°í ÀÖÀ½)
;-----------------------
KYBUFF EQU 0x00E6 ;BUFFER_AREA -(ÇØ´çDIGITÃÖÃÊKEYÀÔ·ÂBUFFER)
SNSAVE EQU 0x00E7 ;SCAN_SAVE_AREA -(KEYÀÔ·Â DIGIT»óÅÂSAVE RAM)
SNROT EQU 0x00E8 ;SCAN_RORATE_AREA -(DIGITÃâ·ÂROTATE RAM)
;-----------------------
CHATCNT EQU 0x00E9 ;CHATTERING_COUNTER_AREA(6 TIMES)
;=====================================================================
DKEYDT EQU 0x00EA ;KEY_DETECT_AREA -(SCAN_KEYÀÔ·Â µ¥ÀÌÅÍ SAVE)
DKRINGF EQU 0x00EB ;KEY_DETECT_BUZZER RING FLAG AREA
;--- BIT DEFINITION (NEW TYPE) ---
R_KEY EQU 1 ;R_KEY
QR_KEY EQU 3 ;Q/R_KEY
EN_KEY EQU 5 ;LOCK_KEY
;=====================================================================
;--- R & QR_KEYÀÇ ¿¬¼Ó´©¸§À» °¨ÁöÇϱâ À§ÇÑ KEY ÀÔ·Â BUFFER ---
RKROT EQU 0x00EC ;R_KEY PUSH ROTATION DATA
QRKROT EQU 0x00ED ;QR_KEY PUSH ROTATION DATA
LOCKROT EQU 0x00EE ;LOCK_KEY PUSH ROTATION DATA
;2007.04.07 ---> Àá±Ý/Ç®¸² ¼öÁ¤
LOCKLED EQU 0x00EF ;LOCK KEY COUNTER (Àá±Ý/Ç®¸²:2ÃÊ/0.7ÃÊ)
;=====================================================================
;---- OPTION CHATTERING INPUT RAM ----
OP_BUFF EQU 0x00F0 ;DOOR_INPUT_BUFFER_AREA (NON CHATTERING)
OP_NEW EQU 0x00F1 ;DOOR_INPUT_NEW_AREA (CHATTERING DATA)
OP_OLD EQU 0x00F2 ;DOOR-INPUT_OLD_AREA (CHATTERING DATA)
OP_CHAT EQU 0x00F3 ;DOOR_CHATTERING COUNTER RAM
;---------------------------------------;
CTL_R EQU 0x00F4 ;R_ROOM_current_control_notch(2BYTE)
; EQU 0x00F5 ;(2BYTE)
;---------------------------------------;
SIO2FLAG EQU 0x00F6 ;Åë½Å FLAG
TXON EQU 0 ;¼Û½Å MODE F.
RXOK EQU 1 ;¼ö½Å MODE Ãʱâ F.
DATARX EQU 2 ;¼ö½Å ¿Ï·á F.
SIOTOG EQU 3 ;COMP Åë½Å TOGGLE F.
INI_ON EQU 4 ;INITIAL AUTO_QUICK_REF'_FLAG CLR
;---------------------------------------;
RXCT1S EQU 0x00F7 ;¼ö½Å 1ÃÊ CNT LCD11
;---------------------------------------;
BZFREQ_H EQU 0x5F ;2.631kHz
;---------------------------------------;
SENDM1 EQU 0x00F8 ;SEND DATA1
SENDM2 EQU 0x00F9 ;SEND DATA2
;---------------------------------------;
;;RECVM1 EQU 0x00FA ;RECEIVE DATA1
;;RECVM2 EQU 0x00FB ;RECEIVE DATA2
;;RECVM10 EQU 0x00FC ;RECEIVE DATA1
;---------------------------------------;
TOCOMP EQU 0x00FD ; Communication(to comp) register ;LINEAR COMP
;--- BIT DEFINITION ---<100220>
COMP_F EQU 0 ; Comp On/Off Command
COOL_MODE_1 EQU 1 ; ³Ã°¢¸ðµå1
COOL_MODE_2 EQU 2 ; ³Ã°¢¸ðµå2
; EQU 3 ; ³Ã·Â1
; EQU 4 ; ³Ã·Â2
; EQU 5 ; ³Ã·Â3
; EQU 6 ; ³Ã·Â4
SAVING EQU 7 ; ¼ÒÀü¸ðµå
;---------------------------------------;<100220>
COOL_POWER EQU 0x00FE ;COMP ³Ã·Â
;--- COMP OUTPUT VOLTAGE DEFINITION ---
COOL_MAX EQU 145 ;MAXIMUM POWER
COOL_MID EQU 135 ;MIDDLE POWER
COOL_MIN EQU 125 ;MINIMUM POWER
;---------------------------------------;
C_PWR_OLD EQU 0x00FF ;100324 Previous COOLING POWER
;---------------------------------------;
FFANRPM EQU 0x0100 ;F-FAN RPM (2BYTES)
; EQU 0x0101 ;F-FAN RPM (2BYTES)
;---------------------------------------;
CFANRPM EQU 0x0102 ;C-FAN RPM (2BYTES)
; EQU 0x0103 ;C-FAN RPM (2BYTES)
;---------------------------------------;
FFANDUTY1S EQU 0x0104 ;F-Fan Rising ½Ã°£
CFANDUTY1S EQU 0x0105 ;C-Fan Rising ½Ã°£
;---------------------------------------;
F_RPM EQU 0x0106 ;F Fan RPM Data RAM
;----- DATA DEFINITION ------
FFAN_L EQU 155 ; 9.0V 155 = 9.0*255/14.8
FFAN_M EQU 155 ; 9.0V 155 = 9.0*255/14.8
FFAN_H EQU 155 ; 9.0V 155 = 9.0*255/14.8
;---------------------------------------;
C_RPM EQU 0x0107 ;RPM
;----- DATA DEFINITION ------
CFAN_L EQU 178 ;11.5V 178 = 11.5*255/16.4
CFAN_M EQU 178 ;11.5V 178 = 11.5*255/16.4
CFAN_H EQU 178 ;11.5V 178 = 11.5*255/16.4
;---------------------------------------;
FDUTY EQU 0x0108 ;F-FAN DUTY
CDUTY EQU 0x0109 ;C-FAN DUTY
;---------------------------------------;
FFGCNT EQU 0x010A ;F-FAN DUTY
; EQU 0x010B ;(2BYTE)
CFGCNT EQU 0x010C ;C-FAN DUTY
; EQU 0x010D ;(2BYTE)
;---------------------------------------;
F_START3S EQU 0x010E ;F-FAN START3S
C_START3S EQU 0x010F ;C-FAN START3S
;---------------------------------------;
FLOK15S EQU 0x0110 ;F-FAN 15SEC ON
FLOCKCNT EQU 0x0111 ;F-FAN CNT
FLOK10S EQU 0x0112 ;F-FAN 10SEC OFF
FLOK30M EQU 0x0113 ;F-Fan Lock 30min Counter RAM
FCHK20S EQU 0x0114 ;F-Fan Lock 20sec Counter RAM
;---------------------------------------;
CLOK15S EQU 0x0115 ;C-FAN 15SEC ON
CLOCKCNT EQU 0x0116 ;C-FAN CNT
CLOK10S EQU 0x0117 ;C-FAN 10SEC OFF
CLOK30M EQU 0x0118 ;C-Fan Lock 30min Counter RAM
CCHK20S EQU 0x0119 ;C-Fan Lock 20sec Counter RAM
;---------------------------------------;
;
;
;###################################
;# IN/OUT PORT DEFINE #
;###################################
;---------------------------------------
; P0 PORT DEFINE
;---------------------------------------
POCOMM EQU 0 ;(10)LINEAR COMM
; EQU 1 ;(11)FLASH RX
; EQU 2 ;(12)FLASH TX
; EQU 3 ;(13)
; EQU 4 ;(14)
PIFDO EQU 5 ;(15)F-DOOR
PIRDO EQU 6 ;(16)R-DOOR
;INT2 EQU 7 ;(17)C FAN INT
;=======================================
; P1 PORT DEFINE
;---------------------------------------
;POFANL EQU 0 ;(44)F-FAN LOW RPM
;POFANH EQU 1 ;(45)F-FAN HIGH RPM
;POCOMP EQU 2 ;(46)COMP
POBZTR EQU 3 ;(47)BUZZER TR OUTPUT
POBUZZ EQU 4 ;(48)BUZZER OUTPUT
;INT3 EQU 5 ;(49)F-FAN FEED
;F-FAN BLDC EQU 6 ;(50)F-FAN BLDC
;C-FAN BLDC EQU 7 ;(51)C-FAN BLDC
;=======================================
; P2 PORT DEFINE
;---------------------------------------
; EQU 0 ;( 9)UNUSED
; EQU 1 ;( 6)UNUSED
; EQU 2 ;( 7)UNUSED
;=======================================
; P3 PORT DEFINE
;---------------------------------------
; EQU 0 ;(57)UNUSED
; EQU 1 ;(58)UNUSED
; EQU 2 ;(59)UNUSED
; EQU 3 ;(60)UNUSED
; EQU 4 ;(61)UNUSED
; EQU 5 ;(62)UNUSED
; EQU 6 ;(63)UNUSED
; EQU 7 ;(64)UNUSED
;=======================================
; P4 PORT DEFINE
;---------------------------------------
POSCN5 EQU 0 ;(36)SCAN5
POVLED EQU 1 ;(37)VEGETABLE LED OUTPUT
; EQU 2 ;(38)UNUSED
PITEST EQU 3 ;(39)TEST S/W
;POLAML EQU 4 ;(40)LOW LAMP
;POLAMP EQU 5 ;(41)R-LAMP
;POHEAT EQU 6 ;(42)DEF-HEATER
;POLAMP_F EQU 7 ;(43)F-LAMP
;=======================================
; P5 PORT DEFINE
;---------------------------------------
POCS EQU 0 ;(52)EEPROM CS
POSK EQU 1 ;(53)EEPROM SK
PODI EQU 2 ;(54)EEPROM DI
PISI EQU 3 ;(55)EEPROM SI
; EQU 4 ;(56)UNUSED
;=======================================
; P6 PORT DEFINE
;---------------------------------------
; EQU 0 ;(20)R2-SNR
; EQU 1 ;(21)DEF-SNR
; EQU 2 ;(22)R1-SNR
; EQU 3 ;(23)RT-SNR
; EQU 4 ;(24)CUT COMPENSATION
; EQU 5 ;(25)REG COMPENSATION
; EQU 6 ;(26)unused
PISKY EQU 7 ;(27)KEY INPUT
;=======================================;
; P7 PORT DEFINE
;---------------------------------------
PODSP2 EQU 0 ;(28)DATA 2
PODSP1 EQU 1 ;(29)DATA 1
PODSP0 EQU 2 ;(30)DATA 0
POSCN0 EQU 3 ;(31)SCAN 0
POSCN1 EQU 4 ;(32)SCAN 1
POSCN2 EQU 5 ;(33)SCAN 2
POSCN3 EQU 6 ;(34)SCAN 3
POSCN4 EQU 7 ;(35)SCAN 4
;
;
;***************************************;100408
;LOAD1 BIT (LOADF,LOADOUT)
;---------------------------------------
POFANL EQU 0 ;(44)F-FAN LOW RPM
POFANH EQU 1 ;(45)F-FAN HIGH RPM
POCOMP EQU 2 ;(46)COMP
; EQU 3 ;
POFFAN EQU 4 ;F-FAN (DC-BLDC)
POCFAN EQU 5 ;C-FAN (DC-BLDC)
POHEAT EQU 6 ;(42)DEF-HEATER
; EQU 7 ;
;
;***************************************;100408
;LOAD2 BIT (LOADF2,LOADOUT2)
;---------------------------------------
; EQU 0 ;
; EQU 1 ;
; EQU 2 ;
; EQU 3 ;
POLAML EQU 4 ;(40)LOW LAMP
POLAMP EQU 5 ;(41)R-LAMP
; EQU 6 ;
POLAMP_F EQU 7 ;(43)F-LAMP
;
;
;#########################################################
;############# ################
;############# PROGRAM START ################
;############# ################
;########################################################
;#########################################################
;######### interrupt_vector_call_area set #########
;#########################################################
; *** DEFINE INTRRUPT AREA AS A SECTION ***
INT_TBL1 section romdata abs=0xffa0
DW RET_INT ;Reserved ;x 32
DW RET_INT ;Reserved ;X 31
DW RET_INT ;Reserved ;x 30
DW RET_INT ;Reserved ;x 29
DW RET_INT ;Reserved ;x 28
DW RET_INT ;Reserved ;x 27
DW RET_INT ;Reserved ;x 26
DW RET_INT ;Reserved ;x 25
DW RET_INT ;INT5 ;x 23
DW INTTC2 ;INTTC2 ;TIME COUNTER(100ms) 22
DW RET_INT ;INTTXD2 ;x 21
DW RET_INT ;INTRXD2 ;x 20
DW RET_INT ;INTTC5 ;x 19
DW RET_INT ;INTTC6 ;x 18
DW RET_INT ;INTTXD1 ;x 17
DW RET_INT ;INTRXD1 ;x 16
;
INT_TBL2 section romdata abs=0xffe0
DW RET_INT ;INTADC ;x 15
DW RET_INT ;INTSIO2 ;X 14
DW RET_INT ;INTSIO1 ;x 13
DW INT3 ;INT3 ;F-FAN FG 12
DW RET_INT ;INTSBI ;x 11
DW RET_INT ;INTTC3 ;x 10
DW RET_INT ;INTTC4 ;x 9
DW INT2 ;INT2 ;C-FAN FG 8
DW INTTBT ;INTTBT ;E-LINEAR (1.024ms) 7
DW RET_INT ;INT1 ;x 6
DW INTTC1 ;INTTC1 ;SCAN(1.472mSec) 5
DW RET_INT ;INT0 ;x 4
DW START ;INTWDT ;WATCHDOG RESET(2sec) 3
DW 0 ;INTATRAP ;Adress trap interrupt 2
DW 0 ;INTSW ;SOFTWARE INT'(H/W Reset) 1
DW START ;RESET ;external reset 0
;
;
;#########################################################
;######### interrupt_vector_call_area set #########
;#########################################################
PW_TBL section romdata abs=0xff00
DB 8 ;PASSWORD°¹¼ö = 8
DB "LGE_REF" ;PASSWORD = "LGE_REF" ;100206
;
;
;#########################################################
;######### RAM CLEAR INITIAL ROUTINE #########
;#########################################################
; *** DEFINE PROGRAM AREA AS A SECTION ***
code_1 section code abs=0x1000 ;32KBYTE
START: DI ;DISABLE ALL INTERRUPT(IMF<-0)
LD SP,0x083F ;STACK POINT RAM AREA SELECT
LD (WDTCR1),0y00000011 ;WDTEN<-0
LD (WDTCR2),0xB1 ;WDTCR2<-DISABLE CODE
; ;WATCH DOG TIMER RESET
;--------------------- ram clear --------------------
RAMCLR:
LD HL,0x0048 ;HL <-- RAM_TOP_ADDRESS
LD A,0 ;INITIAL DATA SETTING (A<-'0')
LD BC,0x7F7 ;BC <-- RAM_CLEAR RANGE COUNT
RAMCLR1:
LD (HL),A ;INITIAL DATA SETTING (A<-'0')
INC HL ;+++
DEC BC
J F,RAMCLR1
;+++ Ãß°¡
DBRCLR:
LD HL,0x0F80
LD A,0 ;INITIAL DATA SETTING (A<-'0')
LD B,0x7F
DBRCLR1:
LD (HL),A
INC HL ;HL <- HL+1
DEC B ;B <- B-1
J F,DBRCLR1 ;IF UNDERFLOW,JF=1
;
;
;------ INITIAL DEFROST TIME 4HOUR SET -------
LDW (DEFCNT),DEF4HR ;INITIAL DEFROST 4HR SET
;
LD (DEFBKUP),30 ;DEFCNT BACK-UP 30min COUNTER
;
;---- INITIAL LOAD DRIVE FLAG SET ----
SET (IHDFLAG).IHDF ;INITIAL HEATER DRIVER FLAG SET
LD (IDHCHK),0x05 ;DEF_HEATER ON TIME 5sec SET
LD (INIHALF),10 ;100319 Ãʱâ 10ºÐ LINEAR COMP HALF-STROKE ¿îÀü
;---- INITIAL AUTO_QUICK_REF'_FLAG SET -------
SET (S_F_F).A_Q_R_F ;INITIAL AUTO_QUICK_REF'_FLAG SET
;---- INITIAL HIGH NOTCH 3HR_REF'_FLAG SET -------
SET (S_F_F).RLOAD1 ;Ãʱâ 3½Ã°£ '°­'NOTCH ¿îÀü FLAG CLEAR
;
J MA01
;#########################################################;
;######### TEST MODE RETURN START ##########;
;#########################################################;
TSTST: DI
LD SP,0x083F ;STACK POINT RAM AREA SELECT
LD (WDTCR1),0y00000011 ;WDTEN<-0
LD (WDTCR2),0xB1 ;WDTCR2<-DISABLE CODE
;WATCH DOG TIMER RESET
;
LD D,(RN_B_U) ;D <-- R_NOTCH_BACKUP
;
TRAMCLR:
LD HL,0x0048 ;HL <-- RAM_TOP_ADDRESS
LD A,0 ;INITIAL DATA SETTING (A<-'0')
LD BC,0x7F7 ;BC <-- RAM_CLEAR RANGE COUNT
TRAMCLR1:
LD (HL),A ;INITIAL DATA SETTING (A<-'0')
INC HL ;+++
DEC BC
J F,TRAMCLR1
;+++ Ãß°¡
TDBRCLR:
LD HL,0x0F80
LD A,0 ;INITIAL DATA SETTING (A<-'0')
LD B,0x7F
TDBRCLR1:
LD (HL),A
INC HL ;HL <- HL+1
DEC B ;B <- B-1
J F,TDBRCLR1 ;IF UNDERFLOW,JF=1
;
CALL DEFEND ;Á¦»óÁ¾·á
LD (RN_B_U),D
;
;-- R_INITIAL_NOTCH SETTING --
LD A,(RN_B_U)
LD (RN_NOW),A ;R-NOTCH BACKUP DATA RELOAD
LD A,(RN_B_U)
LD (RN_CHN),A ;
;
;===============================
MA01: CALL IOINIT
;*******************************************************
;***** SPECIAL FUNCTION RESISTOR INITIAL SET *****
;*******************************************************
SFINIT:
LD (ADCCR1),0y00000000 ;S/W START, ANALOG ENABLE
LD (ADCCR2),0y00010000 ;DAÀúÇ× ADCµ¿¾È¿¡¸¸ Á¢¼Ó
LD (SYSCR2),0y10000000 ;HIGH_FREQUENCY SELECT
LD (WDTCR1),0y00000011 ;WDTEN<-0
LD (WDTCR2),0xB1 ;WDTCR2<-DISBLE CODE
; ;WATCH DOG TIMER RESET
;
TBTSET: ;
LD (TBTCR),0y00001101 ;INTTBT 1.024ms Set@@@
;
TC2SET: ;
LD (TC2CR),0y00001000 ;SOURCE_CLOCK = 64us (fc/2exp8)
LDW (TC2DR),0x061A ;TIMER COUNT = 1562 TIMES
LD (TC2CR),0y00101000 ;TC2 START
;---SOURCE CLOCK 64 us * 1562(COUNT) = 99.968 [ms]
;
TC1SET: ;
LD (TC1CR),0y00000100 ;SOURCE_CLOCK = 32us (fc/2exp7)
LDW (TC1DRA),0x002E ;TIMER COUNT = 46 TIMES
LD (TC1CR),0y00010100 ;TC1 START
;---SOURCE CLOCK 32 us * 46(COUNT) = 1.472 [ms]
;
; ;100308
TC5SET: ;F-FAN
LD (TC5CR),0y01100010 ;SOURCE_CLOCK = 512us (fc/2exp3)
LD (TTREG5),0 ;
LD (PWREG5),0
;
TC6SET: ;C-FAN
LD (TC6CR),0y01100010 ;SOURCE_CLOCK = 512us (fc/2exp3)
LD (TTREG6),0 ;
LD (PWREG6),0
;
;
;--- INTERRUPT ENABLE ---
DI
; 5432109876543210
LDW (EIR1),0y0001000100100000 ;INT3(12),INT2(8),TBT(7),TC1(5)
LDW (EIR2),0y0000000001000000 ;TC2(22)
EI
; INTERRUPT START (EIF<--"1") === >
;============================================
;--- WATCH DOG TIMER SETTING (1024MS SETTING) ---
LD (WDTCR2),0x4E ;WDT COUNTER CLEAR
LD (WDTCR1),0y00001011 ;WDTT<-- 01(2sec) , WDTOUT<-- 1(reset)
;
;--- INITIAL CHATTERING COUNTER SET ----
LD (OP_CHAT),14 ;14 TIMES SET ;100323
;
;--- INITIAL LAMP ON COUNTER SET ---<090115>
LD (RLAMP7M),0x07 ;7MIN COUNTER SET
LD (FLAMP7M),0x07 ;7MIN COUNTER SET
LD (ADCHSEL),0 ;A/D CHANNEL 2 SELECT (D-SENSOR)<080830><090114_2>
;
;------- INITIAL DELAY TIME 500mS ------
WAIT: CMP (INDLY),0x05 ;INITIAL 500ms DELAY PASSED=?
J CC,MA10
;
CALL INIP ;TEST + DOOR - S/W INPUT
J WAIT
;
;------- INITIAL SET DISP_KEY CONDITION ---
MA10:
;--- BUZZER 2.631KHz SETTING --- ;TC4CR
LD (TTREG4),BZFREQ_H ;COUNT = 58 (3Ah)TIMES COUNT
LD (TC4CR),0y00110001 ;SOURCE_CLOCK = 2 us (fc/exp2(3))
LD (TC4CR),0y00111001 ;SOURCE_CLOCK = 2 us (fc/exp2(3))
;----SOURCE CLOCK 2us * 58(COUNT) = 116usec * 2(DUTY) = 232usec = 4.31[KHz]
;----SOURCE CLOCK 2us * 95(COUNT) = 190usec * 2(DUTY) = 380usec = 2.631 [KHZ]
;
LDW (DKEYDT),0xFFFF ;INITIAL DISPLAY KEY & BUZZER RING F.CLR
LD (LOCKROT),0xFF ;INITIAL LOCKROT (SCAN0_KEY_1)
LD (RKROT),0xFF ;INITIAL RKROT (SCAN1_KEY_2)
LD (QRKROT),0xFF ;INITIAL QRKROT (SCAN2_KEY_3)
;
LDW (CMP6HR),360 ;COMP OPERATION TIME 6HOUR COUNTER
LD (FANON60S),60 ;DOOR OPEN½Ã F-FAN ON 60s SET
;
;---------------------------------------;100308
;FAN MOTOR DATA
LD (FLOK15S),150 ;F_FAN Lock 15sec Set (150)
LD (CLOK15S),150 ;C_FAN Lock 15sec Set (150)
;
LD (FLOCKCNT),0
LD (CLOCKCNT),0
;
LD (F_START3S),30 ;F-FAN START 3SEC
LD (C_START3S),30 ;C-FAN START 3SEC
;-----------------------------------------
;
;
;
;
;
;=======================================
; EEPROM NOTCH DATA READ
;=======================================
EEPR00: SET (P5DR).POCS ;EEPROM CHIP SELECT(ENABLE)
;
LD DE,ECREAD0 ;LOAD EEPROM R-NOTCH READ COMMAND & ADDRESS
LD C,(DE)
;
CALL DATARED ;DATA OUTPUT / INPUT
;
CLR (P5DR).POCS ;EEPROM CHIP SELECT(DISABLE)
;
CMP C,0y01011111 ;INITIAL DATA SETTING ?
J NE,EEPR05
;
;----- R-NOTCH BACKUP DATA SETTING -----
LD (RN_NOW),B ;EEPROM_BACKUP_R_NOTCH_CURRENT_STATUS
LD (RN_CHN),B ;EEPROM_BACKUP_R_NOTCH_CHANGE_STATUS
LD (RN_B_U),B ;EEPROM_BACKUP_R_NOTCH_BACK_UP
J EEPR10
;
;----- R-NOTCH INITIAL DATA JUNG SETTING----
EEPR05:
LD (RN_NOW),TEMP3 ;R_NOTCH_CURRENT_STATUS (JUCK)
LD (RN_CHN),TEMP3 ;R_NOTCH_CHANGE_STATUS (JUCK)
LD (RN_B_U),TEMP3 ;R_NOTCH_BACK_UP (JUCK)
;
;---------------------------------------
;------- Defrost time(L) Back up -------
;---------------------------------------
EEPR10: SET (P5DR).POCS ;EEPROM CHIP SELECT(ENABLE)
;
LD DE,ECREAD1 ;LOAD EEPROM READ COMMAND & ADDRESS
LD C,(DE)
;
CALL DATARED ;DATA OUTPUT / INPUT
;
CLR (P5DR).POCS ;EEPROM CHIP SELECT(DISABLE)
;
CMP C,0y01011111 ;INITIAL DATA SETTING ?
;;;;; J NE,EEPR20
J NE,EEPRED
;
;----- Defrost time(L) setting -----
LD HL,DEFCNT1
LD (HL),B
;---------------------------------------
;------- Defrost time(H) Back up -------
;---------------------------------------
EEPR20: SET (P5DR).POCS ;EEPROM CHIP SELECT(ENABLE)
;
LD DE,ECREAD2 ;LOAD EEPROM READ COMMAND & ADDRESS
LD C,(DE)
;
CALL DATARED ;DATA OUTPUT / INPUT
;
CLR (P5DR).POCS ;EEPROM CHIP SELECT(DISABLE)
;
CMP C,0y01011111 ;INITIAL DATA SETTING ?
J NE,EEPRED
;
;----- Defrost time(H) setting -----
LD HL,DEFCNT1
ADD HL,1
LD (HL),B
;
;-------------------
CMP (DEFBKUP),0 ;EEPROM WRITE 30min PASSED? (0 at TEST return)
J EQ,EEPRED ;TEST return --> DEFCNT = 9.5hr (not use EEPROM data)
;-------------------
;
LD WA,(DEFCNT1)
LD (DEFCNT),WA ;Àû»ê ½Ã°£ º¹¿ø
;
;-------------------
LD WA,(DEFCNT) ;DEFCNT > 7HR?
CMP WA,DEF7HR
J CS,EEPRED
;
LDW (DEFCNT),DEF7HR ;DEFCNT = 7HR
;-------------------
;
;---------------------------------------
EEPRED:
;
;==============================================
;======= INITIAL DISP LED RAM SET =======
;==============================================
;---- R_NOTCH LED SETTING -------
;;MA50: CMP (RN_B_U),TEMP6 ;R-ROOM "TEMP6" STATUS = ?
;; J EQ,MA61
;;;
;;;;; CMP (RN_B_U),TEMP5 ;R-ROOM "TEMP5" STATUS = ?
;;;;; J EQ,MA62
;;;
;; CMP (RN_B_U),TEMP4 ;R-ROOM "TEMP4" STATUS = ?
;; J EQ,MA63
;;;
;; CMP (RN_B_U),TEMP3 ;R-ROOM "TEMP3" STATUS = ?
;; J EQ,MA64
;;;
;; CMP (RN_B_U),TEMP2 ;R-ROOM "TEMP2" STATUS = ?
;; J EQ,MA65
;;;
;;;;; CMP (RN_B_U),TEMP1 ;R-ROOM "TEMP1" STATUS = ?
;;;;; J EQ,MA66
;;;;;;
;;;;; CMP (RN_B_U),TEMP0 ;R-ROOM "TEMP0" STATUS = ?
;;;;; J EQ,MA67
;;;
;; J MA67
;;;
;;MA61:
;;;-- R_NOTCH TEMP6 SETTING ---(6C)
;; LD (DSPDT0),0y00000100 ;R0 LED ON, R3 LED OFF
;; LD (DSPDT1),0y00000000 ;R1 LED OFF,R4 LED OFF
;; LD (DSPDT2),0y00000000 ;R2 LED OFF
;;;------------------------------------------------------
;; J MA70
;;;
;;;;;MA62:
;;;;;;-- R_NOTCH TEMP5 SETTING ---(5C)
;;;;;;------------------------------------------------------
;;;;; J MA70
;;;
;;MA63:
;;;-- R_NOTCH TEMP4 SETTING ---(4C)
;; LD (DSPDT0),0y00000100 ;R0 LED ON, R3 LED OFF
;; LD (DSPDT1),0y00000100 ;R1 LED ON, R4 LED OFF
;; LD (DSPDT2),0y00000000 ;R2 LED OFF
;;;------------------------------------------------------
;; J MA70
;;;
;;MA64:
;;;-- R_NOTCH TEMP3 SETTING ---(3C)
;; LD (DSPDT0),0y00000100 ;R0 LED ON, R3 LED OFF
;; LD (DSPDT1),0y00000100 ;R1 LED ON, R4 LED OFF
;; LD (DSPDT2),0y00000100 ;R2 LED ON
;;;------------------------------------------------------
;; J MA70
;;;
;;MA65:
;;;-- R_NOTCH TEMP2 SETTING ---(2C)
;; LD (DSPDT0),0y00000110 ;R0 LED ON, R3 LED ON
;; LD (DSPDT1),0y00000100 ;R1 LED ON, R4 LED OFF
;; LD (DSPDT2),0y00000100 ;R2 LED ON
;;;------------------------------------------------------
;; J MA70
;;;
;;;;;MA66:
;;;;;;-- R_NOTCH TEMP1 SETTING ---(1C)
;;;;;;------------------------------------------------------
;;;;; J MA70
;;;
;;MA67:
;;;-- R_NOTCH TEMP0 SETTING ---(0C)
;; LD (DSPDT0),0y00000110 ;R0 LED ON, R3 LED ON
;; LD (DSPDT1),0y00000110 ;R1 LED ON, R4 LED ON
;; LD (DSPDT2),0y00000100 ;R2 LED ON
;;;------------------------------------------------------
;; J MA70
;;;
;;MA70:
;
;TBTSET: ;COMM
LD (TBTCR),0y00001101 ;INTTBT 1.024ms Set@@@
;
;--- INTERRUPT ENABLE ---
DI
; 5432109876543210
LDW (EIR1),0y0001000110100000 ;INT3(12),INT2(8),TBT(7),TC1(5)
LDW (EIR2),0y0000000001000000 ;TC2(22)
EI
;
LD (WDTCR1),0y00001011 ;WDTEN<-0
;=====================================
MA100:
J MAIN
J START ;NOISE PROTECTION
;
;
;
;********************************************************
;**** I/O INITIALIZE FOR RESET & INPUT PORT ENABLE ****
;********************************************************
;
;======================= INITIAL I/O DEFINE ========================
IOINIT:
;> Tri-state
;---------------------------76543210
LD (P0DR), 0y11100110 ;1-INPUT
LD (P0OUTCR),0y00011111 ;0-INPUT / 1-OUTPUT
;B7 -[IN ]C-FAN BLDC FAN INT2
;B6 -[IN ]R-DOOR S/W
;B5 -[IN ]F-DOOR S/W
;B4 -[OUT]unused
;B3 -[OUT]unused
;B2 -[OUT]FLASH TX
;B1 -[OUT]FLASH RX
;B0 -[OUT]LINEAR Åë½Å
;> Tri-state
;---------------------------76543210
LD (P1DR), 0y00100000 ;1-INPUT
LD (P1CR), 0y11011111 ;0-INPUT / 1-OUTPUT
;B7 -[OUT]C-FAN BLDC FAN PWM6
;B6 -[OUT]F-FAN BLDC FAN PWM5 (C)
;B5 -[IN ]F-FAN BLDC FAN INT3
;B4 -[OUT]BUZZER PPG
;B3 -[OUT]BUZZER TR
;B2 -[OUT]R-LAMP(H)
;B1 -[OUT]R-LAMP
;B0 -[OUT]DEF HTR
;> Sink open drain
;---------------------------76543210
LD (P2DR), 0y11111000 ;1-INPUT / 0-OUTPUT
;B2 -[OUT]unused
;B1 -[OUT]unused
;B0 -[OUT]unused
;> Sink open drain
;---------------------------76543210
LD (P3DR), 0y00000000 ;1-INPUT / 0-OUTPUT
;B7 -[OUT]unused
;B6 -[OUT]unused
;B5 -[OUT]unused
;B4 -[OUT]unused
;B3 -[OUT]unused
;B2 -[OUT]unused
;B1 -[OUT]unused
;B0 -[OUT]unused
;> Tri-state
;---------------------------76543210
LD (P4DR), 0y00001000 ;1-INPUT
LD (P4OUTCR),0y11110111 ;0-INPUT / 1-OUTPUT
;B7 -[OUT]F-LAMP
;B6 -[OUT]F-FAN(L)
;B5 -[OUT]F-FAN(H)
;B4 -[OUT]COMP
;B3 -[IN ]TEST S/W
;B2 -[OUT]unused
;B1 -[OUT]V-LED
;B0 -[OUT]SCAN5
;> Sink open drain
;---------------------------76543210
LD (P5DR), 0y00001000 ;1-INPUT / 0-OUTPUT
;B4 -[OUT]unused
;B3 -[IN ]EEPROM DO
;B2 -[OUT]EEPROM DI
;B1 -[OUT]EEPROM SK
;B0 -[OUT]EEPROM CS
;> Tri-state
;---------------------------76543210
LD (P6DR), 0y10000000 ;
LD (P6CR1), 0y00000000 ;0-INPUT / 1-OUTPUT
LD (P6CR2), 0y10000000 ;1-INPUT / 0-AD INPUT
;B7 -[IN ]KEY INPUT
;B6 -[IN ]unused
;B5 -[IN ]REG º¸»ó (AIN5)
;B4 -[IN ]CUT º¸»ó (AIN4)
;B3 -[IN ]RT SENSOR (AIN3)
;B2 -[IN ]R1 SENSOR (AIN2)
;B1 -[IN ]DEFSENSOR (AIN1)
;B0 -[IN ]R2 SENSOR (AIN0)
;> Tri-state
;---------------------------76543210
LD (P7DR), 0y00000000 ;
LD (P7CR1), 0y11111111 ;0-INPUT / 1-OUTPUT
LD (P7CR2), 0y00000000 ;1-INPUT / 0-AD INPUT
;B7 -[OUT]SCAN4
;B6 -[OUT]SCAN3
;B5 -[OUT]SCAN2
;B4 -[OUT]SCAN1
;B3 -[OUT]SCAN0
;B2 -[OUT]DATA0
;B1 -[OUT]DATA1
;B0 -[OUT]DATA2
;
RET
;
;########################################################
;########################################################
;######## #########
;######## INTERRUPT SERVICE ROUTINE #########
;######## #########
;########################################################
;########################################################
;
;########################################################
;######## NOT SERVICE INTERRUPT RETURN #########
;########################################################
RET_INT: RETI ;SERVICE_RETURN
;
;
;
;########################################################
;######## TIMER A INTERRUPT SVC ROUTINE #########
;######## (SIRIAL INTERFACE) #########
;######## (1.024mS) #########
;########################################################
INTTBT:
;
;
;--- INTERRUPT ENABLE --- ;LED DISPLAY Çã¿ë INTTC1
DI
; 5432109876543210
LDW (EIR1),0y0000000000100000 ;INT3(12),INT2(8),TBT(7),TC1(5)
LDW (EIR2),0y0000000000000000 ;TC2(22)
EI
;
PUSH WA
PUSH BC
PUSH DE
PUSH HL
;
LD W,(RBS3_W)
LD A,(RBS3_A)
LD B,(RBS3_B)
LD C,(RBS3_C)
LD D,(RBS3_D)
LD E,(RBS3_E)
LD H,(RBS3_H)
LD L,(RBS3_L)
;
; INTERRUPT START (EIF<--"1") === >
;

;########################################################
;######## LINEAR COMP COMMUNICATION #########
;########################################################
INTTBT0:
; ;2.048 make
CPL (SIO2FLAG).SIOTOG
;
TEST (SIO2FLAG).SIOTOG
J T, TBTSIO00
J TBTEND
;
TBTSIO00:
TEST (SIO2FLAG).TXON ;transmit mode ?
J F,TBTSIO
;
CMP (RXCT1S),0 ;1sec waiting ?
J NE,TBTSIO
;
;------------- COMMUCATION ERR SET ----------------------------
SET (SIO2FLAG).TXON ;transmit MOSE flag set
LD BC,0
LD WA,0
LD (RXCT1S),10 ;SENDING TIME 1SEC SET
;
;==================== COMMUNICATION PROGRAM ==========================
TBTSIO:
TEST (SIO2FLAG).TXON ;a room transmit mode ?
J F,TBTSO
J TBTEND
;
;=============== TX MODE ========================================
TBTSO:
ADD W,0x40 ;ones per 4times(6.144ms)
J CS,TBTSO01 ;carry flag set ?
J TBTEND ;return interrupt
;==================================================================
;=============== 6.144ms = 1.536ms * 4 ===========================
TBTSO01:CMP B,0 ;first
J EQ,TBTSO05
CMP B,1 ;start bit transmit
J EQ,TBTSO10
CMP B,2 ;data transmit
J EQ,TBTSO20
CMP B,3 ;stop bit transmit
J EQ,TBTSO30
;
CLR (SIO2FLAG).TXON ;transmit complete, flag down
LD B,0
LD C,0
J TBTEND ;error occur
;
TBTSO05: LD C,0 ;transmit byte counter
J TBTSO35
;
TBTSO10:
LD E,8 ;bit counter
SET (P0DR).POCOMM ;start bit transmit
INC B
J TBTEND
;
TBTSO20:
SHRC D ;shift right 1 bit
J CS,TBTSO21 ;data = 1 ?
;
SET (P0DR).POCOMM ;bit LOW OUTPUT
J TBTSO23
;
TBTSO21:
CLR (P0DR).POCOMM ;bit HIGH OUTPUT
;
TBTSO23:
DEC E ;bit counter decrement
J NZ,TBTEND
;
TBTSO24:
INC B
J TBTEND
;
TBTSO30:
CLR (P0DR).POCOMM ;stop bit transmit
INC C ;transmit next byte
;
TBTSO35:
LD HL,SENDM1 ;transmit data pointer
LD D,(HL+C) ;BYTE DATA POINTER
LD B,1 ;start bit transmit
CMP C,2 ;transmit complete 2 byte ?
J LT,TBTEND
;
TBTSO36:
CLR (SIO2FLAG).TXON ;transmit complete, flag down
LD B,0
LD C,0
J TBTEND
;
TBTEND:
;
LD (RBS3_W),W
LD (RBS3_A),A
LD (RBS3_B),B
LD (RBS3_C),C
LD (RBS3_D),D
LD (RBS3_E),E
LD (RBS3_H),H
LD (RBS3_L),L
;
POP HL
POP DE
POP BC
POP WA
;
;==================================================
;====== F/C-FAN STEP INTERVAL COUNT ==============
;==================================================
PUSH WA
PUSH BC
PUSH DE
PUSH HL
;
Q2MS:
LD HL,FFANDUTY1S
CMP (HL),0 ;2.048ms PASSED = ?
J EQ,Q2MS01
;
DEC (HL)
;
Q2MS01:
Q2MS02:
LD HL,CFANDUTY1S
CMP (HL),0 ;2.048ms PASSED = ?
J EQ,Q2MS03
;
DEC (HL)
;
Q2MS03: NOP
;
;
;
INTTBTEND:
;
POP HL
POP DE
POP BC
POP WA
;
DI
;--- INTERRUPT ENABLE ---
; 5432109876543210
LDW (EIR1),0y0001000110100000 ;INT3(12),INT2(8),TBT(7),TC1(5)
LDW (EIR2),0y0000000001000000 ;TC2(22)
EI
;
;
RETI
;
;
;
;########################################################
;######## T C 2 INTERRUPT SVC ROUTINE #########
;######## ( 100 ms TIMER ) #########
;########################################################
INTTC2:
;--- INTERRUPT ENABLE --- ;100417 100ms TIMER ÀÎÅÍ·´Æ®¿¡¼­ FAN FG ¿ÜºÎ ÀÎÅÍ·´Æ® Çã¿ë
DI
; 5432109876543210
LDW (EIR1),0y0001000110100000 ;INT3(12),INT2(8),TBT(7),TC1(5)
LDW (EIR2),0y0000000000000000 ;TC2(22)
;TC2 DISABLE
EI
;
PUSH WA
PUSH BC
PUSH DE
PUSH HL
;
LD W,(RBS1_W)
LD A,(RBS1_A)
LD B,(RBS1_B)
LD C,(RBS1_C)
LD D,(RBS1_D)
LD E,(RBS1_E)
LD H,(RBS1_H)
LD L,(RBS1_L)
;
;
;******** INITIAL 500mS COUNT ********
CMP (INDLY),0x05 ;INITIAL 500ms PASSED?
J EQ,TB1_10
;
INC (INDLY)
J TB1END
;
;------ 100 mS COUNT ------
TB1_10:
CALL Q100MS ;100ms_TIME_DATA_COUNT SUBROUTINE CALL
;
LD HL,B100MS
CALL BCD1B ;100ms BCD INCREMENT
;
CMP (HL),0x10 ;1sec PASSED?
J NE,TB1END
;
;------ 1 SEC COUNT ------
LD (HL),0 ;100ms COUNTER RAM CLEAR
CALL QSEC ;1sec_TIME_DATA_COUNT SUBROUTINE CALL
;
LD HL,B1SEC
CALL BCD1B ;100ms BCD INCREMENT
;
;
PUSH WA
PUSH BC
PUSH DE
PUSH HL
;
;============== FAN F/G ½ÅÈ£ COUNT ROUTINE ==================
LD WA,(FFANRPM) ;F-Fan FG Count °ªÀ» F-Fan rpmÀ¸·Î ÀúÀå
LD (FFGCNT),WA ;F-Fan FG Count °ªÀ» F-Fan rpmÀ¸·Î ÀúÀå
;
LD WA,(CFANRPM)
LD (CFGCNT),WA
;
LD (FFANRPM),0
LD (FFANRPM+1),0
LD (CFANRPM),0
LD (CFANRPM+1),0
;
POP HL
POP DE
POP BC
POP WA
;
;============================================================
;
CMP (HL),0x60 ;1min OVER = ?
J NE,TB1END
;
;------ 1 MIN COUNT ------
LD (HL),0 ;1sec COUNTER RAM CLEAR
CALL QMIN ;1min_TIME_DATA_COUNT SUBROUTINE CALL

;-----------------------;
TB1END:
;
;
LD (RBS1_W),W
LD (RBS1_A),A
LD (RBS1_B),B
LD (RBS1_C),C
LD (RBS1_D),D
LD (RBS1_E),E
LD (RBS1_H),H
LD (RBS1_L),L
;
POP HL
POP DE
POP BC
POP WA
;
;--- INTERRUPT ENABLE ---
DI
; 5432109876543210
LDW (EIR1),0y0001000110100000 ;INT3(12),INT2(8),TBT(7),TC1(5)
LDW (EIR2),0y0000000001000000 ;TC2(22)
EI
;

;
;
TC2END: RETI
;
;
;
;***************************************
; INTERRUPT 2
; C-Fan FG Signal Count
;***************************************
INT2:
PUSH WA
PUSH BC
PUSH DE
PUSH HL
;KFGCNT
CMP (CFANRPM),255
J EQ, INT2_1
;
INC (CFANRPM) ;K-Fan FG Signal Countȸ¼ö Áõ°¡
J INT2END
;
INT2_1:
INC (CFANRPM+1) ;
LD (CFANRPM),0
;
INT2END:
POP HL
POP DE
POP BC
POP WA
RETI
;
;***************************************
; INTERRUPT 3
; F-Fan FG Signal Count
;***************************************
INT3:
PUSH WA
PUSH BC
PUSH DE
PUSH HL
;CFGCNT
CMP (FFANRPM),255
J EQ, INT3_1
;
INC (FFANRPM) ;C-Fan FG Signal Countȸ¼ö Áõ°¡
J INT3END
;
INT3_1:
INC (FFANRPM+1) ;
LD (FFANRPM),0
;
INT3END:
POP HL
POP DE
POP BC
POP WA
RETI
;
;########################################################
;######## TIMER 1 INTERRUPT SVC ROUTINE #########
;######## (DISPLAY SCAN DRIVE CONTROL) #########
;######## (1.472mS TIMER) #########
;########################################################
;
INTTC1:
;
PUSH WA
PUSH BC
PUSH DE
PUSH HL
;
LD W,(RBS0_W)
LD A,(RBS0_A)
LD B,(RBS0_B)
LD C,(RBS0_C)
LD D,(RBS0_D)
LD E,(RBS0_E)
LD H,(RBS0_H)
LD L,(RBS0_L)
;

;--- scan line all off output ---
;--------------76543210----------------
AND (P4DR),0y11111110 ;SCAN_5 (b0) ALL OFF SCAN (0:OFF)
;--------------76543210----------------
AND (P7DR),0y00000111 ;SCAN_0~4(b3~7) ALL OFF SCAN (0:OFF)
;---------------------------------------------------------------
;--- scan data rotation (M(SNROT)) ---
TBTRT: LD HL,SNROT
CMP (HL),0y00001000 ;SCAN_0 STATUS ?
J EQ,TBTRT1
;
CMP (HL),0y00010000 ;SCAN_1 STATUS ?
J EQ,TBTRT2
;
J TBTRT3 ;SCAN_2 STATUS
;
;
;;;;; CMP (HL),0y00100000 ;SCAN_2 STATUS ?
;;;;; J EQ,TBTRT3
;;;;;;
;;;;; CMP (HL),0y01000000 ;SCAN_3 STATUS ?
;;;;; J EQ,TBTRT4
;;;;;;
;;;;; CMP (HL),0y10000000 ;SCAN_4 STATUS ?
;;;;; J EQ,TBTRT5
;;;;;;
;;;;; CMP (HL),0y00000001 ;SCAN_5 STATUS ?
;;;;; J EQ,TBTRT6
;;;;;;
;;;;; J TBTRT6
;
TBTRT1:
LD (HL),0y00010000 ;SCAN_1 SET
J TBTRTED
;---------------
TBTRT2:
LD (HL),0y00100000 ;SCAN_2 SET
J TBTRTED
;---------------
TBTRT3:
;;;;; LD (HL),0y01000000 ;SCAN_3 SET
;;;;; J TBTRTED
;;;;;;---------------
;;;;;TBTRT4:
;;;;; LD (HL),0y10000000 ;SCAN_4 SET
;;;;; J TBTRTED
;;;;;;---------------
;;;;;TBTRT5:
;;;;; LD (HL),0y00000001 ;SCAN_5 SET
;;;;; J TBTRTED
;;;;;;---------------
;;;;;TBTRT6:
LD (HL),0y00001000 ;SCAN_0 SET or INITIAL INT' OCCUPED
;---------------
TBTRTED:
;-------------------------------------------------------
;=======================================
;====== SCAN & LED DATA OUTPUT =====
;=======================================
TBTD00:
;------------------------------------
;------ scan & led data output -----
;------------------------------------
;
LD HL,DSPDT0 ;NORMAL OPERATING MODE LED DISPLAY DATA
;
;=======================================================
;-------------------------------------------------------
;--- DIGIT0 = ?
TBTDG00:TEST (SNROT).BIT3 ;PORT7.BIT3 ?
J T,TBTDG10
;
LD DE,EDSPDT0 ;RT_SENSOR ERROR DISPLAY DATA
CALL DTOUT ;DISPLAY DATA OUTPUT
;;;;; LD HL,LOCKROT ;LOCK_KEY ON CHECK
J TBTDG70
;
;-------------------------------------------------------
;--- DIGIT1 = ?
TBTDG10:TEST (SNROT).BIT4 ;PORT7.BIT4 = ?
J T,TBTDG20
;
LD DE,EDSPDT1 ;RT_SENSOR ERROR DISPLAY DATA
ADD HL,1
;
CALL DTOUT ;DISPLAY DATA OUTPUT
;
LD HL,RKROT ;R_KEY ON CHECK
CALL RQR_ON
J TBTDG70
;
;----------------------------------------------------------
;--- DIGIT2 = ?
TBTDG20:
;;;;; TEST (SNROT).BIT5 ;PORT7.BIT5 = ?
;;;;; J T,TBTDG30
;
LD DE,EDSPDT2 ;RT_SENSOR ERROR DISPLAY DATA
ADD HL,2
;
CALL DTOUT ;DISPLAY DATA OUTPUT
;;;;; LD HL,QRKROT ;QR_KEY ON CHECK
;;;;; CALL RQR_ON
;
J TBTDG70
;-----------------------------------------------------------
;;;;;;--- DIGIT3 = ?
;;;;;TBTDG30:TEST (SNROT).BIT6 ;PORT3.BIT5 = ?
;;;;; J T,TBTDG40
;;;;;;
;;;;; LD DE,EDSPDT3 ;RT_SENSOR ERROR DISPLAY DATA
;;;;; ADD HL,3
;;;;;;
;;;;; CALL DTOUT ;DISPLAY DATA OUTPUT
;;;;;;
;;;;; J TBTDG70
;;;;;;-----------------------------------------------------------
;;;;;;--- DIGIT4 ---
;;;;;TBTDG40:TEST (SNROT).BIT7 ;PORT3.BIT4 = ?
;;;;; J T,TBTDG50
;;;;;;
;;;;; LD DE,EDSPDT4 ;RT_SENSOR ERROR DISPLAY DATA
;;;;; ADD HL,4
;;;;;;
;;;;; CALL DTOUT ;DISPLAY DATA OUTPUT
;;;;; J TBTDG70
;;;;;;-----------------------------------------------------------
;;;;;;--- DIGIT5 ---
;;;;;TBTDG50:LD DE,EDSPDT5 ;RT_SENSOR ERROR DISPLAY DATA
;;;;; ADD HL,5
;;;;;;
;;;;; CALL DTOUT ;DISPLAY DATA OUTPUT
;;;;; J TBTDG70
;-----------------------------------------------------------
TBTDG70: NOP
;
;===================================================================
;------------------ SCAN KEY DETECTION ROUTINE -------------------
;===================================================================
TBTSC1: TEST (DOFLAG).DO_R ;R-DOOR OPEN ?
J T,TBTSCED ;IF DOOR CLOSE, DISPLYA OFF
;-----------------------------------------------------------
CMP (KYSTATE),OFFALL ;KEY_STATE ALL OFF = ?
J NE,TBTSC3
;
LD A,(P6DR)
OR A,0y01111111 ;ONLY b2 INPUT(PI_SKY)
CMP A,0y01111111 ;BIT1 INPUT = (0)?
J NE,TBTSCED
;
LD (KYBUFF),A ;KEY_BUFFER <-- KEY_INPUT DATA(0y11111011)
LD W,(SNROT)
LD (SNSAVE),W ;(SCAN SAVE)<--(SCAN ROTATE)
LD (KYSTATE),ONCHAT ;KEY_STATE <-- CHATTERING FLAG SET
LD (CHATCNT),10 ;CHAT_COUNTER <-- "10"
J TBTSCED
;
TBTSC3: LD HL,SNROT
LD A,(HL)
CMP A,(SNSAVE) ;(SNSAVE)=(SNROT) ?
J NE,TBTSCED
;
LD A,(P6DR) ;KEY_INPUT
OR A,0y01111111 ;ONLY b2 INPUT
OR A,(KYBUFF)
LD (KYWORK),A ;KEY_WORK_AREA<--KEY INPUT DATA
;
CMP A,(KYBUFF) ;KEY_BUFFER = INPUT ?
J EQ,TBTSC9
;
CMP (KYSTATE),ONCHAT ;ON CHATTERING ?
J NE,TBTSC5
;
LD (KYSTATE),OFFALL ;KEY_STATE <-- ALL OFF
J TBTSCED
;
TBTSC5: CMP (KYSTATE),ONKEY ;KEY ON STATUS = ?
J EQ,TBTSC7
;
DEC (CHATCNT) ;CHATTERING COUNTER DECREMENT
J F,TBTSCED
;
LD (KYSTATE),OFFALL ;KEY_STATE <-- ALL OFF
J TBTSCED
;
TBTSC7: LD (CHATCNT),10 ;CHAT_COUNTER <--#10
LD (KYSTATE),OFFCHAT ;KEY_STATE <-- OFF CHATTERING
J TBTSCED
;
TBTSC9: CMP (KYSTATE),ONCHAT ;KEY_STATE ON CHATTERING = ?
J EQ,TBTSC11
;
LD (KYSTATE),ONKEY ;KEY_STATE <-- KEY ON SET(0x2)
J TBTSCED
;
TBTSC11:DEC (CHATCNT) ;CHATTERING COUNTER DECREMENT
J F,TBTSCED
;
LD (KYSTATE),ONKEY ;KEY_STATE <-- KEY ON SET(0x2)
;
LD A,0xFF ;Accumulator clear('1')
;--- KEY_DATA <-- DIGIT0_BUFFER_DATA ---
;;;;;TBTSC20:TEST (SNSAVE).BIT3 ;DIGIT0 STATUS = ?
;;;;; J T,TBTSC30
;;;;;;
;;;;; LD CF,(KYBUFF).PISKY
;;;;; LD A.EN_KEY,CF ;LOCK_KEY SET
;;;;;;
;;;;; J TBTSC60
;--- KEY_DATA <-- DIGIT1_BUFFER_DATA ---
TBTSC30:TEST (SNSAVE).BIT4 ;DIGIT1 STATUS = ?
J T,TBTSC40
;
;;;;; TEST (KEYLOCK).KLOCK ;KEY_LOCK FLAG SET ?
;;;;; J F,TBTSCED
;
LD CF,(KYBUFF).PISKY
LD A.R_KEY,CF ;R_KEY SET
;
J TBTSC60
;
;--- KEY_DATA <-- DIGIT2_BUFFER_DATA ---
TBTSC40:NOP
;;;;; TEST (SNSAVE).BIT5 ;DIGIT1 STATUS = ?
;;;;; J T,TBTSC60
;;;;;;
;;;;; TEST (KEYLOCK).KLOCK ;KEY_LOCK FLAG SET ?
;;;;; J F,TBTSCED
;;;;;;
;;;;; LD CF,(KYBUFF).PISKY
;;;;; LD A.QR_KEY,CF ;QR_KEY SET
;;;;;;
;;;;; J TBTSC60
;
TBTSC60:
CMP (ERR3HR),0 ;100320 3½Ã°£ °æ°úÇϸé ERROR Ç¥½Ã
J NE,TBTSC65
;
CMP (ERR_1ST),0 ;ERROR MASTER FLAG SET = ?
J NE,TBTSC70
;
TBTSC65:
LD (DKEYDT),A ;DISP'_KEY_DATA <-- KEY_BUFFER_DATA
TBTSC70:LD (DKRINGF),A ;DISP'_KEY_BUZZER RING FLAG AREA
;
TBTSCED: NOP
;====================================================
;------ BUZZER RING CNT -------
TBTBZ0: LD HL,BZCNT ;BUZZER RING 100,500ms CNT
LD WA,(HL)
CMP WA,0
J EQ,TBTBZED
;
DEC WA
LD (HL),WA
;
TBTBZED: NOP
;====================================================
;------ EEPROM CNT ------
TC3EPR: CMP (EWCNT),0 ;EEPROM 100ms COUNT
J EQ,TC3EPRED
DEC (EWCNT)
;
TC3EPRED: NOP
;====================================================
;
;====================================================
;---- VEGETALBE LED CONTROL ---
;
TEST (TSTFLAG).TSTMAST ;TEST_MODE_MASTER_FLAG SET = ?
J F,MINDL20
;
TEST (DOFLAG).DUTY1
J F,MINDL10
TEST (DOFLAG).DUTY2
J F,MINDL20
;
SET (P4DR).POVLED
SET (DOFLAG).DUTY1
CLR (DOFLAG).DUTY2
J MINDL30
;
MINDL10:CLR (DOFLAG).DUTY1
SET (DOFLAG).DUTY2
CLR (P4DR).POVLED
J MINDL30
;
MINDL20:CLR (DOFLAG).DUTY1
CLR (DOFLAG).DUTY2
CLR (P4DR).POVLED
J MINDL30
;
MINDL30:NOP
;
;
LD (RBS0_W),W
LD (RBS0_A),A
LD (RBS0_B),B
LD (RBS0_C),C
LD (RBS0_D),D
LD (RBS0_E),E
LD (RBS0_H),H
LD (RBS0_L),L
;
POP HL
POP DE
POP BC
POP WA
;
TC1END: RETI
;
;
;
;
;########################################################
;######## #########
;######## INTERRUPT SUB CALL ROUTINE #########
;######## #########
;########################################################
;##############################################
;######## INTTC3 SUB CALL ROUTINE ########
;##############################################
;--- DISPLAY DATA PORT OUTPUT CALL ROUTINE ---
; input_parameter = (HL) display data
; output_parameter = p1_scan data & p1_data + p2_data output
DTOUT: TEST (DOFLAG).DO_R ;R-DOOR OPEN?
J T,DTOUT5
;
;---------------------------------------;100320 HIDDEN ERROR
CMP (ERR_1ST),0 ;ERROR MASTER FLAG SET = ?
J NE,DTOUT_ERR
;---------------------------------------
;
TEST (GENFLAG).RQRPASS ;R&QR_KEY 1SEC PASSED=?
J T,DTOUT20
;
;--------- RT-SENSOR ERROR LED SET ------------
TEST (ERRFLAG).RTSERR
J T,DTOUT9 ;NO ERROR --> LED ALL ON
;
DTOUT5: ;RT-SENSOR ERROR --> LED ALL OFF
LDW (EDSPDT0),0x0000
LDW (EDSPDT2),0x0000
LDW (EDSPDT4),0x0000
;
J DTOUT10
;
;================================================
;======= ERROR DISP LED SET =========;100320 HIDDEN ERROR
;================================================
DTOUT_ERR:
CMP (ERR3HR),0 ;3½Ã°£ °æ°úÇϸé ERROR Ç¥½Ã
J EQ,DTOUT_D ;¾Æ´Ï¸é ALL ON ½Ã ERROR Ç¥½Ã
;
TEST (GENFLAG).RQRPASS ;R&QR_KEY 1SEC PASSED=?
J T,DTOUT20
;
;--------- D-SENSOR ERROR LED SET (xxxOx) ------------
DTOUT_D:
TEST (ERR_1ST).DSERR
J T,DTOUT_R
;
LD (EDSPDT0),0y00000010 ;R0 LED OFF, R3 LED ON
LD (EDSPDT1),0y00000000 ;R1 LED OFF, R4 LED OFF
LD (EDSPDT2),0y00000000 ;R2 LED OFF
;
J DTOUT10
;
;--------- R-SENSOR ERROR LED SET (xxOxx) ------------
DTOUT_R:
TEST (ERR_1ST).RSERR
J T,DTOUT_DEF
;
LD (EDSPDT0),0y00000000 ;R0 LED OFF, R3 LED OFF
LD (EDSPDT1),0y00000000 ;R1 LED OFF, R4 LED OFF
LD (EDSPDT2),0y00000100 ;R2 LED ON
;
J DTOUT10
;
;--------- DEFROST ERROR LED SET (xOOOO) ------------
DTOUT_DEF:
TEST (ERR_1ST).ERRDEF
J T,DTOUT_FFAN
;
LD (EDSPDT0),0y00000010 ;R0 LED OFF, R3 LED ON
LD (EDSPDT1),0y00000110 ;R1 LED ON , R4 LED ON
LD (EDSPDT2),0y00000100 ;R2 LED ON
;
J DTOUT10
;
;--------- F-FAN ERROR LED SET (xOxOx) ------------
DTOUT_FFAN:
TEST (ERR_1ST).FFANERR
J T,DTOUT_CFAN
;
LD (EDSPDT0),0y00000010 ;R0 LED OFF, R3 LED ON
LD (EDSPDT1),0y00000100 ;R1 LED ON , R4 LED OFF
LD (EDSPDT2),0y00000000 ;R2 LED OFF
;
J DTOUT10
;
;--------- C-FAN ERROR LED SET (xOxxO) ------------
DTOUT_CFAN:
TEST (ERR_1ST).CFANERR
J T,DTOUT_NOERR
;
LD (EDSPDT0),0y00000000 ;R0 LED OFF, R3 LED OFF
LD (EDSPDT1),0y00000110 ;R1 LED ON , R4 LED ON
LD (EDSPDT2),0y00000000 ;R2 LED OFF
;
J DTOUT10
;
DTOUT_NOERR:
LD (ERR_1ST),0
;
DTOUT9:
LDW (EDSPDT0),0xFFFF
LDW (EDSPDT2),0xFFFF
LDW (EDSPDT4),0xFFFF
;
;======================================
;===== ABNORMAL DISPLAY OUTPUT ======
;======================================
DTOUT10:
LD A,(DE)
LD CF,A.PODSP0
LD (P7DR).PODSP0,CF
LD CF,A.PODSP1
LD (P7DR).PODSP1,CF
LD CF,A.PODSP2
LD (P7DR).PODSP2,CF
;
J DTOUT30
;
;======================================
;===== NORMAL DISPLAY OUTPUT ======
;======================================
DTOUT20:
LD CF,(HL).PODSP0
LD (P7DR).PODSP0,CF
LD CF,(HL).PODSP1
LD (P7DR).PODSP1,CF
LD CF,(HL).PODSP2
LD (P7DR).PODSP2,CF
;
DTOUT30:
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
;
;---- SCAN LINE OUTPUT ----
LD CF,(SNROT).POSCN0
LD (P7DR).POSCN0,CF
LD CF,(SNROT).POSCN1
LD (P7DR).POSCN1,CF
LD CF,(SNROT).POSCN2
LD (P7DR).POSCN2,CF
LD CF,(SNROT).POSCN3
LD (P7DR).POSCN3,CF
LD CF,(SNROT).POSCN4
LD (P7DR).POSCN4,CF
LD CF,(SNROT).POSCN5
LD (P4DR).POSCN5,CF
;
DTOUTED:RET
;-------------------------------
;-------------------------------
RQR_ON: LD A,(HL)
LD CF,(P6DR).PISKY ;carry flag<--SCAN_KEY INPUT STATUS INPUT
ROLC A
LD (HL),A
RET
;-------------------------------
;##############################################
;####### TIMER2 SUB CALL ROUTINE #######
;##############################################
;========= BCD CODE SUBROUTINE ROUTINE ========
;------ 1 BYTE BCDCODE SUBROUTINE ROUTINE ------
BCD1B: LD A,(HL)
ADD A,1
DAA A
LD (HL),A
RET
;------ 2 BYTE BCDCODE SUBROUTINE ROUTINE ------
BCD2B: LD WA,(HL)
ADD A,1
DAA A
ADDC W,A
DAA W
LD (HL),WA
RET
;##############################################
;####### TIMER B1 SUB CALL ROUTINE #######
;##############################################
;==============================================
;========== 100mS ROUTINE ==========
;==============================================
;--- LOAD SEQUENTIAL DRIVE 500ms COUNTER ----
Q100MS: LD HL,LOADLY
CMP (HL),0 ;500ms delay OVER = ?
J EQ,Q100M1
;
DEC (HL)
;--- DOOR OPEN BUZZER ON 500ms COUNTER ---
Q100M1: LD HL,DO_B500
CMP (HL),0 ;500 MS PASSED = ?
J EQ,Q100M2
;
DEC (HL)
;--- TEST_MODE BUZZER WARNING TIME 2SEC COUNTER ----
Q100M2: LD HL,TSTMBW
CMP (HL),0 ;2 SEC PASSED = ?
J EQ,Q100M3
;
DEC (HL)
;--- R & Q/R KEY 1SEC COUNTER ---
Q100M3: LD HL,RQRLED
CMP (HL),0
J EQ,Q100M4
;
DEC (HL)
;
;(16)2006.12.26
;--- LOCK KEY (2/0.7)SEC COUNTER ---
Q100M4: LD HL,LOCKLED
CMP (HL),0
J EQ,Q100M05
;
DEC (HL)
;
;--- Åë½Å 1ÃÊ COUNTER ---
Q100M05:
LD HL,RXCT1S
CMP (HL),0
J EQ,Q100M06
;
DEC (HL)
;
;--- F-FAN START 3SEC COUNTER ---
Q100M06:
LD HL,F_START3S
CMP (HL),0
J EQ,Q100M07
DEC (HL)
;
;--- F-FAN LOCK 10SEC COUNTER ---
Q100M07:
LD HL,FLOK10S
CMP (HL),0
J EQ,Q100M08
DEC (HL)
;
;--- F-FAN LOCK 15SEC COUNTER ---
Q100M08:
LD HL,FLOK15S
CMP (HL),0
J EQ,Q100M09
DEC (HL)
;
;--- F-FAN LOCK 20SEC COUNTER ---
Q100M09:
LD HL,FCHK20S
CMP (HL),0
J EQ,Q100M10
DEC (HL)
;
;--- C-FAN START 3SEC COUNTER ---
Q100M10:
LD HL,C_START3S
CMP (HL),0
J EQ,Q100M11
DEC (HL)
;
;--- C-FAN LOCK 10SEC COUNTER ---
Q100M11:
LD HL,CLOK10S
CMP (HL),0
J EQ,Q100M12
DEC (HL)
;
;--- C-FAN LOCK 15SEC COUNTER ---
Q100M12:
LD HL,CLOK15S
CMP (HL),0
J EQ,Q100M13
DEC (HL)
;
;--- C-FAN LOCK 20SEC COUNTER ---
Q100M13:
LD HL,CCHK20S
CMP (HL),0
J EQ,Q100M14
DEC (HL)
;
Q100M14:NOP
Q100MED:RET
;
;
;==============================================
;========== 1SEC_CALL_ROUTINE ==========
;==============================================
;--- ALL_KEY_CHANGE 10sec DELAY COUNTER ---
QSEC: LD HL,KCH10S
CMP (HL),0 ; 10sec OVER = ?
J EQ,QSEC1
;
DEC (HL)
;--- DOOR_OPEN TIME COUNTER ---
QSEC1: LD HL,DO_TIME
CMP (HL),0 ;DOOR OPEN TIMER OVER = ?
J EQ,QSEC2
;
DEC (HL)
;--- INITIAL DEF_HEATER DRIVE (HEATER_ON 10sec) COUNTER ---
QSEC2: LD HL,IDHCHK
CMP (HL),0 ;10 SEC PASSED = ?
J EQ,QSEC3
;
DEC (HL)
;--- INITIAL R-LAMP 5SEC COUNTER ---
QSEC3: LD HL,IRLCHK
CMP (HL),0
J EQ,QSEC4
;
DEC (HL)
;---- LQC FAN CHECK 30S COUNTER ----
QSEC4: LD HL,LQC30S
CMP (HL),0 ;30s PASSED = ?
J EQ,QSEC5
;
DEC (HL)
;---- INITIAL H/B HEATER 5S COUNTER ----
QSEC5: ;<090114>
; LD HL,IHBHT5S
; CMP (HL),0 ;5s PASSED = ?
; J EQ,QSEC6
;
; DEC (HL)
;---- R-LOAD 20S COUNTER ----
QSEC6: TEST (DOFLAG).DO_R ;IF DOOR OPEN, DOWN COUNT
J F,QSEC7
;
LD HL,RD20S
CMP (HL),0 ;30s PASSED = ?
J EQ,QSEC7
;
DEC (HL)
;----------------------------------------------
;------- º¯µ¿Á¦»ó DOOR OPEN °¨Áö ROUTINE -------
;----------------------------------------------
;---- º¯µ¿Á¦»ó Door open½Ã 20ºÐ °¨¼Ò ---;<080409>
QSEC7: TEST (DOFLAG).DO_MAST ;1ÃÊ DOOR OPEN½Ã 33HR Á¦»óº¯¼ö´Â
J T,QSEC8 ;20ºÐ¾¿ °¨¼ÒµÈ´Ù.
;
LD HL,DODEFCNT ;WHEN DOOR OPEN,
LD WA,(HL) ;DODEFCNT < 20MIN ?
CMP WA,20 ;YES(CS) => GO QSEC7_1
J CS,QSEC7_1 ; NO(CC) => GO DOWN
;
SUB WA,20 ;DODEFCNT - 20MIN
LD (HL),WA
J QSEC8
;
QSEC7_1:LD WA,0 ;DODEFCNT = 0
LD (HL),WA
;---------------------------------------;<080409>
;
;---- º¯µ¿Á¦»ó DOOR OPEN DELAY 20S COUNTER ----
QSEC8: TEST (DOFLAG).DO_MAST ;<090121>
J F,QSEC9

LD HL,AD_R20S
CMP (HL),0 ;20s PASSED = ?
J EQ,QSEC9
;
DEC (HL)
;
;---- FAN 5sec DELAY COUNTER ----
QSEC9: ;<090304>
; LD HL,FANDL5S
; CMP (HL),0 ;5s PASSED = ?
; J EQ,QSEC10 ;<080726>
;
; DEC (HL)
;--------------------------------------------------------
;---- F½Ç ºÎÇÏ´ëÀÀ F-DOOR OPEN 30s/Àû»ê 40s COUNTER ---- <090213>
;--------------------------------------------------------
QSEC10:
TEST (DOFLAG).DO_F ;F-DOOR OPEN?
J T,QSEC12
;--------- F-DOOR OPEN 30s DECREMENT ------------
LD HL,FDO30S
CMP (HL),0 ;F-DOOR OPEN 30s PASSED = ?
J EQ,QSEC11
;
DEC (HL)
;--------- F-DOOR OPEN ˞Ȑ 40s DECREMENT -------
QSEC11:
LD HL,FDOA40S
CMP (HL),0 ;F-DOOR OPEN ˞Ȑ 40s PASSED = ?
J EQ,QSEC12
;
DEC (HL)
;-----------------------------------------------
;---- R-DOOR OPEN½Ã F-FAN ±âµ¿ 60ÃÊ COUNTER ----<090211>
;-----------------------------------------------
QSEC12:
LD HL,FANON60S
CMP (HL),0 ;60s PASSED = ?
J EQ,QSEC13
;
DEC (HL)
;-----------------------------------------------
;---- COMP OFF ÈÄ F-FAN Ãß°¡¿îÀü COUNTER ----<100319>
;-----------------------------------------------
QSEC13:
TEST (LOADF).POCOMP ;Comp ON ?
J F,QSEC14
;
LD HL,FANONMOR
CMP (HL),0 ;Additional F-FAN ON time passed?
J EQ,QSEC14
;
DEC (HL)
;---------------------------------------
QSEC14: NOP
;
QSECED: RET
;==============================================
;========== 1MIN_CALL_ROUTINE ==========
;==============================================
;--- TEST_MODE MAX' 2 HOUR COUNTER (DECREMENT) ---
QMIN: TEST (TSTFLAG).TSTM2F ;TEST_MODE_2 STATUS = ?
J F,QMIN1
;
TEST (OP_OLD).PITEST ;TEST_S/W LOW STATUS = ? ;100206
J T,QMIN2
;
QMIN1: LD HL,TST2HR
CMP (HL),0 ;2 HOUR OVER = ?
J EQ,QMIN2
;
DEC (HL)
;----------------------------------------------
;------- DEFROST MEMORY COUNTER -------
;----------------------------------------------
QMIN2: TEST (LOADF).POCOMP ;compressor on = ?
J T,QMIN3
;
LD HL,DEFCNT ;Àû»êÁ¦»ó COUNTER
LD WA,(HL)
CMP WA,0
J EQ,QMIN2_1
;
DEC WA
LD (HL),WA
J QMIN3
;
QMIN2_1:LD HL,DODEFCNT ;º¯µ¿Á¦»ó Àû»ê COUNTER
LD WA,(HL)
CMP WA,0
J EQ,QMIN2_2
;
DEC WA
LD (HL),WA
J QMIN3
;
QMIN2_2:
;091110 DEEP COOL ÁßÀÏ ¶§¸¸ COUNT
TEST (DEFFLAG).DCT_F ;DEEP COOL TOGGLE FLAG SET = ?
J T,QMIN3
;
LD HL,DCOOLCNT ;DEEP COOL Ãß°¡¿îÀü 30ºÐ
CMP (HL),0
J EQ,QMIN3
;
DEC (HL)
;----------------------------------------------
;--- COMP 7MIN DELAY TIME DECREMENT ---
QMIN3: LD HL,CD7MIN
CMP (HL),0 ;7MIN PASSED = ?
J EQ,QMIN4
;
DEC (HL)
;--- DEFROST MAX. 2HR COUNTER ---
QMIN4: TEST (LOADF).POHEAT ;DEF_HEATER ON = ?
J T,QMIN5
;
LD HL,DEF2HR
CMP (HL),0 ;2 HOUR PASSED = ?
J EQ,QMIN5
;
DEC (HL)
;--- ERROR LOAD ON/OFF 15MIN COUNTER ---
QMIN5: LD HL,RERR15M
CMP (HL),0 ;15 MIN PASSED = ?
J EQ,QMIN6
;
DEC (HL)
;--- R-LOAD MODE 3HR COUNTER ---
;2007.11.10
QMIN6: TEST (LOADF).POHEAT ;DEF_HEATER ON = ?
J F,QMIN7
;
LD HL,RL3HR
CMP (HL),0
J EQ,QMIN7
;
DEC (HL)
;--- LOW-LAMP 5 MIN COUNTER ---
QMIN7: LD HL,HLAMP5M
CMP (HL),0
J EQ,QMIN8
;
DEC (HL)
;--- R-LAMP OFF COUNTER DECREMENT ---
QMIN8: LD HL,RLAMP7M ;<090115>
CMP (HL),0 ;7MIN PASSED = ?
J EQ,QMIN8_1
;
DEC (HL)
;--- F-LAMP OFF COUNTER DECREMENT --- <090115>
QMIN8_1:LD HL,FLAMP7M
CMP (HL),0 ;7MIN PASSED = ?
J EQ,QMIN9
;
DEC (HL)
;--- R-LOAD MODE 20M DECREMENT ---
QMIN9: LD HL,R20M
CMP (HL),0 ;20MIN PASSED = ?
J EQ,QMIN10
;
DEC (HL)
;---- Q/R MAX 2HR COUNTER ----
QMIN10: LD HL,QRCNT
CMP (HL),0 ;2 HOUR PASSED = ?
J EQ,QMIN11
;
DEC (HL)
;---- FAN DELAY AFTER DEFROST 12Min COUNTER ----
QMIN11: LD HL,DEF_F12
CMP (HL),0 ;12MIN PASSED = ?
J EQ,QMIN12
;
DEC (HL)
;---- HIGH RPM FAN DELAY AFRER DEFROST 17MIN COUNTER ----
QMIN12: LD HL,DEF_F17
CMP (HL),0 ;32MIN PASSED = ?
J EQ,QMIN13
;
DEC (HL)
;---- AFTER R_LOAD 3HOUR DELAY COUNTER ----
QMIN13: LD HL,RLD3HR
CMP (HL),0
J EQ,QMIN14
;
DEC (HL)
;---- H/BAR HEATER ON/OFF TIME COUNTER ----
QMIN14: NOP
;<090114>
; LD HL,HBARCNT
; CMP (HL),0
; J EQ,QMIN15
;
; DEC (HL)
;--- COMP OPERATING 6HOUR DECREMENT ---
QMIN15: LD HL,CMP6HR
LD WA,(HL)
CMP WA,0
J EQ,QMIN16
;
DEC WA
LD (HL),WA
;
;--- º¯µ¿Á¦»ó LOAD MODE 20M DECREMENT ---
QMIN16: LD HL,AD_R20M
CMP (HL),0 ;20MIN PASSED = ?
J EQ,QMIN17 ;<080726>
;
DEC (HL)
;--- F½Ç ºÎÇÏ´ëÀÀ ¿îÀü 1HR DECREMENT --- ;<080726>
QMIN17: LD HL,FL1HR
CMP (HL),0
J EQ,QMIN18
;
DEC (HL)
;--- F½Ç ºÎÇÏ´ëÀÀ Áö¿¬ 1HR DECREMENT --- ;<080726>
QMIN18: LD HL,FLD1HR
CMP (HL),0
J EQ,QMIN19
;
DEC (HL)
;--- F½Ç ºÎÇÏ´ëÀÀ F-DOOR ÃÖÃÊ OPEN ÈÄ 30MIN DECREMENT --- ;<090213>
QMIN19:
LD HL,F30M
CMP (HL),0 ;30MIN PASSED = ?
J EQ,QMIN20
;
DEC (HL)
;
;---- Á¤Àüº¸»ó 30M COUNTER ----
QMIN20: ;Á¦»ó Áß¿¡´Â COMPÀû»êÀ» EEPROM¿¡ ±â¾ïÇÏÁö ¾ÊÀ½
TEST (LOADF).POHEAT ;DEF_HEATER ON?
J F,QMIN21
;
LD HL,DEFBKUP
CMP (HL),0
J EQ,QMIN21
;
DEC (HL)
;
;--- Á¦»ó ÈÄ °æ°ú ½Ã°£ DECREMENT ---;<100220>
QMIN21:
LD HL,SINCEDEF
CMP (HL),0
J EQ,QMIN22
;
DEC (HL)
;
;--- F-FAN ERROR 30 min counter
QMIN22:
LD HL,FLOK30M
CMP (HL),0 ;30MIN PASSED = ?
J EQ,QMIN23
DEC (HL)
;
;--- C-FAN ERROR 30 min counter
QMIN23:
LD HL,CLOK30M
CMP (HL),0 ;30MIN PASSED = ?
J EQ,QMIN24
DEC (HL)
;
;--- Ãʱâ 10ºÐ LINEAR COMP HALF-STROKE ¿îÀü ;100319
QMIN24:
LD HL,INIHALF
CMP (HL),0 ;30MIN PASSED = ?
J EQ,QMIN25
;
DEC (HL)
;
;--- HIDDEN ERROR 3hr COUNT ;100320
QMIN25: LD HL,ERR3HR
CMP (HL),0 ;3HR PASSED = ?
J EQ,QMIN26
;
DEC (HL)
;
QMIN26: NOP
;
QMINED: RET
;
;
;**********************************************
;******* DOOR S/W INPUT *******
;**********************************************
; P0_PORT B6 ;R-DOOR_S/W INPUT
; P0_PORT B5 ;F-DOOR_S/W INPUT
; P4_PORT B3 ;TEST_S/W INPUT
;
INIP: LD A,(P0PRD) ;A <-- INPUT (P3.1)
;-------------------76543210----------------------
AND A,0y01100000 ;BIT MASKING INSTEAD OF DOOR S/W
;-------------------------------
;
LD CF,(P4PRD).PITEST ;100206
LD A.PITEST,CF
;
LD HL,OP_BUFF
;
XCH A,(HL) ;OP_BUFF¿¡ S/W INPUTÀ» LOADÇÏ´Â ¿ªÇÒ
CMP A,(HL) ;EQUAL = ?
J NE,INIP5
;
DEC (OP_CHAT)
;
CMP (OP_CHAT),0 ;CHATTERING COUNTER OVER = ?
J NE,INIPED
;
LD A,(OP_NEW)
LD (OP_OLD),A ;OLD <-- NEW
LD W,(OP_BUFF)
LD (OP_NEW),W ;NEW <-- BUFFER
;
INIP5: LD (OP_CHAT),14 ;14 TIMES SET ;100323
;
INIPED: RET
;
;
;
;##############################################
;######## E E P R O M ########
;######## SUBROUTINE CALL ROUTINE ########
;##############################################
;##############################################
;##### EEPROM SUB CALL #######
;##############################################
;------ EEPROM_DI BIT OUTPUT -----
CLKDI: SET (P5DR).POSK ;SERIAL CLOCK "H" OUTPUT
NOP
NOP
NOP
NOP
NOP
;
SHLC A ;ROTATE LEFT
;
LD (P5DR).PODI,CF ;SERIAL DATA OUTPUT
;
NOP
NOP
NOP
NOP
NOP
;
CLR (P5DR).POSK ;SERIAL CLOCK "L" OUTPUT
;
RET
;##############################################
;##### EEPROM SUB CALL #######
;##############################################
;------ EEPROM_DO BIT INPUT -----
CLKDO: SET (P5DR).POSK ;SERIAL CLOCK "H" OUTPUT
NOP
NOP
NOP
NOP
NOP
;
LD CF,(P5PRD).PISI ;DO_port READ(ALREADY CLR DATA <-- SK SET)
;
ROLC A ;ROTATE OF RIGHT CARRY(AÀÇ BIT0 <-- DO DATA)
;
NOP
NOP
NOP
NOP
NOP
;
CLR (P5DR).POSK ;SERIAL CLOCK "H" OUTPUT
;
RET
;###############################################
;### EEPROM_DI 8BIT(command+address) OUTPUT ###
;###############################################
DATAOUT:LD A,C ;A <-- C
CALL CLKDI ;EEPROM_DI BIT OUTPUT * 8(START BIT OUTPUT/ADDRESS OUTPUT(A0))
CALL CLKDI ;OP CODE OUTPUT
CALL CLKDI ;OP CODE OUTPUT
CALL CLKDI ;ADDRESS OUTPUT(A5)
CALL CLKDI ;ADDRESS OUTPUT(A4)
CALL CLKDI ;ADDRESS OUTPUT(A3)
CALL CLKDI ;ADDRESS OUTPUT(A2)
CALL CLKDI ;ADDRESS OUTPUT(A1)
;
RET
;###############################################
;### EEPROM_DI 16BIT(parity+notch) INPUT ###
;###############################################
DATAIN: CALL CLKDO ;EEPROM_DO BIT INPUT * 8(DATA INPUT(D15) --> AÀÇ BIT0)
CALL CLKDO ;DATA INPUT(D14) --> AÀÇ BIT0~1
CALL CLKDO ;DATA INPUT(D13) --> AÀÇ BIT0~2
CALL CLKDO ;DATA INPUT(D12) --> AÀÇ BIT0~3
CALL CLKDO ;DATA INPUT(D11) --> AÀÇ BIT0~4
CALL CLKDO ;DATA INPUT(D10) --> AÀÇ BIT0~5
CALL CLKDO ;DATA INPUT(D9) --> AÀÇ BIT0~6
CALL CLKDO ;DATA INPUT(D8) --> AÀÇ BIT0~7
LD C,A ;C <-- A (INITIAL WRITING °Ë»ç DATA)
;
CALL CLKDO ;EEPROM_DO BIT INPUT * 8(DATA INPUT(D7) --> AÀÇ BIT0)
CALL CLKDO ;DATA INPUT(D6) --> AÀÇ BIT0~1
CALL CLKDO ;DATA INPUT(D5) --> AÀÇ BIT0~2
CALL CLKDO ;DATA INPUT(D4) --> AÀÇ BIT0~3
CALL CLKDO ;DATA INPUT(D3) --> AÀÇ BIT0~4
CALL CLKDO ;DATA INPUT(D2) --> AÀÇ BIT0~5
CALL CLKDO ;DATA INPUT(D1) --> AÀÇ BIT0~6
CALL CLKDO ;DATA INPUT(D0) --> AÀÇ BIT0~7
LD B,A ;B <-- A (FILTER EXCHANGE DAY DATA)
;
RET
;
;##############################################
;##### EEPROM WRITE ENABLE SUB CALL #######
;##############################################
;------ EEPROM WRITE ENABLE OUTPUT -----
EWEN: SET (P5DR).POCS ;EEPROM CHIP SELECT(ENABLE)
;
CALL CLKST ;START BIT OUTPUT
;
LD DE,ECEN ;LOAD EEPROM WRITE ENABLE COMMAND
LD A,(DE) ;
;
CALL CLKDI ;EEPROM_DI BIT OUTPUT * 8(START BIT OUTPUT)
CALL CLKDI ;OP CODE OUTPUT
CALL CLKDI ;OP CODE OUTPUT
CALL CLKDI ;ADDRESS OUTPUT(A5)
CALL CLKDI ;ADDRESS OUTPUT(A4)
CALL CLKDI ;ADDRESS OUTPUT(A3)
CALL CLKDI ;ADDRESS OUTPUT(A2)
CALL CLKDI ;ADDRESS OUTPUT(A1)
CALL CLKDI ;ADDRESS OUTPUT(A0)
;
CLR (P5DR).PODI ;OUTPUT PORT CLEAR
;
CLR (P5DR).POCS ;EEPROM CHIP ENABLE
;
EWENED: RET
;
;
;##############################################
;##### EEPROM WRITE DISABLE SUB CALL #######
;##############################################
;------ EEPROM WRITE DISABLE OUTPUT -----
EWDIS: SET (P5DR).POCS ;EEPROM CHIP SELECT(ENABLE)
;
CALL CLKST ;START BIT OUTPUT
;
LD DE,ECDIS ;LOAD EEPROM WRITE DISABLE COMMAND DC
LD A,(DE) ;
;
CALL CLKDI ;EEPROM_DI BIT OUTPUT * 8(START BIT OUTPUT)
CALL CLKDI ;OP CODE OUTPUT
CALL CLKDI ;OP CODE OUTPUT
CALL CLKDI ;ADDRESS OUTPUT(A5)
CALL CLKDI ;ADDRESS OUTPUT(A4)
CALL CLKDI ;ADDRESS OUTPUT(A3)
CALL CLKDI ;ADDRESS OUTPUT(A2)
CALL CLKDI ;ADDRESS OUTPUT(A1)
CALL CLKDI ;ADDRESS OUTPUT(A0)
;
CLR (P5DR).PODI ;OUTPUT PORT CLEAR
;
CLR (P5DR).POCS ;EEPROM CHIP DISABLE
;
EWDISED:RET
;
;#################################################
;##### EEPROM START BIT OUTPUT SUB CALL #######
;#################################################
;------ EEPROM START BIT OUTPUT -----
CLKST: SET (P5DR).POSK ;SERIAL CLOCK "H" OUTPUT
;
NOP
NOP
NOP
NOP
NOP
;
SET (P5DR).PODI ;START BIT "H" OUTPUT
;
NOP
NOP
NOP
NOP
NOP
;
CLR (P5DR).POSK ;SERIAL CLOCK "L" OUTPUT
;
CLKSTED: RET
;##########################################
;##### EEPROM DATA READ SUB CALL #######
;##########################################
;------ EEPROM DATA READ -----
DATARED:CALL CLKST ;START BIT OUTPUT
;
CALL DATAOUT ;READ COMMAND & ADDRESS 8BIT OUTPUT
CALL CLKDI ;ADDRESS OUTPUT(A0)
;
CLR (P5DR).PODI ;OUTPUT PORT CLEAR
;
CALL DATAIN ;16BIT DATA READ (parity & NOTCH)
;
DATAREDED:RET
;
;
;
;
;########################################################
;########################################################
;########################################################
;######## #########
;######## MAIN ROUTINE #########
;######## #########
;########################################################
;########################################################
;########################################################
;
;;---- STACK POINT SETTING -------
MAIN:
LD SP,0x083F
LD (WDTCR2),0x4E ;WDT BINARY COUNTER CLEAR
;
;
;-------------------------------------------------
;------ LOAD SEQUENTIAL DRIVE CONTROL -------
;-------------------------------------------------
LOAD00: ;100408
AND (LOADF), 0y01110111 ;LOADFLAG MASK
AND (LOADF2), 0y10110000 ;LOADFLAG2 MASK
;-----------------------------76543210
AND (LOADOUT), 0y01110111 ;LOADOUT MASK
AND (LOADOUT2), 0y10110000 ;LOADOUT2 MASK
;
;------- INSTANT ON/OFF CONTROL LOAD ----<090304>
LD CF,(LOADF2).POLAMP ;
LD (LOADOUT2).POLAMP,CF ;FULL WAVE R-LAMP OUTPUT
;
LD CF,(LOADF2).POLAMP_F ;
LD (LOADOUT2).POLAMP_F,CF ;F-LAMP OUTPUT
;
LD CF,(LOADF2).POLAML
LD (LOADOUT2).POLAML,CF ;LOW LAMP OUTPUT
;----------------------------------------
LOAD10: CMP (LOADLY),0 ;LOAD DELAY TIME OVER = ?
J NE,LOADED
;
LD A,(LOADF) ;A <-- LOAD FLAG
CMP A,(LOADOUT) ;LOADFLAG = LOADOUT EQUAL = ?
J NE,LOAD11
;
LD A,(LOADF2) ;A <-- LOAD FLAG
CMP A,(LOADOUT2) ;LOADFLAG = LOADOUT EQUAL = ?
J EQ,LOADED
LOAD11:
LD (LOADLY),5 ;LOAD DELAY 500ms SETTING
;--------------------------------
;------- LAMP OFF CONTROL -------<090115>
;;;;; TEST (LOADF2).POLAMP ;LAMP STATUS = ?
;;;;; J F,LOAD15
;;;;;;
;;;;; TEST (LOADOUT2).POLAMP ;LAMP OFF REQUEST = ?
;;;;; J T,LOAD15
;;;;;;
;;;;; CLR (LOADOUT2).POLAMP ;LAMP OFF SETTING
;;;;; J LOADED
;----- HEATER OFF CONTROL -------
LOAD15: TEST (LOADF).POHEAT ;HEATER STATUS ?
J F,LOAD20
;
TEST (LOADOUT).POHEAT ;HEATER OFF REQUEST = ?
J T,LOAD20
;
CLR (LOADOUT).POHEAT ;HEATER OFF SETTING
J LOADED
;--------------------------------
;------- COMP OFF CONTROL -------
LOAD20: TEST (LOADF).POCOMP ;COMP STATUS = ?
J F,LOAD22
;
TEST (LOADOUT).POCOMP ;COMP OFF REQUEST = ?
J T,LOAD22
;
CLR (LOADOUT).POCOMP ;COMP OFF SETTING
J LOADED
;--------------------------------
;------- F-FAN(DC-BLDC) OFF CONTROL -------;100408
LOAD22: TEST (LOADF).POFFAN ;F-FAN(DC-BLDC) STATUS = ?
J F,LOAD23
;
TEST (LOADOUT).POFFAN ;F-FAN(DC-BLDC) OFF REQUEST = ?
J T,LOAD23
;
CLR (LOADOUT).POFFAN ;F-FAN(DC-BLDC) OFF SETTING
J LOADED
;--------------------------------
;------- C-FAN(DC-BLDC) OFF CONTROL -------;100408
LOAD23: TEST (LOADF).POCFAN ;C-FAN(DC-BLDC) STATUS = ?
J F,LOAD25
;
TEST (LOADOUT).POCFAN ;C-FAN(DC-BLDC) OFF REQUEST = ?
J T,LOAD25
;
CLR (LOADOUT).POCFAN ;C-FAN(DC-BLDC) OFF SETTING
J LOADED
;--------------------------------
;------- FAN HIGH RPM OFF CONTROL -------
LOAD25: TEST (LOADF).POFANH ;FAN HIGH RPM STATUS = ?
J F,LOAD30
;
TEST (LOADOUT).POFANH ;FAN HIGH RPM OFF REQUEST = ?
J T,LOAD30
;
CLR (LOADOUT).POFANH ;FAN HIGH RPM OFF SETTING
J LOADED
;--------------------------------
;------- FAN LOW RPM OFF CONTROL -------
LOAD30: TEST (LOADF).POFANL ;FAN LOW RPM STATUS = ?
J F,LOAD35
;
TEST (LOADOUT).POFANL ;FAN LOW RPM OFF REQUEST = ?
J T,LOAD35
;
CLR (LOADOUT).POFANL ;FAN LOW RPM OFF SETTING
J LOADED
;--------------------------------
;------- H/B HEATER OFF CONTROL -------
LOAD35: ;<090114>
;;;;; TEST (LOADF).POHHTR ;H/B-HEATER STATUS ?
;;;;; J F,LOAD40
;;;;;;
;;;;; TEST (LOADOUT).POHHTR ;H/B-HEATER OFF REQUEST = ?
;;;;; J T,LOAD40
;;;;;;
;;;;; CLR (LOADOUT).POHHTR ;H/B-HEATER OFF SETTING
;;;;; J LOADED
;--------------------------------
;================================================================
;--------------------------------
;------- LAMP ON CONTROL -------
LOAD40: ;<090115>
;;;;; TEST (LOADF2).POLAMP ;LAMP STATUS = ?
;;;;; J T,LOAD45
;;;;;;
;;;;; TEST (LOADOUT2).POLAMP ;LAMP ON REQUEST = ?
;;;;; J F,LOAD45
;;;;;;
;;;;; SET (LOADOUT2).POLAMP ;LAMP ON SETTING
;
;----- HEATER ON CONTROL -------
LOAD45: TEST (LOADF).POHEAT ;HEATER STATUS ?
J T,LOAD50
;
TEST (LOADOUT).POHEAT ;HEATER ON REQUEST = ?
J F,LOAD50
;
SET (LOADOUT).POHEAT ;HEATER ON SETTING
J LOADED
;--------------------------------
;------- COMP ON CONTROL -------
LOAD50: TEST (LOADF).POCOMP ;COMP STATUS = ?
J T,LOAD52
;
TEST (LOADOUT).POCOMP ;COMP ON REQUEST = ?
J F,LOAD52
;
SET (LOADOUT).POCOMP ;COMP ON SETTING
J LOADED
;--------------------------------
;------- F-FAN(DC-BLDC) ON CONTROL -------;100408
LOAD52: TEST (LOADF).POFFAN ;F-FAN(DC-BLDC) STATUS = ?
J T,LOAD53
;
TEST (LOADOUT).POFFAN ;F-FAN(DC-BLDC) ON REQUEST = ?
J F,LOAD53
;
SET (LOADOUT).POFFAN ;F-FAN(DC-BLDC) ON SETTING
J LOADED
;--------------------------------
;------- C-FAN(DC-BLDC) ON CONTROL -------;100408
LOAD53: TEST (LOADF).POCFAN ;C-FAN(DC-BLDC) STATUS = ?
J T,LOAD55
;
TEST (LOADOUT).POCFAN ;C-FAN(DC-BLDC) ON REQUEST = ?
J F,LOAD55
;
SET (LOADOUT).POCFAN ;C-FAN(DC-BLDC) ON SETTING
J LOADED
;--------------------------------
;------- FAN HIGH RPM ON CONTROL -------
LOAD55: TEST (LOADF).POFANH ;FAN HIGH RPM STATUS = ?
J T,LOAD60
;
TEST (LOADOUT).POFANH ;FAN HIGH RPM ON REQUEST = ?
J F,LOAD60
;
SET (LOADOUT).POFANH ;FAN HIGH PRM ON SETTING
J LOADED
;--------------------------------
;------- FAN LOW RPM ON CONTROL -------
LOAD60: TEST (LOADF).POFANL ;FAN LOW RPM STATUS = ?
J T,LOAD65
;
TEST (LOADOUT).POFANL ;FAN LOW RPM ON REQUEST = ?
J F,LOAD65
;
SET (LOADOUT).POFANL ;FAN LOW PRM ON SETTING
J LOADED
;--------------------------------
;------- H/B HEATER ON CONTROL -------
LOAD65: ;<090114>
;;;;; TEST (LOADF).POHHTR ;H/B-HEATER STATUS ?
;;;;; J T,LOADED
;;;;;;
;;;;; TEST (LOADOUT).POHHTR ;H/B-HEATER ON REQUEST = ?
;;;;; J F,LOADED
;;;;;;
;;;;; SET (LOADOUT).POHHTR ;H/B-HEATER ON SETTING
;;;;; J LOADED
;--------------------------------
LOADED: NOP
;
;*******************************************
;***** IN/OUTPUT PORT REFRESH *****
;*******************************************
;========== I/O CONTROL REFRESH ===========
FRESH:
LD CF,(LOADOUT).POCOMP
LD (P1DR).POCOMP,CF ;COMP OUTPUT
;
LD CF,(LOADOUT).POHEAT
LD (P4DR).POHEAT,CF ;HEATER OUTPUT
;
LD CF,(LOADOUT2).POLAMP
LD (P4DR).POLAMP,CF ;FULL WAVE R-LAMP OUTPUT
;
LD CF,(LOADOUT).POFANH
LD (P1DR).POFANH,CF ;FAN HIGH RPM OUTPUT
;
LD CF,(LOADOUT).POFANL
LD (P1DR).POFANL,CF ;FAN LOW RPM OUTPUT
;
LD CF,(LOADOUT2).POLAMP_F ;<090304>
LD (P4DR).POLAMP_F,CF ;F-LAMP OUTPUT
;
LD CF,(LOADOUT2).POLAML
LD (P4DR).POLAML,CF ;LOW LAMP OUTPUT
;;==========================================================
;===== DOOR OPEN / TEST MODE BUZZER RING OUTPUT============
;==========================================================
;----- BUZZER DIRECT OUTPUT ----
FRESH2: TEST (GENFLAG).KY_ROLD ;BUZZER_RING FLAG SET = ?
J F,FRESH5
;
TEST (GENFLAG).DO_RING ;DOOR_OPEN BUZZER ON = ?
J F,FRESH3
;
TEST (GENFLAG).TST_RING ;TEST_MODE_BUZZER RING FLAG
J F,FRESH3
;
CLR (BUZOUT).POBUZZ ;BUZZER OFF
CLR (BUZOUT).POBZTR ;BUZZER OFF

J FRESH5
;
FRESH3: SET (BUZOUT).POBUZZ ;BUZZER ON
SET (BUZOUT).POBZTR ;BUZZER ON
;
;---------------------------------------
FRESH5: LD CF,(BUZOUT).POBZTR
LD (P1DR).POBZTR,CF ;BUZZER TR OUTPUT
;
LD CF,(BUZOUT).POBUZZ
LD (P1DR).POBUZZ,CF ;BUZZER OUTPUT (PPG)
;
;
;*******************************************
;***** BLDC FAN PORT REFRESH *****
;*******************************************;100308
;---------------------------------------;F-FAN
BLDC50:
TEST (LOADOUT).POFFAN
J T,FFAN_OFF
;
;---------------
FFAN_ON:
LD A,(FDUTY)
LD (PWREG5),A ;
LD (TC5CR),0y01101010
SET (P1DR).6 ;
J BLDC60
;---------------
FFAN_OFF:
LD (TC5CR),0y01100010 ;
LD (PWREG5),0x10 ;100417 F_Fan OFF RPM Set: 0x10
CLR (P1DR).6 ;Clear High F_Fan Output Port
LD (FLOK15S),150 ;15sec Set MP2
J BLDC60
;
;---------------------------------------;C-FAN
BLDC60:
TEST (LOADOUT).POCFAN
J T,CFAN_OFF
;
;---------------
CFAN_ON:
LD A,(CDUTY)
LD (PWREG6),A ;
LD (TC6CR),0y01101010
SET (P1DR).7 ;Set To PWM Output Port ;F_Fan RPM Set
;PWM START
J FRESHED
;
;---------------
CFAN_OFF:
LD (TC6CR),0y01100010 ;
LD (PWREG6),0x10 ;100417 C_Fan OFF RPM Set: 0x10
CLR (P1DR).7 ;Clear High C_Fan Output Port
LD (CLOK15S),150 ;15sec Set MP2
J FRESHED
;
FRESHED:NOP
;
;*************************************************
;****** COMP SEND DATA LOAD ******
;*************************************************<100220>
;-------------------< Send Data >-----------------
PTX_LOAD:
TEST (SIO2FLAG).TXON ;transmit mode ?
J F,PTX_LOAD_END
;
LD A,0x00
;
;--------------- ¼ÒÀü FLAG -------------;Bit 7
CLR A.SAVING ; Ç׽à CLEAR
;
;--------------- Cooling Power ---------;Bit 6,5,4,3
PTX_LOAD20:
;
CMP (COOL_POWER),0 ; 0 0000 00 0
J EQ,COOL_01
;
CMP (COOL_POWER),110 ; 0 0001 00 0
J EQ,COOL_02
;
CMP (COOL_POWER),115 ; 0 0010 00 0
J EQ,COOL_03
;
CMP (COOL_POWER),120 ; 0 0011 00 0
J EQ,COOL_04
;
CMP (COOL_POWER),125 ; 0 0100 00 0
J EQ,COOL_05
;
CMP (COOL_POWER),130 ; 0 0101 00 0
J EQ,COOL_06
;
CMP (COOL_POWER),135 ; 0 0110 00 0
J EQ,COOL_07
;
CMP (COOL_POWER),140 ; 0 0111 00 0
J EQ,COOL_08
;
CMP (COOL_POWER),145 ; 0 1000 00 0
J EQ,COOL_09
;
CMP (COOL_POWER),150 ; 0 1001 00 0
J EQ,COOL_10
;
CMP (COOL_POWER),155 ; 0 1010 00 0
J EQ,COOL_11
;
CMP (COOL_POWER),160 ; 0 1011 00 0
J EQ,COOL_12
;
CMP (COOL_POWER),165 ; 0 1100 00 0
J EQ,COOL_13
;
CMP (COOL_POWER),170 ; 0 1101 00 0
J EQ,COOL_14
;
CMP (COOL_POWER),175 ; 0 1110 00 0
J EQ,COOL_15
;
CMP (COOL_POWER),180 ; 0 1111 00 0
J EQ,COOL_16
;
LD (COOL_POWER),COOL_MAX ;Max. POWER
J COOL_END ; FULL STROKE
;
;---------------
COOL_01:ADD A,0y00000000 ; ÃÖÀú ³Ã·Â
J COOL_END
;
COOL_02:ADD A,0y00001000 ; ³Ã·Â 110
J COOL_END
;
COOL_03:ADD A,0y00010000 ; ³Ã·Â 115
J COOL_END
;
COOL_04:ADD A,0y00011000 ; ³Ã·Â 120
J COOL_END
;
COOL_05:ADD A,0y00100000 ; ³Ã·Â 125
J COOL_END
;
COOL_06:ADD A,0y00101000 ; ³Ã·Â 130
J COOL_END
;
COOL_07:ADD A,0y00110000 ; ³Ã·Â 135
J COOL_END
;
COOL_08:ADD A,0y00111000 ; ³Ã·Â 140
J COOL_END
;
COOL_09:ADD A,0y01000000 ; ³Ã·Â 145
J COOL_END
;
COOL_10:ADD A,0y01001000 ; ³Ã·Â 150
J COOL_END
;
COOL_11:ADD A,0y01010000 ; ³Ã·Â 155
J COOL_END
;
COOL_12:ADD A,0y01011000 ; ³Ã·Â 160
J COOL_END
;
COOL_13:ADD A,0y01100000 ; ³Ã·Â 165
J COOL_END
;
COOL_14:ADD A,0y01101000 ; ³Ã·Â 170
J COOL_END
;
COOL_15:ADD A,0y01110000 ; ³Ã·Â 175
J COOL_END
;
COOL_16:ADD A,0y01111000 ; ³Ã·Â 180
J COOL_END
;
COOL_END: NOP
;
;--------------- Cooling MODE ----------;Bit 2,1
PTXLOAD30: ; 1eva´Â R¿îÀüÀ¸·Î ¼³Á¤
SET A.COOL_MODE_1 ; 0 0000 01 0
CLR A.COOL_MODE_2
;
;--------------- COMP ON/OFF FLAG ------;Bit 0
PTX_LOAD40:
LD CF,(LOADOUT).POCOMP ; comp on/off
LD A.COMP_F,CF
;
;=======================================;
LD (TOCOMP),A
;
TEST (SIO2FLAG).TXON ;transmit mode ?
J F,PTX_LOAD_END
;
;--------- COMP ¼Û½Å DATA ¼Û½Å DATA 1¿¡ À̵¿ -------
LD HL,TOCOMP
LD A,(HL)
LD HL,SENDM1
LD (HL),A
;--------- CHECK SUM ¼Û½Å DATA 2 WRITE ------
XOR A,0x55
LD HL,SENDM2
LD (HL),A
;
PTX_LOAD_END: NOP
;
;**************************************************************
;***** TEST S/W INPUT & DOOR OPEN INPUT *******
;**************************************************************
CALL INIP ;TEST_S/W & DOOR_S/W INPUT
;
;*******************************************
;***** BUZZER RING PROGRESS ROUTINE *****
;*******************************************
MBR00: CMP (DKRINGF),0xFF ;KEY PUSSHED
J EQ,MBRED
;
LD (DKRINGF),0xFF ;KEY PUSH F CLR
SET (GENFLAG).KY_RING ;KEY_RING F SET
;
MBRED: NOP
;*******************************************
;**** DING BUZZER OUTPUT *************
;*******************************************
;---BUZZER OUTPUT PROGRESS---
MDING00:TEST (GENFLAG).KY_RING ;KEY_RING FLAG SET ?
J T,MDING10
;----- buzzer ring INITIAL SET -----
CLR (GENFLAG).KY_RING ;KEY´©¸§ BUZZER FLAG CLEAR
SET (GENFLAG).KY_ROLD ;BUZZER ¿ï¸² FLAG SET
CLR (DOFLAG).BZTG ;100ms TOGGLE
CLR (BUZOUT).POBZTR ;BUZZER PPG OFF
CLR (BUZOUT).POBUZZ ;BUZZER TR OFF
LDW (BZCNT),0x0044 ;BUZZER CNT' 100mS SET
;
MDING10: TEST (GENFLAG).KY_ROLD ;BUZZER RINGING FLAG SET ?
J T,MDINGED
;
TEST (DOFLAG).BZTG ;100ms/500ms TOGGLE FLAG SET ?
J F,MDING20 ;SETÀ̸é JUMP
;
;======================== 100ms DING RING ================================
SET (BUZOUT).POBZTR ;BUZZER PPG ON
SET (BUZOUT).POBUZZ ;BUZZER TR ON
LD WA,(BZCNT)
CMP WA,0 ;100mS OVER ?
J NE,MDINGED
;
SET (DOFLAG).BZTG ;500ms TOGGLE
LDW (BZCNT),0x0154 ;BUZZER CNT' 500mS SET
;
J MDINGED
;
;======================== 500ms DING RING (¹æÀüÀ½) ========================
MDING20:
CLR (BUZOUT).POBZTR ;BUZZER TR OFF
SET (BUZOUT).POBUZZ ;BUZZER PPG ON
LD WA,(BZCNT)
CMP WA,0 ;500mS OVER ?
J NE,MDINGED
;
;======================== DING RING END =============================
CLR (GENFLAG).KY_ROLD ;BUZZER ¿ï¸² FLAG CLEAR
CLR (DOFLAG).BZTG ;100ms TOGGLE
CLR (BUZOUT).POBZTR ;BUZZER TR OFF
CLR (BUZOUT).POBUZZ ;BUZZER PPG OFF
LDW (BZCNT),0x0044 ;BUZZER CNT' 100mS SET
J MDINGED
;
MDINGED:NOP
;==========================================
;*******************************************
;***** A/D CONVERSION *****
;*******************************************
ADCONV:
LD A,0
INC (ADCNT) ;A/D COUNTER INCREMENT
;
ADSEL: LD A,(ADCHSEL) ;A/D CHANNEL LOAD
LD (ADCCR1),A ;A/D CONVERTER CONTROL REG' SET
OR (ADCCR1),0y00100000 ;
;
ADREAD: SET (ADCCR1).BIT7 ;ADS=1 ( A/D START )
NOP
ADLOOP: TEST (ADCDR2).BIT5 ;EOCF=1? (A/D CONVERSION O.K ?)
J T,ADLOOP
;
;******** CALCULATE MEAN VALUE( 16 TIMES MEAN) **********
LD W,0 ;W REG' CLEAR
LD A,(ADCDR1) ;WA<--RESULT DATA READ
;
ADSUM: LD BC,(ADAVRL) ;BC<--A/D 16 TIMES PLUS DATA
;
ADD WA,BC ;WA<--WA+BC
;
LD (ADAVRL),WA ;RAM<--CALCULATION DATA (ADAVRL<--A, ADAVRH<--W)
;
AD16: LD HL,ADCNT ;A/D COUNTER RAM LOAD
TEST (HL).BIT4 ;A/D COUNTER 16 TIMES OVER ?
J T,ADEND ;ADEND <-- 16 TIMES NOT OVER
;
LD (HL),0 ;A/D COUNTER RAM CLEAR
;
XCH A,W ;A<--(ADAVRH)
LD HL,ADAVRL ;HL<--(ADAVRL)
RORD A,(HL) ;ADAVRL<--AVERAGE DATA , (HL)<--(ADAVRH)
;
LD HL,ADCHSEL
LD L,(HL) ;L(low) REG'<-- CHANNEL DATA
OR L,0y10000000 ;L(high) REG' (ROCATION)
;
LD DE,ADAVRL ;(DE)<-- AVERAGE DATA
;
LD A,(DE) ;EACH CHANNEL <-- AVERAGE DATA
LD (HL),A ;
;
LDW (ADAVRL),0 ;(ADAVRL,ADAVRH) <-- A/D AVERAGE DATA CLEAR
;
ADOVER:
LD HL,ADCHSEL ;A/D CHANNEL SELECT COUNTER INCREMENT
INC (HL)
CMP (HL),0x06
J NE,ADEND ;CHANNEL = 5 OVER ?
;
LD (ADCHSEL),0x00
SET (GENFLAG).ADINIOK ;A/D INITIAL O.K FLAG SET
;
ADEND: TEST (GENFLAG).ADINIOK ;A/D INITIAL O.K FLAG SET ?
J T,MAIN
;*****************************************************
;***** DOOR OPEN BUZZER_RING PROGRESS ROUTINE *****
;*****************************************************
;******************************
;***** DOOR OPEN CHECK *****
;******************************
;
; (P0).PIRDO --> (OP_OLD).PIRDO --CPL--> (DOFLAG).DO_R
; (P0).PIFDO --> (OP_OLD).PIFDO --CPL--> (DOFLAG).DO_F
;
MDO00: LD CF,(OP_OLD).PIRDO ;CF <-- R-DOOR S/W INPUT (º¸¼ö)<090304>
CPL CF ;1:DOOR OPEN
LD (DOFLAG).DO_R,CF ;0:DOOR CLOSE
;=======================================<080830>
LD CF,(OP_OLD).PIFDO ;CF <-- F-DOOR S/W INPUT (º¸¼ö)<090304>
CPL CF ;1:DOOR OPEN
LD (DOFLAG).DO_F,CF ;0:DOOR CLOSE
;=======================================
TEST (DOFLAG).DO_R ;IF R_DOOR OPEN, GO TO MDOBZ2 ?
J F,MDOBZ2
;=======================================<080830>
TEST (DOFLAG).DO_F ;IF F_DOOR OPEN, GO TO MDOBZ2 ?
J F,MDOBZ2
;=======================================
;-- DOOR_OPEN BUZZER WARNING DISABLE --
CLR (DOFLAG).DO_MAST ;DOOR_OPEN MASTER FLAG CLEAR
CLR (DOFLAG).DO_BREQ ;DOOR_OPEN BUZZER ON REQUEST FLAG CLR
CLR (GENFLAG).DO_RING ;DOOR_OPEN BUZZER ON FLAG CLR
LD (DO_BCNT),0 ;BUZZER RING COUNTER CLEAR
J MDOBZED
;---------------------------------------
MDOBZ2: TEST (DOFLAG).DO_MAST ;DOOR_OPEN MASTER FLAG SET = ?
J F,MDOBZ4
;
SET (DOFLAG).DO_MAST ;DOOR_OPEN MASTER FLAG SET
LD (DO_TIME),0x3C ;60sec SETTING
LD (DO_BCNT),0 ;BUZZER RING COUNTER CLEAR
;
MDOBZ4: TEST (DOFLAG).DO_MAST ;DOOR_OPEN MASTER FLAG SET = ?
J T,MDOBZ6
;
CMP (DO_TIME),0 ;DOOR_OPEN(60sec,30sec) PASSED = ?
J NE,MDOBZ6
;
LD (DO_TIME),0x1E ;30sec setting
SET (DOFLAG).DO_BREQ ;DOOR_OPEN BUZZER ON REQUEST FLAG SET
;
;================================================================
MDOBZ6: TEST (DOFLAG).DO_BREQ ;DOOR_OPEN BUZZER ON REQUEST FLAG SET=?
J T,MDOBZED
;
CMP (DO_BCNT),0x06 ;BUZZER ON 500ms TOGGLE OVER = ?
J CS,MDOBZ8 ;COUNTER >= 6 times
;----- buzzer 3times ring over -----
LD (DO_BCNT),0 ;DOOR_OPEN BUZZER_RING COUNTER CLEAR
CLR (DOFLAG).DO_BREQ ;DOOR_OPEN BUZZER ON REQUEST FLAG CLR
CLR (GENFLAG).DO_RING ;DOOR_OPEN BUZZER RING FLAG CLR
;
J MDOBZED
;
;====================================================
MDOBZ8: CMP (DO_B500),0 ;BUZZER ON 500ms TOGGLE OVER = ?
J NE,MDOBZED
;
LD (DO_B500),0x05 ;500ms COUNTER SET
INC (DO_BCNT) ;DOOR_OPEN BUZZER RING COUNTER
;
CPL (GENFLAG).DO_RING ;BUZZER ON STATUS = ?
;----------------------
MDOBZED:NOP
;*****************************************************
;***** LAMP ON/OFF PROGRESS ROUTINE *****
;*****************************************************
MRL00: TEST (TSTFLAG).TSTM1F ;TEST MODE 1 ?
J F,MRL10
;
; TEST (DOFLAG).DO_MAST ;IF DOOR OPEN(1), GO TO MRL01? <080830>
; J F,MRL01
; CLR (LOADF2).POLAMP ;LAMP RELAY OFF
; LD (LAMP7M),7 ;7MIN COUNTER SET
;============================<090115>
TEST (DOFLAG).DO_R ;IF DOOR OPEN(1), GO TO MRL01?
J F,MRL01
;
CLR (LOADF2).POLAMP ;R-LAMP RELAY OFF
LD (RLAMP7M),7 ;7MIN COUNTER SET
;
J MRL05
;
MRL01: LD HL,RLAMP7M
CMP (HL),0 ;7MIN PASSED = ?
J EQ,MRL02
;
SET (LOADF2).POLAMP ;R-LAMP RELAY ON
J MRL05
;
MRL02: CLR (LOADF2).POLAMP ;R-LAMP RELAY OFF
J MRL05
;
;MRL01: LD HL,LAMP7M
; CMP (HL),0 ;7MIN PASSED = ?
; J EQ,MRL02
;
; CLR (LOADF2).POLAMP ;LAMP RELAY OFF
; J MRLED
;
;MRL02: SET (LOADF2).POLAMP ;LAMP RELAY ON
; J MRLED
;
MRL05: TEST (DOFLAG).DO_F ;IF DOOR OPEN(1), GO TO MRL01?
J F,MRL06
;
CLR (LOADF2).POLAMP_F ;F-LAMP RELAY OFF
LD (FLAMP7M),7 ;7MIN COUNTER SET
;
J MRLED
;
MRL06: LD HL,FLAMP7M
CMP (HL),0 ;7MIN PASSED = ?
J EQ,MRL07
;
SET (LOADF2).POLAMP_F ;F-LAMP RELAY ON
J MRLED
;
MRL07: CLR (LOADF2).POLAMP_F ;F-LAMP RELAY OFF
J MRLED
;
;MRL10: TEST (DOFLAG).DO_MAST ;TEST MODE LAMP RELAY REVERSE OPERATION <080830>
; J T,MRL15
;
; CLR (LOADF2).POLAMP ;LAMP RELAY OFF
; J MRLED
;
;MRL15: SET (LOADF2).POLAMP ;LAMP RELAY ON
;
MRL10: TEST (DOFLAG).DO_R ;IF DOOR OPEN(1), GO TO MRL01?
J F,MRL15
;
CLR (LOADF2).POLAMP ;R-LAMP RELAY OFF
J MRL20
;
MRL15: SET (LOADF2).POLAMP ;R-LAMP RELAY ON
;
MRL20: TEST (DOFLAG).DO_F ;IF DOOR OPEN(1), GO TO MRL01?
J F,MRL25
;
CLR (LOADF2).POLAMP_F ;F-LAMP RELAY OFF
J MRLED
;
MRL25: SET (LOADF2).POLAMP_F ;F-LAMP RELAY ON
;----------------------------<090115>
MRLED: NOP
;*****************************************************
;***** TEST MODE BUZZER_RING PROGRESS ROUTINE *****
;*****************************************************
MTBZ00: TEST (TSTFLAG).TSTMAST ;TEST_MODE_MASTER FLAG SET = ?
J T,MTBZ30
;----------------------------------------
;--- TEST_MODE_1 BUZZER RING PROGRESS ---
TEST (TSTFLAG).TSTM1F ;TEST_MODE_1 STATUS = ?
J T,MTBZ10
;
CMP (TSTMBC),0x04 ;BUZZER RING COUTER = 3 ?
J CC,MTBZED
;
CMP (TSTMBW),0 ;TEST_MODE_BUZZER_WARNING COUNTER(2SEC)OVER=?
J NE,MTBZ3
;
INC (TSTMBC) ;BUZZER RING COUTER (=3) INCREMENT
LD (TSTMBW),0x14 ;2sec setting
J MTBZED
;
MTBZ3: CMP (TSTMBW),0x12 ;200ms OVER = ? ( TSTMBW < A )
J CS,MTBZ15 ;carry_flag = 1 jump(BUZZER_OFF)
;----BUZZER ON----
J MTBZ18
;----------------------------------------
;--- TEST_MODE_2 BUZZER RING PROGRESS ---
MTBZ10: TEST (TSTFLAG).TSTISF ;TEST_MODE_BUZZER RING INITIAL SET FLAG ?
J T,MTBZ28
;
CMP (TSTMBC),0x04 ;RING COUNTER 3 TIMES = ?
J CC,MTBZED
;
CMP (TSTMBW),0 ;TEST_MODE_BUZZER_WARNING COUNTER(2SEC)OVER=?
J NE,MTBZ13
;
INC (TSTMBC) ;BUZZER RING COUTER (=3) INCREMENT
LD (TSTMBW),0x14 ;2sec setting
J MTBZED
;
MTBZ13: CMP (TSTMBW),0x12 ;1st RING(on) COUNTER OVER = ?
; ;200ms OVER = ? ( TSTMBW < A )
J CC,MTBZ18 ;carry_flag = 0 jump (BUZZER_ON)
;
CMP (TSTMBW),0x10 ;1st RING(off) COUNTER OVER = ?
; ;200ms OVER = ? ( TSTMBW < A )
J CC,MTBZ15 ;carry_flag = 0 jump (BUZZER_OFF)
;
CMP (TSTMBW),0x0E ;2nd RING(on) COUNTER OVER = ?
; ;200ms OVER = ? ( TSTMBW < A )
J CC,MTBZ18 ;carry_flag = 1 jump (BUZZER_ON)
;
J MTBZ15
;
;----BUZZER OFF----
MTBZ15: CLR (GENFLAG).TST_RING ;BUZZER OFF
J MTBZED
;----BUZZER ON----
MTBZ18: SET (GENFLAG).TST_RING ;BUZZER ON
J MTBZED
;
;
MTBZ28: SET (TSTFLAG).TSTISF ;TEST_MODE_BUZZER RING INITIAL SET FLAG SET
;
MTBZ30:
LD (TSTMBW),0 ;TEST_MODE BUZZER WARRNING TIME COUNTER CLEAR
LD (TSTMBC),0 ;TEST_MODE BUZZER RING COUNTER( = 3 ) CLEAR
CLR (GENFLAG).TST_RING ;BUZZER OFF
;
MTBZED: NOP
;*************************************************
;****** ******
;****** ERROR CHECK & DISPLAY CODE ******
;****** ******
;*************************************************
;*************************************************
;****** D-SENSOR ERROR CHECK ******
;*************************************************
;--- OPEN CHECK ---
MSCHK00:CMP (DSDT),0xF1 ;(DS)-(OPEN DATA:-50C BELOW)
; ;(SENSOR) < (-50C) -->CF=1
; ;(SENSOR) >= (-50C) -->CF=0 <>
J CC,MSCHK07 ;IF CF=0 ===> JUMP(ERROR)
;--- SHORT CHECK ---
CMP (DSDT),0x10 ;(DS)-(SHORT DATA:+80C OVER)
; ;(SENSOR) < W(OPEN) -->CF=1 <>
; ;(SENSOR) >= W(OPEN) --CF=0
J CS,MSCHK07 ;IF CF=1 ===> JUMP(ERROR)
;
TEST (ERR_1ST).DSERR ;D-SENSOR INITIAL ERROR?
J F,START
;-------
CLR (ERRFLAG).DSERR ;DEF_SENSOR ERROR FLAG CLEAR
J MSCHK09
;
MSCHK07:SET (ERRFLAG).DSERR ;D-SENSOR ERROR FLAG SET
CMP (ERR_1ST),0 ;ERROR STATUS ?
J NE,MSCHK09
;
SET (ERR_1ST).DSERR ;DEF-SENSOR INITIAL ERROR FLAG SETTING
;
LD (ERR3HR),180 ;100320 HIDDEN ERROR
;
;--------- D-SENSOR ERROR LED SET ------------;100320
;;;;; LD (DSPDT0),0y00000010 ;R0 LED OFF, R3 LED ON
;;;;; LD (DSPDT1),0y00000000 ;R1 LED OFF, R4 LED OFF
;;;;; LD (DSPDT2),0y00000000 ;R2 LED OFF
;
;---------------------------------------
MSCHK09:NOP
;*************************************************
;****** R-SENSOR ERROR CHECK ******
;*************************************************
;--- OPEN CHECK ---
MSCHK20:CMP (RSDT),0xF1 ;(R)-(OPEN DATA:-50C BELOW)
; ;(SENSOR) < (-50C) -->CF=1
; ;(SENSOR) >= (-50C) -->CF=0 <>
J CC,MSCHK27 ;IF CF=0 ===> JUMP(ERROR)
;--- SHORT CHECK ---
CMP (RSDT),0x10 ;(R)-(SHORT DATA:+80C OVER)
; ;(SENSOR) < W(OPEN) -->CF=1 <>
; ;(SENSOR) >= W(OPEN) --CF=0
J CS,MSCHK27 ;IF CF=1 ===> JUMP(ERROR)
;
TEST (ERR_1ST).RSERR ;R-SENSOR INITIAL ERROR?
J F,START
;
CLR (ERRFLAG).RSERR ;R-SENSOR ERROR FLAG CLEAR
J MSCHK29
;
MSCHK27:SET (ERRFLAG).RSERR ;R-SENSOR ERROR FLAG SET
CMP (ERR_1ST),0 ;ERROR STATUS ?
J NE,MSCHK29
;
SET (ERR_1ST).RSERR ;R-SENSOR INITIAL ERROR FLAG SETTING
;
LD (ERR3HR),180 ;100320 HIDDEN ERROR
;
;--------- R-SENSOR ERROR LED SET ------------;100320
;;;;; LD (DSPDT0),0y00000000 ;R0 LED OFF, R3 LED OFF
;;;;; LD (DSPDT1),0y00000000 ;R1 LED OFF, R4 LED OFF
;;;;; LD (DSPDT2),0y00000100 ;R2 LED ON
;
;---------------------------------------
MSCHK29:NOP
;*************************************************
;****** R2-SENSOR ERROR CHECK ******
;*************************************************
;=======================================<080830><090114_2>
;--- OPEN CHECK ---
;MSCHK20_1:CMP (R2SDT),0xF1 ;(R)-(OPEN DATA:-50C BELOW)
; ;(SENSOR) < (-50C) -->CF=1
; ;(SENSOR) >= (-50C) -->CF=0 <>
; J CC,MSCHK27_1 ;IF CF=0 ===> JUMP(ERROR)
;--- SHORT CHECK ---
; CMP (R2SDT),0x10 ;(R)-(SHORT DATA:+80C OVER)
; ;(SENSOR) < W(OPEN) -->CF=1 <>
; ;(SENSOR) >= W(OPEN) --CF=0
; J CS,MSCHK27_1 ;IF CF=1 ===> JUMP(ERROR)
;
; TEST (ERR_1ST).R2SERR ;R-SENSOR INITIAL ERROR?
; J F,START
;
; CLR (ERRFLAG).R2SERR ;R-SENSOR ERROR FLAG CLEAR
; J MSCHK29_1
;
;MSCHK27_1:SET (ERRFLAG).R2SERR ;R-SENSOR ERROR FLAG SET
; CMP (ERR_1ST),0 ;ERROR STATUS ?
; J NE,MSCHK29_1
;
; SET (ERR_1ST).R2SERR ;R-SENSOR INITIAL ERROR FLAG SETTING
;--------- R-SENSOR ERROR LED SET ------------
; LD (DSPDT0),0y00100000 ;A7 LED ON
; LD (DSPDT1),0 ;LED OFF
; LD (DSPDT2),0y00010000 ;A3 LED ON
; LD (DSPDT3),0 ;LED OFF
; LD (DSPDT4),0y00010000 ;A5 LED ON
; LD (DSPDT5),0 ;LED OFF
;
;---------------------------------------
;MSCHK29_1:NOP
;=======================================<080830><090114_2>
;*************************************************
;****** RT-SENSOR ERROR CHECK ******
;*************************************************
;--- OPEN CHECK ---
MSCHK30:CMP (RTSDT),0xFA ;(RT)-(OPEN DATA:-50C BELOW)
; ;(RT_SENSOR) < (-50C) -->CF=1
; ;(RT_SENSOR) >= (-50C) -->CF=0 <>
J CC,MSCHK37 ;IF CF=0 ===> JUMP(ERROR)
;--- SHORT CHECK ---
CMP (RTSDT),0x10 ;(RT)-(SHORT DATA:+95C OVER)
; ;(RT_SENSOR) < W(OPEN) -->CF=1 <>
; ;(RT_SENSOR) >= W(OPEN) --CF=0
J CS,MSCHK37 ;IF CF=1 ===> JUMP(ERROR)
;
CLR (ERRFLAG).RTSERR ;RT-SENSOR ERROR FLAG CLEAR
J MSCHK39
;
MSCHK37:SET (ERRFLAG).RTSERR ;RT-SENSOR ERROR FLAG SET
;--------- RT-SENSOR ERROR LED SET ------------
;---------------------------------------
MSCHK39:NOP
;
;*************************************************
;*************************************************
;****** ******
;****** TEST MODE CHECK ******
;****** ******
;*************************************************
;*********** TEST_MODE_PROGRESS *************
;*************************************************
;---- test_s/w falling edge detect -----
MTSTSW: TEST (OP_NEW).PITEST ;NEW = 0 ?
J F,MTSTSW9
;
TEST (OP_OLD).PITEST ;OLD = 1 ?
J T,MTSTSW9
;
CLR (OP_OLD).PITEST ;OLD <--- " 0 "
;
CMP (ERR_1ST),0 ;ERROR_MASTER_FLAG SET = ?
J NE,MTSTSW8
;---------------------------------------
SET (GENFLAG).TST_RING ;BUZZER ON
SET (TSTFLAG).TSTMAST ;TEST_MODE MASTER FLAG SET
;---------------------------------------
TEST (TSTFLAG).TSTM1F ;TEST_MODE_1 = ?
J T,MTSTSW2
;
;------- TEST_MODE2 SET -------
LD (IRLCHK),0x05 ;LOW TEMP LAMP ON TIME 5SEC SET
CLR (TSTFLAG).TSTM1F ;TEST_MODE_1 FLAG CLR
SET (TSTFLAG).TSTM2F ;TEST_MODE_2 FLAG SET
LD (TST2HR),0x78 ;TEST_MODE_2 DEFROST 2HOUR
J MTSTSW9
;---------------------------------------
MTSTSW2:TEST (TSTFLAG).TSTM2F ;TEST_MODE_2 = ?
J F,TSTST
;----- TEST_MODE1 SET ---
SET (TSTFLAG).TSTM1F ;TEST_MODE_1 FLAG SET
LD (TST2HR),0x05 ;TEST_MODE_1 5MIN
J MTSTSW9
;
;================== ERROR TEST S/W BUZZER -> DING- DONG=========
MTSTSW8:CLR (GENFLAG).TST_RING ;BUZZER OFF
SET (GENFLAG).KY_RING ;BUZZER ON
;
MTSTSW9:NOP
;
;*************************************************
;*************************************************
;*********** *************
;*********** TEST_MODE_PROGRESS *************
;*********** *************
;*************************************************
;*************************************************
MTST00: TEST (TSTFLAG).TSTMAST ;TEST_MODE_MASTER_FLAG SET = ?
J T,MTSTED
;
CMP (ERR_1ST),0 ;ERROR_MASTER_FLAG SET = ?
J NE,START
;
;*************************************************
;******** TEST MODE 1 EXECUTION *********
;*************************************************
MTST10: TEST (TSTFLAG).TSTM1F ;TEST_MODE_1 = ?
J T,MTST20
;
CMP (TST2HR),0
J EQ,TSTST
;
; <<< LED ALL ON >>>
LD (DSPDT0),0xFF ;LED ALL ON
LD (DSPDT1),0xFF ;LED ALL ON
LD (DSPDT2),0xFF ;LED ALL ON
;
SET (LOADF).POCOMP ;COMPRESSOR_ON
SET (LOADF).POFANH ;FAN HIGH RPM ON
SET (LOADF).POFFAN ;F-FAN(DC-BLDC) ON ;100408
SET (LOADF).POCFAN ;C-FAN(DC-BLDC) ON ;100408
;
CLR (LOADF).POHEAT ;DEFROST_HEATER OFF
CLR (LOADF).POFANL ;FAN LOW RPM ON
CLR (LOADF2).POLAML ;LOW TEMP LAMP OFF
; CLR (LOADF).POHHTR ;H/B HEATER OFF <090114>
;
LD (INIHALF),0 ;100319
LD (COOL_POWER),COOL_MAX ;<100220>
LD (F_RPM),FFAN_H ;100308
LD (C_RPM),CFAN_H ;100308
;
J MTST50
;*************************************************
;******** TEST MODE 2 EXECUTION *********
;*************************************************
MTST20: TEST (TSTFLAG).TSTM2F ;TEST_MODE_2 = ?
J T,TSTST
;
CMP (TST2HR),0
J EQ,TSTST
;
TEST (DOFLAG).DO_MAST ;DOOR OPEN ?
J T,MTST30
;
CLR (LOADF2).POLAML ;LOW TEMP LAMP OFF
;
J MTST45
;
MTST30: CMP (IRLCHK),0
J EQ,MTST35
;
SET (LOADF2).POLAML ;LOW TEMP LAMP ON
J MTST45
;
MTST35: CLR (LOADF2).POLAML ;LOW TEMP LAMP OFF
;
MTST45: CLR (LOADF).POCOMP ;COMP OFF
CLR (LOADF).POFANH ;HIGH RPM FAN OFF
CLR (LOADF).POFANL ;LOW RPM FAN OFF
CLR (LOADF).POFFAN ;F-FAN OFF(DC-BLDC) ;100408
CLR (LOADF).POCFAN ;C-FAN OFF(DC-BLDC) ;100408
; CLR (LOADF).POHHTR ;H/B HEATER OFF <090114>
;
LD (COOL_POWER),COOL_MAX ;<100220>
;
;--------- TEST MODE 2 LED SETTING --------
LD (DSPDT0),0y00000100 ;R0 LED ON , R3 LED OFF
LD (DSPDT1),0y00000010 ;R1 LED OFF, R4 LED ON
LD (DSPDT2),0y00000100 ;R2 LED ON
;
;--- DEFROST_SENSOR TEMPERATURE(13 C) COMPARE ---
MTST49: LD HL,DEF13C ;DEFROST_RETURN_TEMP'(13 C)_DATA POINT
LD A,(DSDT)
CMP A,(HL)
; ;(DEF) < (13 C) -->CF=1 :TEST_RETURN
; ;(DEF) >= (13 C) -->CF=0
J CS,TSTST ;IF CF=1 ===> TEST_TETURN
;
SET (LOADF).POHEAT ;DEFROST_HEATER ON
;=================================================
MTST50:
;;;;; J MAIN ;TEST MODE OPERATION
J FLOCK0 ;100308 F-FAN LOCK °¨Áö
;=================================================
MTSTED:NOP
;******************************************************
;****** R & QR_KEY 1SEC SAME ON ==> LED ALL ON ******
;******************************************************
MRQR0: CMP (RKROT),0 ;R_KEY ROT' RAM DATA = ALL "0"
J NE,MRQR35
;
;;;;; CMP (QRKROT),0 ;QR_KEY ROT' RAM DATA = ALL "0"
;;;;; J NE,MRQR35
;
CMP (RQRLED),0 ;1Sec passed=?
J NE,MRQRED
;
TEST (LQCFLAG).LQC_REV ;KEY SAME ON REVERSE FLAG SET ?
J F,MRQRED
;
CLR (LQCFLAG).LQC_TOG ;FAN_MODE TOGGLE FLAG CLR
SET (LQCFLAG).LQC_REV ;KEY SAME ON REVERSE FLAG SET
SET (GENFLAG).RQRPASS ;1sec_PASS_FLAG SET (LED ALL ON)
LD (LQC30S),0x1E
LD (INIHALF),0 ;100319 LINEAR COMP HALF-STROKE ¿îÀü ÇØÁ¦
J MRQRED
;
MRQR35: LD (RQRLED),0x0A ;1SEC COUNTER RAM SET (1SEC)
CLR (LQCFLAG).LQC_REV ;KEY SAME ON REVERSE FLAG CLEAR
CLR (GENFLAG).RQRPASS ;1SEC_PASS_FLAG CLEAR (LED ALL OFF)
;------
MRQRED: NOP
;
;******************************************************
;****** CHILD LOCK KEY 3SEC SAME ON ******
;******************************************************
;;;;;MLOCK: CMP (ERR_1ST),0 ;ERROR MASTER FLAG SET ?
;;;;; J NE,MLOCKED
;;;;;;
;;;;; CMP (LOCKROT),0 ;NO LOCK_KEY = ALL "1"
;;;;; J NE,MLOCK30
;;;;;;
;;;;; CMP (LOCKLED),0 ;2SEC or 0.7SEC passed=?
;;;;; J NE,MLOCKED
;;;;;;
;;;;; TEST (KEYLOCK).LOCK_TOG
;;;;; J F,MLOCKED
;;;;;;
;;;;; SET (KEYLOCK).LOCK_TOG
;;;;;;
;;;;; TEST (KEYLOCK).KLOCK
;;;;; J F,MLOCK10
;;;;;;
;;;;; SET (KEYLOCK).KLOCK
;;;;; SET (DSPDT0).LK1 ;LOCK_LED ON
;;;;; SET (DSPDT1).LK2
;;;;; SET (DSPDT2).LK3
;;;;; SET (DSPDT3).LK4
;;;;; J MLOCKED
;;;;;;
;;;;;MLOCK10:CLR (KEYLOCK).KLOCK
;;;;; CLR (DSPDT0).LK1 ;LOCK_LED OFF
;;;;; CLR (DSPDT1).LK2
;;;;; CLR (DSPDT2).LK3
;;;;; CLR (DSPDT3).LK4
;;;;; J MLOCKED
;;;;;;
;;;;;MLOCK30:CLR (KEYLOCK).LOCK_TOG
;;;;;;------------------------------------------------------
;;;;; TEST (KEYLOCK).KLOCK
;;;;; J T,MLOCK40
;;;;;;
;;;;; LD (LOCKLED),0x07 ;LOCK COUNTER SET (0.7SEC)
;;;;; SET (DSPDT0).LK1 ;LOCK_LED ON
;;;;; SET (DSPDT1).LK2
;;;;; SET (DSPDT2).LK3
;;;;; SET (DSPDT3).LK4
;;;;; J MLOCKED
;;;;;
;;;;;MLOCK40:LD (LOCKLED),0x14 ;LOCK COUNTER SET (2SEC)
;;;;; CLR (DSPDT0).LK1 ;LOCK_LED OFF
;;;;; CLR (DSPDT1).LK2
;;;;; CLR (DSPDT2).LK3
;;;;; CLR (DSPDT3).LK4
;;;;; J MLOCKED
;;;;;;------------------------------------------------------
;;;;;MLOCKED :NOP
;
;******************************************************
;******************************************************
;******* MAIN R-SENSOR *******
;******* *******
;******************************************************
;******************************************************<090114_2>
;MRSEN00:CMP (RTJG),6 ;CS:RT>10¡É GOTO DOWN:
; J CC,MRSEN10 ;CC:RT<10¡É GOTO MRSEN10:
;
; LD (MARSDT),(RSDT)
; J MRSENED
;
;MRSEN10:LD (MARSDT),(R2SDT)
;
;MRSENED:NOP
;
;******************************************************
;******************************************************
;****** R_ROOM TEMPURATURE COMPANSATTION ******
;****** VALUE EXECUTE ******
;******************************************************
;******************************************************
MRCMP: LD A,(RCMPDT) ;A <-- TEMP_COMPAN' A/D DATA
CALL CMPRT
LD (RCOM),A
;********************************************************
;*** CUT OPTION COMPENSATION DATA SET ***
;********************************************************
MCUTCMP:CMP (RCUTDT),0xB5 ; 3.53 V OVER ?
J CC,CUTCMP2 ; <-2C compen'> (--cut)
;
CMP (RCUTDT),0x8C ; 2.738V OVER ?
J CC,CUTCMP3 ; <-1C compen'> (-,+--cut)
;
CMP (RCUTDT),0x73 ; 2.237V OVER ?
J CC,CUTCMP4 ; < 0C compen'> (+-,++--cut)
;
CMP (RCUTDT),0x4A ; 1.446V OVER ?
J CC,CUTCMP5 ; <+1C compen'> (+,++-cut)
;
J CUTCMP6 ; <+2C compen'> (++cut)
;--------------------------
CUTCMP2:LD (RCUTCOM),0x04 ; -2.0 C WARM COMPENSATION ( b7<--0 )
J CUTCMPED
CUTCMP3:LD (RCUTCOM),0x02 ; -1.0 C WARM COMPENSATION ( b7<--0 )
J CUTCMPED
CUTCMP4:LD (RCUTCOM),0 ; 0 C WARM COMPENSATION ( b7<--0 )
J CUTCMPED
CUTCMP5:LD (RCUTCOM),0x82 ; +1.0 C WARM COMPENSATION ( b7<--1 )
J CUTCMPED
CUTCMP6:LD (RCUTCOM),0x84 ; +2.0 C WARM COMPENSATION ( b7<--1 )
CUTCMPED: NOP
;********************************************************
;*** RT SENSOR COMPENSATION DATA SET ***
;********************************************************
MRTCMP: TEST (ERRFLAG).RTSERR ;RT-SENSOR ERR ?
J F,MRTCMP0
LD A,(RTSDT) ;A <--RT-SENSOR DATA
LD C,(RTJG) ;RT TEMPERATURE RANGE
CALL RTPRT ;VOLTAGE JUDGEMENT
LD (RTJG),W ;RTJG <-- RESULT_DATA (W)
J MTED ;JUMP COMPARE ROUTINE END POINT
MRTCMP0:LD (RTJG),0x03 ;RT-SENSOR 30 DEG RANGE
;------------------------------------------------
J MTED ;JUMP COMPARE ROUTINE END POINT
;==========================================================
;===============================================================
;------------------------------------------------
;******* R - TEMP COM' DATA SVC CALL *******
; input_parameter = A
; output_parameter = A (b7= "+","-"(ºÎÈ£) b3~b0:data)-R COMPAN'
;===============================================================
CMPRT: CMP A,0xE6 ; 4.5 V OVER ? (180K)
J CC,CMPRT5
;
CMP A,0xCC ; 4.0 V OVER ? ( 56K)
J CC,CMPRT6
;
CMP A,0xB3 ; 3.5 V OVER ? ( 33K)
J CC,CMPRT7
;
CMP A,0x99 ; 3.0 V OVER ? ( 18K)
J CC,CMPRT8
;
CMP A,0x86 ; 2.64V OVER ? ( 12K)
J CC,CMPRT9
;
CMP A,0x79 ; 2.37V OVER ? ( 10K)
J CC,CMPRT10
;
CMP A,0x66 ; 2.0 V OVER ? (8.2K)
J CC,CMPRT11
;
CMP A,0x4D ; 1.5 V OVER ? (5.6K)
J CC,CMPRT12
;
CMP A,0x33 ; 1.0 V OVER ? (3.3K)
J CC,CMPRT13
;
CMP A,0x1A ; 0.5 V OVER ? ( 2K)
J CC,CMPRT14
;
J CMPRT15
;
CMPRT5: LD A,0x85 ; +2.5 C WARM COMPENSATION ( b7<--1 )
J CMPRT20
CMPRT6: LD A,0x84 ; +2 C WARM COMPENSATION ( b7<--1 )
J CMPRT20
CMPRT7: LD A,0x83 ; +1.5 C WARM COMPENSATION ( b7<--1 )
J CMPRT20
CMPRT8: LD A,0x82 ; +1.0 C WARM COMPENSATION ( b7<--1 )
J CMPRT20
CMPRT9: LD A,0x81 ; +0.5 C WARM COMPENSATION ( b7<--1 )
J CMPRT20
CMPRT10:LD A,0x00 ; 0.0 C WARM COMPENSATION ( b7<--0 )
J CMPRT20
CMPRT11:LD A,0x01 ; -0.5 C COLD COMPENSATION ( b7<--0 )
J CMPRT20
CMPRT12:LD A,0x02 ; -1.0 C COLD COMPENSATION ( b7<--0 )
J CMPRT20
CMPRT13:LD A,0x03 ; -1.5 C COLD COMPENSATION ( b7<--0 )
J CMPRT20
CMPRT14:LD A,0x04 ; -2.0 C COLD COMPENSATION ( b7<--0 )
J CMPRT20
CMPRT15:LD A,0x05 ; -2.5 C COLD COMPENSATION ( b7<--0 )
CMPRT20:RET
;;===============================================================
;===============================================================
;******* RT-TEMP COM' DATA SVC CALL *******
; input_parameter = C (RTJG), A <-- (RTSDT)
; output_parameter = A (b7= "+","-"(ºÎÈ£) b3~b0:data) -RT COMPAN'
;------------------------------------------------
RTPRT: CMP C,0x01 ;RT_RANGE_1 ?
J NE,RTPR10
;
CMP A,0x66 ; 38 C OVER ?
J CS,RTPR50 ;RT_RANGE_1
;
J RTPR55 ;RT_RANGE_2
;
RTPR10: CMP C,0x02 ;RT_RANGE_2 ?
J NE,RTPR15
;
CMP A,0x61 ; 40 C OVER ?
J CS,RTPR50 ;RT_RANGE_1
;
CMP A,0x6C ; 35 C BELOW ?
J CC,RTPR60 ;RT_RANGE_3
;
J RTPR55 ;RT_RANGE_2
;
RTPR15: CMP C,0x03 ;RT_RANGE_3 ?
J NE,RTPR20
;
CMP A,0x68 ; 37 C OVER ?
J CS,RTPR55 ;RT_RANGE_2
;
CMP A,0x7D ; 28 C BELOW ?
J CC,RTPR65 ;RT_RANGE_4
;
J RTPR60 ;RT_RANGE_3
;
RTPR20: CMP C,0x04 ;RT_RANGE_4 ?
J NE,RTPR25
;
CMP A,0x78 ; 30 C OVER ?
J CS,RTPR60 ;RT_RANGE_3
;
CMP A,0x8E ; 21 C BELOW ?
J CC,RTPR70 ;RT_RANGE_5
;
J RTPR65 ;RT_RANGE_4
;
RTPR25: CMP C,0x05 ;RT_RANGE_5 ?
J NE,RTPR30
;
CMP A,0x89 ; 23 C OVER ?
J CS,RTPR65 ;RT_RANGE_4
;
CMP A,0x9A ; 16 C BELOW ?
J CC,RTPR75 ;RT_RANGE_6
;
J RTPR70 ;RT_RANGE_5
;
RTPR30: CMP C,0x06 ;RT_RANGE_6 ?
J NE,RTPR35
;
CMP A,0x95 ; 18 C OVER ?
J CS,RTPR70 ;RT_RANGE_5
;
CMP A,0xA6 ; 11 C BELOW ?
J CC,RTPR80 ;RT_RANGE_7
;
J RTPR75 ;RT_RANGE_6
;
RTPR35: CMP C,0x07 ;RT_RANGE_7 ?
J NE,RTPR40
;
CMP A,0xA2 ; 13 C OVER ?
J CS,RTPR75 ;RT_RANGE_6
;
CMP A,0xB2 ; 6 C BELOW ?
J CC,RTPR85 ;RT_RANGE_8
;
J RTPR80 ;RT_RANGE_7
;
RTPR40: CMP C,0x08 ;RT_RANGE_8 ?
J NE,RTPR60
;
CMP A,0xAE ; 8 C OVER ?
J CS,RTPR80 ;RT_RANGE_7
;
J RTPR85 ;RT_RANGE_8
;
RTPR50: LD W,0x01 ;RT_RANGE_1
J RTPRTED
;
RTPR55: LD W,0x02 ;RT_RANGE_2
J RTPRTED
;
RTPR60: LD W,0x03 ;RT_RANGE_3
J RTPRTED
;
RTPR65: LD W,0x04 ;RT_RANGE_4
J RTPRTED
;
RTPR70: LD W,0x05 ;RT_RANGE_5
J RTPRTED
;
RTPR75: LD W,0x06 ;RT_RANGE_6
J RTPRTED
;
RTPR80: LD W,0x07 ;RT_RANGE_7
J RTPRTED
;
RTPR85: LD W,0x08 ;RT_RANGE_8
J RTPRTED
;
RTPRTED:RET
;------------------------------------------------
MTED: NOP
;------------------------------------------------
;**********************************************************
;**********************************************************
;***** R-ROOM DISPLAY SETTING *****
;**********************************************************
;**********************************************************
MRKY00:
CMP (ERR3HR),0 ;100320 3½Ã°£ °æ°úÇϸé ERROR Ç¥½Ã
J NE,MRKY000
;
CMP (ERR_1ST),0 ;ERROR_MASTER_FLAG SET = ?
J NE,MRKY50
;
MRKY000:
TEST (DKEYDT).R_KEY ;R_KEY PUSHED = ?
J F,MRKY001
;
SET (DKEYDT).R_KEY ;R_KEY SETTING (REFRESH)
SET (EPWFLAG).RNFLAG ;EEPROM WRITING REQUEST
LD (KCH10S),0x0A ;ALL_KEY_CHANGE_10sec SETTING
;
CMP (RN_CHN),TEMP0 ;TEMP0 ?
J EQ,MRKY01 ;YES=>TEMP6
;
CMP (RN_CHN),TEMP6 ;TEMP6 ?
;;;;; J EQ,MRKY02 ;YES=>TEMP5
;;;;;;
;;;;; CMP (RN_CHN),TEMP5 ;TEMP5 ?
J EQ,MRKY03 ;YES=>TEMP4
;
CMP (RN_CHN),TEMP4 ;TEMP4 ?
J EQ,MRKY04 ;YES=>TEMP3
;
CMP (RN_CHN),TEMP3 ;TEMP3 ?
J EQ,MRKY05 ;YES=>TEMP2
;
;;;;; CMP (RN_CHN),TEMP2 ;TEMP2 ?
;;;;; J EQ,MRKY06 ;YES=>TEMP1
;
J MRKY07 ;TEMP1=>TEMP0
;
;------------------------------------------------------
;(23)2007.03.08 ---> DISPLAY REFRESH Ãß°¡
MRKY001:
CMP (RN_CHN),TEMP0 ;TEMP0 ?
J EQ,MRKY07 ;YES=>TEMP0
;
CMP (RN_CHN),TEMP6 ;TEMP6 ?
J EQ,MRKY01 ;YES=>TEMP6
;
;;;;; CMP (RN_CHN),TEMP5 ;TEMP5 ?
;;;;; J EQ,MRKY02 ;YES=>TEMP5
;
CMP (RN_CHN),TEMP4 ;TEMP4 ?
J EQ,MRKY03 ;YES=>TEMP4
;
CMP (RN_CHN),TEMP3 ;TEMP3 ?
J EQ,MRKY04 ;YES=>TEMP3
;
;;;;; CMP (RN_CHN),TEMP2 ;TEMP2 ?
;;;;; J EQ,MRKY05 ;YES=>TEMP2
;;;;;;
;;;;; J MRKY06 ;TEMP1
J MRKY05 ;TEMP2
;
;------------------------------------------------------
;----- TEMP6 SETTING ----- ;R0 SETTING ( 6.0 C)
MRKY01: LD HL,DSPDT0 ;R0 SETTING (6.0C)
SET (HL).R0
CLR (HL).R3
LD HL,DSPDT1
CLR (HL).R1
CLR (HL).R4
LD HL,DSPDT2
CLR (HL).R2
;
;-- R_NOTCH_CHANGE_STATUS SETTING --
LD (RN_CHN),TEMP6 ;TEMP6 SETTING
;
;-- R_NOTCH_CHANGE_STATUS SETTING --
J MRKY10
;
;;;;;;----- TEMP5 SETTING ----- ;R1 SETTING ( 5.0 C)
;;;;;MRKY02: LD HL,DSPDT0 ;R1 SETTING (5.0C)
;;;;;;
;;;;;;-- R_NOTCH_CHANGE_STATUS SETTING --
;;;;; LD (RN_CHN),TEMP5 ;YACH/JUCK SETTING
;;;;; J MRKY10
;
;----- TEMP4 SETTING ----- ;R2 SETTING ( 4.0 C)
MRKY03: LD HL,DSPDT0 ;R2 SETTING (4.0C)
SET (HL).R0
CLR (HL).R3
LD HL,DSPDT1
SET (HL).R1
CLR (HL).R4
LD HL,DSPDT2
CLR (HL).R2
;
;-- R_NOTCH_CHANGE_STATUS SETTING --
LD (RN_CHN),TEMP4 ;TEMP4 SETTING
J MRKY10
;
;----- TEMP3 SETTING ----- ;R3 SETTING ( 3.0 C)
MRKY04: LD HL,DSPDT0 ;R3 SETTING (3.0C)
SET (HL).R0
CLR (HL).R3
LD HL,DSPDT1
SET (HL).R1
CLR (HL).R4
LD HL,DSPDT2
SET (HL).R2
;
;-- R_NOTCH_CHANGE_STATUS SETTING --
LD (RN_CHN),TEMP3 ;TEMP3 SETTING
J MRKY10
;
;----- TEMP2 SETTING ----- ;R4 SETTING ( 2.0 C)
MRKY05: LD HL,DSPDT0 ;R4 SETTING (2.0C)
SET (HL).R0
SET (HL).R3
LD HL,DSPDT1
SET (HL).R1
CLR (HL).R4
LD HL,DSPDT2
SET (HL).R2
;
;-- R_NOTCH_CHANGE_STATUS SETTING --
LD (RN_CHN),TEMP2 ;TEMP2 SETTING
J MRKY10
;
;;;;;;----- TEMP1 SETTING ----- ;R5 SETTING ( 1.0 C)
;;;;;MRKY06: LD HL,DSPDT0 ;R5 SETTING (1.0C)
;;;;;;
;;;;;;-- R_NOTCH_CHANGE_STATUS SETTING --
;;;;; LD (RN_CHN),TEMP1 ;TEMP1 SETTING
;;;;; J MRKY10
;
;----- TEMP0 SETTING ----- ;R6 SETTING ( 0.0 C)
MRKY07: LD HL,DSPDT0 ;R6 SETTING (0.0C)
SET (HL).R0
SET (HL).R3
LD HL,DSPDT1
SET (HL).R1
SET (HL).R4
LD HL,DSPDT2
SET (HL).R2
;
;-- R_NOTCH_CHANGE_STATUS SETTING --
LD (RN_CHN),TEMP0 ;TEMP2 SETTING
J MRKY10
;
;=================================
;----- KEY_PUSH 10sec COUNTER OVER = ? ----
MRKY10:
LD A,(RN_CHN)
LD (RN_B_U),A
CMP (KCH10S),0 ;ALL_KEY_CHANGE_10sec PASSED = ?
J NE,MRKY50
;
MRKY11: LD A,(RN_NOW)
CMP A,(RN_CHN)
J EQ,MRKY50
;----- control point change ----
LD A,(RN_CHN)
LD (RN_NOW),A ;(NOW_NOTCH) <-- (CHANGE_NOTCH)
;---------------
MRKY50: LD HL,RN_NOW
;==========================================
CMP (HL),TEMP6 ; TEMP6 = ?
J EQ,MRKY65 ; YACK
;---------------
;;;;; CMP (HL),TEMP5 ; TEMP5 = ?
;;;;; J EQ,MRKY70 ; YACK
;---------------
CMP (HL),TEMP4 ; TEMP4 = ?
J EQ,MRKY75 ; YACK/JUNG
;---------------
CMP (HL),TEMP3 ; TEMP3 = ?
J EQ,MRKY80 ; JUNG
;---------------
CMP (HL),TEMP2 ; TEMP2 = ?
J EQ,MRKY85 ; JUNG/KANG
;---------------
;;;;; CMP (HL),TEMP1 ; TEMP1 = ?
;;;;; J EQ,MRKY90 ; JUNG/KANG
;
J MRKY95 ; TEMP0 SETTING
; ; KANG
;
;---- TEMP6_CONTROL POINT SETTING ----
MRKY65: LD DE,R0NOTCH ;DE <-- R0_NOTCH LOOK UP LOCATION
J MRKY110
;---- TEMP5_CONTROL POINT SETTING ----
;;;;;MRKY70: LD DE,R1NOTCH ;DE <-- R1_NOTCH LOOK UP LOCATION
;;;;; J MRKY110
;---- TEMP4_CONTROL POINT SETTING ----
MRKY75: LD DE,R2NOTCH ;DE <-- R2_NOTCH LOOK UP LOCATION
J MRKY110
;---- TEMP3_CONTROL POINT SETTING ----
MRKY80: LD DE,R3NOTCH ;DE <-- R3_NOTCH LOOK UP LOCATION
J MRKY110
;---- TEMP2_CONTROL POINT SETTING ----
MRKY85: LD DE,R4NOTCH ;DE <-- R4_NOTCH LOOK UP LOCATION
J MRKY110
;---- TEMP2_CONTROL POINT SETTING ----
;;;;;MRKY90: LD DE,R5NOTCH ;DE <-- R5_NOTCH LOOK UP LOCATION
;;;;; J MRKY110
;---- TEMP2_CONTROL POINT SETTING ----
MRKY95:
LD DE,R6NOTCH ;DE <-- R6_NOTCH LOOK UP LOCATION
;----------------------------------------
MRKY110:
LD (CTL_R),DE ;R_room_current_control_value LOAD
;==================================================
;==================================================================
;=== R_ROOM_temperature_compansation calculation SUBROUTINE CALL ===
;==================================================================
;====== R_ROOM_temperature_compansation calculation =======
RSUB: LD A,(RCOM) ;A <-- R_room_temp'_compansation_data
AND A,0y00001111 ;A <-- COMPANSATION DATA MASK
TEST (RCOM).BIT7 ;SIGN(PLUS & MINUS) COMPANSATION = ?
J T,RSUB05
;
;+++++ PLUS COMPANSATION +++++
LD DE,(CTL_R) ;R_room_current_control_value LOAD
ADD E,A ;E <-- E + A(COMPAN')
ADDC D,0 ;D <-- D + CF + "0"
LD (CTL_R),DE ;R_room_temp'_compansation_value SAVE
J RSUB10
;----- MINUS COMPANSATION -----
RSUB05: LD DE,(CTL_R) ;R_room_Current_control_value LOAD
LD B,0 ;B clear
LD C,A ;C <-- COMPANSATION DATA (A)
LD WA,DE ;WA <-- NOTCH(DE)
SUB WA,BC ;WA(DE) <-- WA(DE) - C(COMPAN')
LD DE,WA ;DE <-- WA(DE)
LD (CTL_R),DE ;R_room_temp'_compansation_value SAVE
;==================================================================
;--- OPTION PIN R_TEMP COMPANSATION CALCULATION ---
RSUB10: LD A,(RCUTCOM) ;A <-- OPTION_compansation_data
AND A,0y00001111 ;A <-- COMPANSATION DATA MASK
TEST (RCUTCOM).BIT7 ;SIGN(PLUS & MINUS) COMPANSATION = ?
J T,RSUB15
;
;+++++ PLUS COMPANSATION +++++
LD DE,(CTL_R) ;R_room_current_control_value LOAD
ADD E,A ;E <-- E + A(COMPAN')
ADDC D,0 ;D <-- D + CF + "0"
LD (CTL_R),DE ;R_room_temp'_compansation_value SAVE
J RSUBED
;
;----- MINUS COMPANSATION -----
RSUB15: LD DE,(CTL_R) ;R_room_current_control_value LOAD
LD B,0 ;B clear
LD C,A ;C <-- COMPANSATION DATA (A)
LD WA,DE ;WA <-- NOTCH(DE)
SUB WA,BC ;WA(DE) <-- WA(DE) - C(COMPAN')
LD DE,WA ;DE <-- WA(DE)
LD (CTL_R),DE ;R_room_temp'_compansation_value SAVE
;
RSUBED:
;==================================================
MRKYED: NOP
;
;*************************************************
;****** ******
;****** NOTCH_DATA --> EEPROM WRITE ******
;****** ******
;*************************************************
;=================================================
; EEPROM PROGRAM
;=================================================
;----------------------------------------
; WRITE R-NOTCH DATA TO EEPROM
;----------------------------------------
MEW00:
TEST (EPWFLAG).RNFLAG ;EEPROM F-NOTCH WRITE FLAG SET ?
J T,MEWED
;
CLR (EPWFLAG).RNFLAG ;EEPROM F-NOTCH WRITE FLAG CLR
;
;------ EEPROM WRITE ENABLE SETTING -----
CALL EWEN ;EEPROM WRITE ENABLE OUTPUT SUB CALL
;
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
;
;---- EEPROM DATA WRITE -----------
;
SET (P5DR).POCS ;EEPROM CHIP SELECT(ENABLE)
;
CALL CLKST ;EEPROM START BIT OUTPUT
;
;---- WRITE COMMAND OUTPUT -----
LD DE,ECPROG0 ;F-NOTCH EEPROM WRITE COMMAND
LD C,(DE)
;
CALL DATAOUT ;DATA OUTPUT
;
;---- PARITY DATA OUTPUT -----
LD C,0y01011111 ;C <-- 5FH
;
CALL DATAOUT ;DATA OUTPUT
;
;---- NOTCH DATA OUTPUT -----
LD C,(RN_CHN) ;C <-- CHANGE TRANSFER MENU DATA
;
CALL DATAOUT ;DATA OUTPUT
;
CALL CLKDI
;
CLR (P5DR).PODI ;OUTPUT PORT CLEAR
;
CLR (P5DR).POCS ;EEPROM CHIP SELECT DISABLE
;
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
;
;
SET (P5DR).POCS ;EEPROM CHIP SELECT ENABLE
;
LD (EWCNT),68 ;SET EEPROM COUNT 100ms
MEW02: CMP (EWCNT),0
J EQ,MEW03_1
TEST (P5PRD).PISI ;BUSY STATUS ?
J F,MEW02
;
LD (EWCNT),68 ;SET EEPROM COUNT 100ms
MEW03: CMP (EWCNT),0
J EQ,MEW03_1
TEST (P5PRD).PISI ;READY STATUS ?
J T,MEW03
;
MEW03_1:CLR (P5DR).POCS ;EEPROM CHIP SELECT DISABLE
;
;------ EEPROM WRITE DISABLE SETTING -----
CALL EWDIS ;EEPROM WRITE DISABLE OUTPUT
J MEWED
;
MEWED: NOP
;
;========================================================
;----------------------------------------------
;------- WRITE DEFROST TIME TO EEPROM -------
;----------------------------------------------
MEWDEF00:
CMP (DEFBKUP),0 ;EEPROM WRITE 30min PASSED ?
J NE,MEWDEFED ;30ºÐ¸¶´Ù Á¦»ó½Ã°£ BACKUP
;
LD (DEFBKUP),30
;
MEWDEF01:
;------ EEPROM WRITE ENABLE SETTING -----
CALL EWEN ;EEPROM WRITE ENABLE OUTPUT SUB CALL
;
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
;
;------- EEPROM DATA WRITE ---------
SET (P5DR).POCS ;EEPROM CHIP SELECT(ENABLE)
;
CALL CLKST ;EEPROM START BIT OUTPUT
;
TEST (EPWFLAG).HL_WRT
J F,MEWDEF03
;
;------- WRITE COMMAND OUTPUT ------
LD DE,ECPROG1 ;F-NOTCH EEPROM WRITE COMMAND <080529>
LD C,(DE)
;
CALL DATAOUT ;DATA OUTPUT
;
;------- PARITY DATA OUTPUT --------
LD C,0y01011111 ;C <-- 5FH
;
CALL DATAOUT ;DATA OUTPUT
;
;------- DEFROST TIME DATA(L) OUTPUT -------
LD HL,DEFCNT ;
LD C,(HL) ;C <-- CURRENT NOTCH DATA
;
CALL DATAOUT ;DATA OUTPUT
;
SET (EPWFLAG).HL_WRT
J MEWDEF05
;;
;----------------------------------------------
MEWDEF03:
;------- WRITE COMMAND OUTPUT ------
LD DE,ECPROG2 ;LOAD EEPROM WRITE COMMAND
LD C,(DE)
;
CALL DATAOUT ;DATA OUTPUT
;
;------- PARITY DATA OUTPUT --------
LD C,0y01011111 ;C <-- 5FH
;
CALL DATAOUT ;DATA OUTPUT
;
;------- DEFROST TIME DATA(H) OUTPUT -------
LD HL,DEFCNT ;
ADD HL,1
LD C,(HL) ;C <-- CURRENT NOTCH DATA
;
CALL DATAOUT ;DATA OUTPUT
;
CLR (EPWFLAG).HL_WRT
;;
;----------------------------------------------
MEWDEF05:
CALL CLKDI
;
CLR (P5DR).PODI ;OUTPUT PORT CLEAR
;
CLR (P5DR).POCS ;EEPROM CHIP SELECT DISABLE
;
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
;
;
SET (P5DR).POCS ;EEPROM CHIP SELECT ENABLE
LD (EWCNT),68 ;SET EEPROM COUNT 100ms
;
MEWDEF10:
CMP (EWCNT),0
J EQ,MEWDEF20
;
TEST (P5PRD).PISI ;BUSY STATUS ?
J F,MEWDEF10
;
LD (EWCNT),68 ;SET EEPROM COUNT 100ms
;
MEWDEF15:
CMP (EWCNT),0
J EQ,MEWDEF20
;
TEST (P5PRD).PISI ;READY STATUS ?
J T,MEWDEF15
;
MEWDEF20:
CLR (P5DR).POCS ;EEPROM CHIP SELECT DISABLE
;
;------ EEPROM WRITE DISABLE SETTING -----
CALL EWDIS ;EEPROM WRITE DISABLE OUTPUT
;
TEST (EPWFLAG).HL_WRT ;WRITE ALL DATA ?
J F,MEWDEF01
;;;
;
MEWDEFED: NOP
;
;========================================================
;
;*************************************************
;****** MANUAL QUICK REFRIGERATION CONTROL ******
;*************************************************
;;;;;MQR00: CMP (ERR_1ST),0 ;ERROR MASTER FLAG SET = ?
;;;;; J EQ,MQR03
;;;;;;
;;;;; CLR (QRFLAG).QR_OPR ;Q/R OPERATION FLAG CLEAR
;;;;; CLR (QRFLAG).QR_LED ;Q/R LED FLAG CLEAR
;;;;;;
;;;;; J MQRED
;;;;;;
;;;;;MQR03: TEST (DKEYDT).QR_KEY ;QR_KEY PUSHED = ?
;;;;; J F,MQR10
;;;;;;
;;;;; SET (DKEYDT).QR_KEY ;QR_KEY SETTING (REFRESH)
;;;;;;
;;;;; TEST (QRFLAG).QR_LED ;Q/R LED FLAG SET ?
;;;;; J T,MQR08
;;;;;;
;;;;; CLR (QRFLAG).QR_OPR ;Q/R OPERATION FLAG CLEAR
;;;;; CLR (QRFLAG).QR_LED ;Q/R LED FLAG CLEAR
;;;;; J MQR10
;;;;;;
;;;;;;========================= DURING S-MODE NOT OPERATE Q/R E/S2
;;;;;;---- Q/R FUNCTION INJECTION -----
;;;;;MQR08: SET (QRFLAG).QR_LED ;Q/R LED FLAG SET
;;;;; SET (QRFLAG).QR_OPR ;Q/R OPERATION FLAG SET
;;;;; LD (QRCNT),0x78 ;Q/R 2HR SET
;;;;;;===================================
;;;;;;---- Q/R RELEASE CONDITION JUDGEMENT ----
;;;;;MQR10: TEST (QRFLAG).QR_OPR ;Q/R OPERATION FLAG SET ?
;;;;; J T,MQR37
;;;;;;
;;;;; CMP (QRCNT),0 ;Q/R 2HR OVER ?
;;;;; J NE,MQR35
;;;;;;
;;;;; CLR (QRFLAG).QR_LED ;Q/R LED FLAG CLEAR
;;;;; CLR (QRFLAG).QR_OPR ;Q/R OPERATION FLAG CLEAR
;;;;; J MQRED
;;;;;;-------------------
;;;;;MQR35: LD HL,(CTL_R) ;r_room_current_control_point_value LOAD
;;;;;;
;;;;; SUB HL,4 ; HL <-- HL - (2 C)
;;;;;;-------------------------
;;;;;;****** R_SENSOR : R NOTCH DATA CMPR ******
;;;;; LD A,(RSDT)
;;;;; CMP A,(HL) ;(RSDT) - (HL)
;;;;;;;; ;(R_SENSOR) < (R_CONTENT')-->CF=1 [Q/R STAY]
;;;;;;;; ;(R_SENSOR) >= (R_CONTENT')-->CF=0 [Q/R STOP]
;;;;; J CS,MQRED ;IF CF=1 ===> JUMP
;;;;; CLR (QRFLAG).QR_OPR ;Q/R OPERATION FLAG CLEAR
;;;;; J MQR37
;;;;;;---------------------------------------------
;;;;;;--- Q/R MINIMUN DISPLAY TIME (30MIN) PASSED = ? 120-30MIN=90MIN
;;;;;MQR37: CMP (QRCNT),0x5A ;(QRCNT) - (90MIN)
;;;;;;;; ;(QRCNT) < (90MIN)-->CF=1 : DISPLAY OFF
;;;;;;;; ;(QRCNT) >= (90MIN)-->CF=0
;;;;; J CC,MQRED ;IF CF=0 ===> JUMP
;;;;;;
;;;;;;---- Q/R DISPLAY OFF ----
;;;;; CLR (QRFLAG).QR_LED ;Q/R LED FLAG CLEAR
;;;;;;---------------------------------------------------------------
;;;;;MQRED: NOP
;;;;;;
;;;;;;*************************************************
;;;;;;****** << CS-PJT DISPLAY >> ******
;;;;;;****** Q/R LED CONTROL ******
;;;;;;*************************************************
;;;;;QRLC00:
;;;;; CMP (ERR_1ST),0 ;ERROR_MASTER_FLAG SET = ?
;;;;; J NE,QRLCED
;;;;;;
;;;;; TEST (QRFLAG).QR_LED ;Q/R OPERATION(LED) FLAG SET ?
;;;;; J F,QRLC01
;;;;;;
;;;;;;--- LED ALL OFF OUTPUT ---
;;;;;;
;;;;; LD HL,DSPDT2
;;;;; CLR (HL).QR1 ;Q/R_LED2 OFF
;;;;; LD HL,DSPDT3
;;;;; CLR (HL).QR2 ;Q/R_LED3 OFF
;;;;; LD HL,DSPDT4
;;;;; CLR (HL).QR3 ;Q/R_LED4 OFF
;;;;; LD HL,DSPDT5
;;;;; CLR (HL).QR4 ;Q/R_LED5 OFF
;;;;;;
;;;;; J QRLCED
;;;;;;-------------------------
;;;;;QRLC01:
;;;;;;-------- QR2 LED ON ------------
;;;;; LD HL,DSPDT2
;;;;; SET (HL).QR1 ;Q/R_LED2 ON
;;;;; LD HL,DSPDT3
;;;;; SET (HL).QR2 ;Q/R_LED3 ON
;;;;; LD HL,DSPDT4
;;;;; SET (HL).QR3 ;Q/R_LED4 ON
;;;;; LD HL,DSPDT5
;;;;; SET (HL).QR4 ;Q/R_LED5 ON
;;;;;;
;;;;; J QRLCED
;;;;;;==============================================================
;;;;;QRLCED: NOP
;==============================================================
;*************************************************
;*************************************************
;******* R-LOAD CONTROL **********
;*************************************************
;*************************************************
MFC00: CMP (ERR_1ST),0
J EQ,MFC10
;
MFC05: CLR (S_F_F).A_Q_R_F ;INITIAL AUTO_QUICK_REF'_FLAG CLR
CLR (S_F_F).RLOAD1 ;INITIAL_LOAD_CONFRONTATION_FLAG CLR <090206>
CLR (S_F_F).RLOAD2 ;R_LOAD_CONFRONTATION_FLAG CLR
CLR (S_F_F).D1STF ;DOOR_OPEN FIRST FLAG CLR
LD (RL3HR),0 ;R_LOAD COMPENSATION MAX HR CLR
LD (R20M),0 ;R_LOAD COMPENSATION 20MIN CLR
;
J MFC100
;
MFC10: TEST (S_F_F).A_Q_R_F ;INITIAL AUTO_QUICK_REF'_FLAG SET ?
J F,MFCED
;
TEST (S_F_F).RLOAD1
J F,MFCED
;
LD C,(RTJG) ;RT JUDGE
;
CMP C,0x01 ;38C OVER ?
J EQ,MFC15 ;RT>38¡É ÇØÁ¦
;
CMP C,0x02 ;34C OVER ?
J EQ,MFC15 ;RT>35¡É ÇØÁ¦
;
;;;;; CMP C,0x06 ;18C BELOW ?
;;;;; J EQ,MFC15 ;RT<10¡É ºÎÇÏ´ëÀÀ ÇØÁ¦
;
CMP C,0x07 ;13C BELOW ?
J EQ,MFC15
;
CMP C,0x08 ;8C BELOW ?
J NE,MFC20
;----------------------------------------
MFC15:
TEST (S_F_F).RLOAD2
J T,MFC05
;
J MFC110
;----------------------------------------
MFC20: TEST (S_F_F).RLOAD2 ;ºÎÇÏ´ëÀÀ FLAG°¡ CLR(F)¸é DOOR OPEN °Ë»ç
J F,MFC100
;
CMP (RN_NOW),TEMP0 ;NOTCH°¡ 0ÀÌ¸é ºÎÇÏ´ëÀÀ ±ÝÁö
J EQ,MFC05 ;ºÎÇÏ´ëÀÀ ÅõÀÔÁß NOTCH°¡ 0À̸é ÇØÁ¦µÇÁö ¾ÊÀ½.
;
CMP (RLD3HR),0 ;ºÎÇÏÁ¾·á ÈÄ 3HR PASSED?
J NE,MFC100 ;¾Æ´Ï¸é ºÎÇÏ´ëÀÀ ÅõÀÔ±ÝÁö.
;---------------------------------------;<080730>
CMP (FLD1HR),0 ;FºÎÇÏÁ¾·á ÈÄ 1HR PASSED? <080730>
J NE,MFC100 ;¾Æ´Ï¸é ºÎÇÏ´ëÀÀ ÅõÀÔ±ÝÁö.
;---------------------------------------
TEST (S_F_F).D1STF ;1st DOOR OPEN FLAG°¡ CLRÀ̸é
J T,MFC50 ;DOOR OPEN È®ÀÎ
;
CMP (RD20S),0 ;DOOR OPEN 20s PASSED?
J NE,MFC100
;
TEST (DOFLAG).DO_R ;DOOR OPEN ? <090121>
J F,MFC25
;
CMP (R20M),0 ;ºÎÇÏ´ëÀÀ 20ºÐ PASSED?
J NE,MFC30
;
MFC25: CLR (S_F_F).D1STF ;1st DOOR OPEN FLAG => SET
J MFC100
;
;***** R1_SENSOR : R1_SENSOR(OLD) + 2 C DATA CMPR ******
MFC30: LD A,(RSOLD) ;HL<-- R2_LOAD_SENSOR OLD DATA(AT FIRST D/OPEN)
SUB A,4 ;HL <-- HL + 2 C
;
CMP A,(RSDT) ;(OLD) - (CURRENT DEFAULT)
;;; ;(OLD+2C) < (NEW)-->CF=1
;;; ;(OLD+2C) >= (NEW)-->CF=0 : ICE_MODE INJECT
J CS,MFC100 ;IF CF=1 ===> JUMP
;
SET (S_F_F).RLOAD2 ;ºÎÇÏ´ëÀÀ2 ½ÇÇà
;
;------------------------------;<090511> 15,20¡ÉÀÏ ¶§ ºÎÇÏ´ëÀÀ ½Ã°£/¿Âµµ º¯°æ
LD C,(RTJG)
;
CMP C,4 ;RT = 22~27 C ?
J EQ,MFC34
;
CMP C,5 ;RT = 18~22 C ?
J EQ,MFC35
;
CMP C,6 ;RT = 12.5~18 C ?
J EQ,MFC36
; ;RT > 27 C
LD (RL3HR),180 ;ºÎÇÏ´ëÀÀ 3½Ã°£ ½ÇÇà
LD DE,R6NOTCH
LD (RLTEMP),DE ;ºÎÇÏ´ëÀÀ ½Ã °­NOTCH ¿îÀü
J MFC100
;
MFC34: ;RTJG = 4 (RT = 22~27 C)
LD (RL3HR),180 ;ºÎÇÏ´ëÀÀ 3½Ã°£ ½ÇÇà
LD DE,R6NOTCH
LD (RLTEMP),DE ;ºÎÇÏ´ëÀÀ ½Ã °­NOTCH ¿îÀü
J MFC100
;
MFC35: ;RTJG = 5 (RT = 18~22 C)
LD (RL3HR),120 ;ºÎÇÏ´ëÀÀ 2½Ã°£ ½ÇÇà
LD DE,R6NOTCH
LD (RLTEMP),DE ;ºÎÇÏ´ëÀÀ ½Ã °­NOTCH ¿îÀü
J MFC100
;
MFC36: ;RTJG = 6 (RT = 12.5~18 C)
LD (RL3HR),120 ;ºÎÇÏ´ëÀÀ 2½Ã°£ ½ÇÇà
LD DE,R6NOTCH
LD (RLTEMP),DE ;ºÎÇÏ´ëÀÀ ½Ã °­NOTCH ¿îÀü
J MFC100
;
;------------------------------;
MFC50: TEST (DOFLAG).DO_R ;<090121>
J T,MFC100
;
LD (RD20S),0x14
LD (R20M),0x14
SET (S_F_F).D1STF
;--- R1_LOAD_SENSOR OLD DATA SAVE ---
LD A,(RSDT)
LD (RSOLD),A ;REF'LOAD_SENSOR OLD DATA SAVE
;
MFC100: TEST (S_F_F).RLOAD2
J T,MFCED
;
CMP (RL3HR),0
J NE,MFCED
;
;2007.11.10
; LD HL,(CTL_R) ;r_room_current_control_point_value LOAD
;
; SUB HL,6 ;NOTCH-3deg
;****** R_SENSOR : R NOTCH DATA CMPR ******
; CMP (RSDT),(HL) ;(R-NOTCH) - (HL)
;;; ;(R_SENSOR) < (R_CONTENT')-->CF=1
;;; ;(R_SENSOR) >= (R_CONTENT')-->CF=0 :R_CON'
; J CS,MFCED ;IF CF=1 ===> JUMP
;
MFC110: CLR (S_F_F).RLOAD2
LD (RL3HR),0
LD (R20M),0
LD (RLD3HR),0xB4 ;ºÎÇÏ´ëÀÀ Áö¿¬ 3½Ã°£ ¼³Á¤
CLR (S_F_F).D1STF
;
MFCED: nop
;*************************************************
;*************************************************
;******* F-LOAD CONTROL **********<090213>
;*************************************************
;*************************************************
MFL00: CMP (ERR_1ST),0
J EQ,MFL10
;
MFL05: CLR (S_F_F).FLOAD
LD (FL1HR),0
CLR (S_F_F).D1STF3
;
J MFL100
;
MFL10: TEST (S_F_F).RLOAD1
J F,MFLED
;
TEST (S_F_F).RLOAD2
J F,MFL05
;------------------------------------------------------<090205>
LD C,(RTJG) ;RT JUDGE
;
CMP C,0x07 ;13C BELOW ? F½Ç ºÎÇÏ´ëÀÀ ÇØÁ¦
J EQ,MFL15
;
CMP C,0x08 ;8C BELOW ? F½Ç ºÎÇÏ´ëÀÀ ÇØÁ¦
J NE,MFL17
;
MFL15:
TEST (S_F_F).FLOAD
J T,MFL05
;
J MFL110
;
MFL17:
;------------------------------------------------------
TEST (S_F_F).FLOAD
J F,MFL100
;
CMP (RLD3HR),0x3C
J CC,MFL100
;
CMP (FLD1HR),0
J NE,MFL100
;
TEST (S_F_F).D1STF3
J T,MFL50
;
MFL20:
CMP (FDO30S),0
J EQ,MFL40
;
CMP (FDOA40S),0
J EQ,MFL40
;
TEST (DOFLAG).DO_F
J F,MFL30
;
LD (FDO30S),0x1E
;
MFL30:
CMP (F30M),0
J NE,MFL100
;
CLR (S_F_F).D1STF3
;
J MFL100
;
MFL40:
SET (S_F_F).FLOAD
LD (FL1HR),0x3C
J MFL100
;
MFL50:
LD (FDO30S),0x1E
LD (FDOA40S),0x28
LD (F30M),0x1E
;
TEST (DOFLAG).DO_F
J T,MFL100
;
SET (S_F_F).D1STF3
;
MFL100: TEST (S_F_F).FLOAD
J T,MFLED
;
CMP (FL1HR),0
J EQ,MFL110
;
LD HL,(CTL_R)
SUB HL,4
LD A,(RSDT)
CMP A,(HL)
J CS,MFLED
;
MFL110: CLR (S_F_F).FLOAD
LD (FL1HR),0
LD (FLD1HR),0x3C ;ºÎÇÏ´ëÀÀ Áö¿¬ 1½Ã°£ ¼³Á¤
CLR (S_F_F).D1STF3
J MFLED
;
MFLED: NOP
;*************************************************
;*************************************************
;****** INITIAL DEF-HEATER DRIVE ******
;*************************************************
;*************************************************
MIHD00: TEST (IHDFLAG).IHDF ;INITIAL HEATER DRIVE FLAG SET = ?
J T,MIHDED
;
;---- NOW ERROR STATUS = ?
CMP (ERR_1ST),0 ;ERROR_MASTER FLAG SET = ?
J NE,MIHD10
;--- DEFROST_SENSOR TEMPERATURE(45C) COMPARE ---
LD HL,DEF45C ;DEFROST_RETURN_TEMP'(25 C)_DATA READ
LD A,(DSDT)
CMP A,(HL)
;IF (D_SENSOR)¡Ã(45 C) == GOTO MIDH10 (CF=0)
; (D_SENSOR)<(45 C) == NEXT ROUTINE (CF=1)
J CS,MIHD10
;---- (D_SENSOR) < (45 C) PROGRESS ----
CMP (IDHCHK),0 ;INITIAL HEATER ON 10sec OVER = ?
J EQ,MIHD10
;
SET (LOADF).POHEAT ;DEFROST_HEATER ON
; LD (IHBHT5S),0x05 ;INITIAL H/B HEATER 5SEC SET <090114>
;---- INITIAL MAIN ROUTINE RETURN ----
J MAIN
;--------------------------------------------
MIHD10: CLR (IHDFLAG).IHDF ;INITIAL HEATER DRIVE FLAG CLEAR (TEST OVER)
CLR (LOADF).POHEAT ;DEFROST_HEATER OFF
J MAIN ;<090304>
;--------------------------------------------<090114>
;----- (D_SENSOR) > (45 C) PROGRESS ----
;MIHD20: CLR (LOADF).POHEAT ;DEFROST_HEATER OFF
; CLR (LOADF).POHHTR ;HOME-BAR HEATER OFF
;--------------------------------------------
;MIHD30: CLR (LOADF).POHEAT ;DEFROST_HEATER OFF
; CMP (IHBHT5S),0 ;INITIAL HEATER ON 10sec OVER = ?
; J EQ,MIHD40
;
; SET (LOADF).POHHTR ;HOME-BAR HEATER ON
; J MAIN
;--------------------------------------------
;MIHD40: CLR (IHDFLAG).IHDF ;INITIAL HEATER & H/B HEATER DRIVE STOP
; CLR (LOADF).POHHTR ;HOME-BAR HEATER OFF
; J MAIN
;*************************************************<090114>
MIHDED: NOP
;
;*************************************************
;*************************************************
;******* º¯µ¿Á¦»ó MODE EXIT **********
;*************************************************
;*************************************************
MEXT00: NOP
;
MEXT10: TEST (LOADF).POCOMP ;COMP°¡ OFFÀ̸é, COMP ¿¬¼Ó½Ã°£ SET
J T,MEXT20 ;OOMP°¡ ONÀ̸é, COMP ¿¬¼Ó½Ã°£ È®ÀÎ
;
LD WA,(CMP6HR)
CMP WA,0 ;COMP¿¬¼Ó¿îÀü½Ã°£ÀÌ 6½Ã°£ÀÌ PASSÇߴ°¡?
J NE,MEXTED ;6½Ã°£ÀÌ Áö³ªÁö ¾Ê¾ÒÀ¸¸é JUMP
;
CMP (RSDT),0x6E ;R-SENSOR - (10 C)
; ;R-SENSOR < (10 C)-->CF=1
; ;R-SENSOR >=(10 C)-->CF=0
J CC,MEXTED ;IF CF=0 ===> JUMP
;
LDW (CMP6HR),360 ;COMP¿¬¼Ó¿îÀü½Ã°£ 6½Ã°£ SET
LDW (DODEFCNT),0 ;DOOR OPEN DEF 33HR CNT = 30(remain DEEP COOL)
;
J MEXTED
;
MEXT20: LDW (CMP6HR),360 ;COMP¿¬¼Ó¿îÀü½Ã°£ 6½Ã°£ SET
;
MEXTED: NOP
;
;*************************************************
;*************************************************
;****** DEFROST CONTROL ******
;*************************************************
;*************************************************
MDEF00:
;----------------------------------------------------------------
MDEF10: TEST (DEFFLAG).DEFF ;DEFROST FLAG SET = ?
J F,MDEF30
;
TEST (S_F_F).D1STF2 ;1st DOOR OPEN FLAG°¡ CLRÀ̸é
J T,MDEF15 ;DOOR OPEN È®ÀÎ
;
CMP (AD_R20S),0 ;DOOR OPEN 20s PASSED?
J NE,MDEF20
;
TEST (DOFLAG).DO_MAST ;DOOR OPEN ? <090121>
J F,MDEF12
;
CMP (AD_R20M),0 ;ºÎÇÏ´ëÀÀ 20ºÐ PASSED?
J NE,MDEF13
;
MDEF12: CLR (S_F_F).D1STF2 ;1st DOOR OPEN FLAG => SET
J MDEF20
;
;***** R_SENSOR : R_SENSOR(OLD) + 3¡É DATA CMPR ******
MDEF13: LD A,(RSOLD) ;HL<-- R2_LOAD_SENSOR OLD DATA(AT FIRST D/OPEN)
SUB A,6 ;HL <-- HL + 3¡É (2007.09.06 : 2deg=>3deg ¼öÁ¤)
;
CMP A,(RSDT) ;(OLD) - (CURRENT DEFAULT)
;;; ;(OLD+2C) < (NEW)-->CF=1
;;; ;(OLD+2C) >= (NEW)-->CF=0 : ICE_MODE INJECT
J CS,MDEF20 ;IF CF=1 ===> JUMP
;
LDW (DODEFCNT),0 ;DOOR OPEN DEF 33HR CNT = 0
J MDEF20
;
MDEF15: TEST (DOFLAG).DO_MAST ;DOOR OPEN Àΰ¡? <090121>
J T,MDEF20
;
LD (AD_R20S),0x14
LD (AD_R20M),0x14
SET (S_F_F).D1STF2
LD A,(RSDT)
LD (RSOLD),A ;REF'LOAD_SENSOR OLD DATA SAVE
;
;=======================================
MDEF20: LD WA,(DEFCNT) ;COMPRESSOR ON 7(4)HR OVER = ?
CMP WA,0
J NE,MDEF30
;
LD WA,(DODEFCNT) ;33HR OVER = ?
CMP WA,0
J NE,MDEF30
;
;====== P/G INSERT (DEEP COOL FUNCTION) =======
TEST (DEFFLAG).DCT_F ;DEEP COOL TOGGLE FLAG SET = ?
J T,MDEF21
;
TEST (DEFFLAG).DCEND_F ;DEEP COOL END FLAG SET = ?
J F,MDEF22
;
CMP (DCOOLCNT),0 ;DEEP COOL ½Ã°£ È®ÀÎ
J EQ,MDEF22
J MDEF30
;
MDEF21: SET (DEFFLAG).DCT_F ;DEEP COOL TOGGLE FLAG SET
;091110 Á¦»ó Áß Á¤Àü ÈÄ º¹±Í ½Ã, °ð¹Ù·Î Á¦»óÅõÀÔÇϱâÀ§ÇØ DEEP COOL½Ã°£ SET À§Ä¡º¯°æ
;;;;; LD (DCOOLCNT),0x1E ;DEEP COOL Ãß°¡¿îÀü 30ºÐ SET
J MDEF30
;
;---- DEFROST HEATER PURSUIT ----
MDEF22: CLR (LOADF).POCOMP ; << COMP OFF >>
CLR (LOADF).POFANH ; << HIGH FAN OFF >>
CLR (LOADF).POFANL ; << LOW FAN OFF >>
CLR (LOADF).POFFAN ;F-FAN OFF(DC-BLDC) ;100408
CLR (LOADF).POCFAN ;C-FAN OFF(DC-BLDC) ;100408
; CLR (LOADF).POHHTR ; << H/BAR HTR OFF >> <090114>
; LD (HBARCNT),0 ;<090114>
SET (DEFFLAG).DEFF ;DEFROST HEATER FLAG SETTING
LD (DEF2HR),0x78 ;DEFROST MAX. 2HR SET
LD (DCOOLCNT),0 ;DEEP COOL Ãß°¡¿îÀü½Ã°£ <= 0
;
LDW (DEFCNT),0 ;DEFROST_TIME CLEAR at defrost start
LD (DEFBKUP),0 ;Á¦»ó ½ÃÀÛ ½Ã DEFCNT=0À¸·Î EEPROM¿¡ ÀúÀåÇÏ°Ô ÇÔ
;
J MDEF30
;========================================
MDEF30: TEST (DEFFLAG).DEFF ;DEFROST FLAG SET = ?
;J T,MDEFED
J T,MDEF60
;
TEST (ERRFLAG).DSERR ;DEF_SENSOR ERROR FLAG SET = ?
J F,MDEF40 ;DEFROST PASS
;-----------
CLR (LOADF).POCOMP ; << COMP OFF >>
SET (LOADF).POHEAT ; << HEATER ON >>
; CLR (LOADF).POHHTR ; << H/B HEATER OFF>> <090114>
;
;--- DEFROST_SENSOR TEMPERATURE(13C) COMPARE ---
LD HL,DEF13C ;DEFROST_RETURN_TEMP'(13 C)_DATA READ
LD A,(DSDT)
CMP A,(HL)
; ;(D) < (13C) -->CF=1 :DEFROST END
; ;(D) >= (13C) -->CF=0
J CS,MDEF50 ;IF CF=1 ===> DEFROST END
;---- (D_SENSOR) < (13 C) PROGRESS ----
MDEF37: CMP (DEF2HR),0 ;DEFROST MAX. 2HR OVER = ?
J NE,MDEFED
;
SET (ERRFLAG).ERRDEF ;DEFROST_ERROR FLAG SET
;
CMP (ERR_1ST),0 ;NOT FIRST ERROR ?
J NE,MDEF40
;
SET (ERR_1ST).ERRDEF ;DEFROST 1ST ERROR SETTING
;
LD (ERR3HR),180 ;100320 HIDDEN ERROR
;
;---- DEFROST ERROR LED SETTING (H) A2,A3,A5,A6,A7 LED ON ----;100320
;;;;; LD (DSPDT0),0y00000010 ;R0 LED OFF, R3 LED ON
;;;;; LD (DSPDT1),0y00000110 ;R1 LED ON , R4 LED ON
;;;;; LD (DSPDT2),0y00000100 ;R2 LED ON
;
MDEF40: CALL DEFEND ;DEFROST END SETTING
J MDEFED
;---- (D_SENSOR) > (13 C) PROGRESS ----
MDEF50: TEST (ERRFLAG).ERRDEF ;DEFROST_ERROR_FLAG SET = ?
J T,MDEF55
;
CLR (ERRFLAG).ERRDEF
J START
;
MDEF55: CALL DEFEND ;DEFROST END SETTING
J MDEFED
;
MDEF60: CLR (LOADF).POHEAT
J MDEFED
;
;---------------------------------------------------
;-------- DEFROST END CALL ROUTINE ---------------
;---------------------------------------------------
DEFEND: CLR (LOADF).POHEAT ;DEFROST_HEATER OFF
CLR (DEFFLAG).DEFF ;DEFROST_FLAG CLEAR
LD (CD7MIN),0x07 ;COMP_DELAY_TIME(7MIN) SETTING
LDW (DEFCNT),DEF7HR ;DEFROST_TIME(7HR) SETTING
LD (DEF_F12),0x0C ;FAN DELAY TIME(12MIN) AFTER DEFROST_ENDING
LD (DEF_F17),0x11 ;FAN HIGH RPM DELAY TIME(17MIN) AFTER DEFROST_ENDING
LDW (DODEFCNT),DEF_VAR ;º¯µ¿Á¦»ó 33HR SETTING
LD (AD_R20M),0 ;º¯µ¿Á¦»ó µµ¾îOPENÈÄ 20ºÐ º¯¼ö RESET
;
LD (DEFBKUP),0 ;DEFCNT SET VALUE BACK-UP at defrost END
;
CLR (DEFFLAG).DCEND_F
CLR (DEFFLAG).DCT_F
;
CLR (S_F_F).RLOAD1 ;Ãʱâ 3½Ã°£ '°­'NOTCH ¿îÀü FLAG CLEAR
;
LD (SINCEDEF),240 ;Á¦»ó ÈÄ 4hr FULL ³Ã·Â ¿îÀü <100220>
;
DEFED1: RET
;---------------------------------------------------
MDEFED: NOP
;-------------------------------------------------------
;------- LOW TEMP LAMP PROGRESS ROUTINE ----------------
;-------------------------------------------------------
MRLT00: CMP (ERR_1ST),0 ;ERROR MASTER FLAG SET = ?
J NE,MRLT50
;
LD C,(RTJG)
;
CMP C,0x07 ;RT = 8~12.5 C ?
J EQ,MRLT25
;
CMP C,0x08 ;RT = 8 C BELOW?
J EQ,MRLT25
;
J MRLT50
;
MRLT25:
CLR (S_F_F).RLOAD1 ;Ãʱâ '°­'NOTCH ¿îÀü ÇØÁ¦ ;<100108>
;
TEST (DOFLAG).DO_R ;R-DOOR OPEN ? <090115>
J F,MRLT50
;
TEST (LOADF).POCOMP ;COMP ON ?
J F,MRLT50
;
TEST (DEFFLAG).DEFF ;DEFROST ?
J F,MRLT50
;
CMP (HLAMP5M),0 ;LAMP 5MIN OVER = ?
J NE,MRLTED
;
LD (HLAMP5M),0x05 ;LAMP 5MIN SET
;
CPL (LOADF2).POLAML ;LOW TEMP LAMP ON or OFF
J MRLTED
;
MRLT50: CLR (LOADF2).POLAML ;LOW TEMP LAMP OFF
;
MRLTED: NOP
;**********************************************
;**********************************************
;******* *******
;******* COMP FUNCTION CONTROL *******
;******* *******
;**********************************************
;**********************************************
MSF00: TEST (ERRFLAG).RTSERR ;R_SENSOR ERROR = ?
J F,MSFED
;
;---- SPECIAL DEFROST CONTROL --------
LD C,(RTJG)
;
CMP C,0x01 ;RT = 38 C OVER ?
J EQ,MSF41
;
CMP C,0x02 ;RT = 34~38 C ?
J EQ,MSF42
;
CMP C,0x03 ;RT = 27~34 C ?
J EQ,MSF43
;
CMP C,0x04 ;RT = 22~27 C OVER ?
J EQ,MSF44
;
CMP C,0x05 ;RT = 18~22 C ?
J EQ,MSF45
;
CMP C,0x06 ;RT = 12.5~18 C ?
J EQ,MSF46
;
CMP C,0x07 ;RT = 8~12.5 C ?
J EQ,MSF47
;
CMP C,0x08 ;RT = 8 C BELOW ?
J EQ,MSF48
;
J MSFED
;---------------------------------------;
MSF41: LD DE,(CTL_R)
SUB DE,2 ;-1.0C TEMP' DOWN
LD (CTL_R),DE ;R_room_current_control_value LOAD
J MSFED
;
MSF42: LD DE,(CTL_R)
SUB DE,1 ;-0.5C TEMP' DOWN
LD (CTL_R),DE ;R_room_current_control_value LOAD
J MSFED
;
MSF43: LD DE,(CTL_R)
SUB DE,0 ; 0.0C TEMP' DOWN
LD (CTL_R),DE ;R_room_current_control_value LOAD
J MSFED
;
MSF44: LD DE,(CTL_R)
SUB DE,0 ; 0.0C TEMP' DOWN
LD (CTL_R),DE ;R_room_current_control_value LOAD
J MSFED
;---------------------------------------;
MSF45: LD DE,(CTL_R)
SUB DE,2 ;-1.0C TEMP' DOWN
LD (CTL_R),DE ;R_room_current_control_value LOAD
J MSFED
;
MSF46: LD DE,(CTL_R)
;;;;; SUB DE,1 ;-0.5C TEMP' DOWN
;;;;; SUB DE,3 ;-1.5C TEMP' DOWN ;100405
SUB DE,4 ;-2.0C TEMP' DOWN ;100407
LD (CTL_R),DE ;R_room_current_control_value LOAD
J MSFED
;
MSF47: LD DE,(CTL_R)
;;;;; ADD DE,3 ;+1.5C TEMP' UP
;;;;; ADD DE,1 ;+0.5C TEMP' UP ;100405
ADD DE,2 ;+1.0C TEMP' UP ;100407
LD (CTL_R),DE ;R_room_current_control_value LOAD
J MSFED
;
MSF48: LD DE,(CTL_R)
;;;;; ADD DE,5 ;+2.5C TEMP' UP
;;;;; ADD DE,3 ;+1.5C TEMP' UP ;100405
ADD DE,2 ;+1.0C TEMP' UP ;100407
LD (CTL_R),DE ;R_room_current_control_value LOAD
J MSFED
;
MSFED: NOP
;*************************************************
;*************************************************
;****** ******
;****** COMP CONTROL ******
;****** ******
;*************************************************
;*************************************************
MF00: TEST (LOADF).POHEAT ;DEFROST_HEATER F SET ?
J F,MF03
;
CMP (CD7MIN),0 ;COMP 7MIN DELAY(AFTER COMP OFF) TIME OVER ?
J EQ,MF05
;
MF03: CLR (LOADF).POCOMP ;COMP OFF
J MFED
;
MF05: TEST (ERRFLAG).RSERR ;R_SENSOR ERROR = ?
J T,MF10
;
;********* R_SENSOR ERROR CONTROL *********
CMP (RERR15M),0 ;ERROR 15MIN OVER = ?
J NE,MFED
;
LD (RERR15M),0x0F ;ERROR 15MIN SET
;
CPL (LOADF).POCOMP ;COMP STATUS COMPLEMENTARY
J MFED
;==============================================
;--- SOJUN MODE COMP ON/OFF CONTROL ROUTINE ---
;==============================================
MF10:
;===========================================
;===== Q/R FLAG SET JUDGEMENT ======
;===========================================
;--------------------------------------- <080729>
MF20: TEST (S_F_F).FLOAD ;F-LOAD FLAG SET?
J F,MF25 ;COMP ON
;
TEST (QRFLAG).QR_OPR ;Q/R OPERATION FLAG SET ?
J T,MF30
;--------------------------------------- <080729>
;===========================================
;===== FDF FLAG SET JUDGEMENT ======
;===========================================
MF25: SET (LOADF).POCOMP ; << COMP ON >>
J MFED
;
;===========================================
;--- GENERAL COMP ON/OFF CONTROL ROUTINE ---
;===========================================
MF30: TEST (LOADF).POCOMP ;COMP ON ?
J T,MF50
;==== P/G INSERT (DEEP COOLING FUNCTION) =====
TEST (DEFFLAG).DCT_F ;DEEP COOL TOGGLE FLAG SET = ?
J T,MF35
;
;===== DEEP COOL OFF CONDITION JUDGEMENT =====
TEST (S_F_F).RLOAD2 ;ºÎÇÏ´ëÀÀ2 ÅõÀԵǾú´Â°¡?
J T,MF31
;
LD HL,(RLTEMP) ;<090511> RT ¿Âµµ¿¡ µû¶ó ºÎÇÏ´ëÀÀ ½Ã°£,¿Âµµ º¯È­
;LD HL,R6NOTCH ;'°­'NOTCH-1.0¡É ³Ã°¢
;SUB HL,2 ;'°­'NOTCH-2.0¡É ³Ã°¢
SUB HL,4 ;<080421>
J MF32
;
;------------------------------;
MF31: LD HL,(CTL_R) ;ÇöÀçNOTCH-1.0¡É ³Ã°¢
;SUB HL,2 ;ÇöÀçNOTCH-2.0¡É ³Ã°¢
SUB HL,4 ;<080421>
;-------------------------------------------
;****** R_SENSOR : R NOTCH DATA CMPR ******
MF32:
LD A,(RSDT)
CMP A,(HL) ;(R-NOTCH) - (HL)
;;; ;(R_SENSOR) < (R_CONTENT')-->CF=1
;;; ;(R_SENSOR) >= (R_CONTENT')-->CF=0 :R_CON'
J CS,MFED ;IF CF=1 ===> JUMP
;
SET (DEFFLAG).DCEND_F
;
J MFED
;===========================================
;===== COMP OFF CONDITION JUDGEMENT ======
;===========================================
MF35: TEST (S_F_F).A_Q_R_F ;ÃʱâÀü¿ø ÅõÀÔ ÈÄ Ã¹ ´Ü¼Ó ÀüÀΰ¡?
J T,MF36
;
LD HL,R6NOTCH ;ÃʱâÀü¿ø ÅõÀÔ ½Ã '°­'NOTCH-2.0¡É ³Ã°¢
SUB HL,4 ;<080421>
J MF40
;-------------------------------------------
MF36: TEST (S_F_F).RLOAD1 ;Ãʱâ '°­'NOTCH ºÎÇÏ´ëÀÀ1Àΰ¡?
J T,MF37
;
LD HL,R6NOTCH ;'°­'NTOCH-0.5¡É ³Ã°¢
SUB HL,1
J MF40
;-------------------------------------------
MF37: TEST (S_F_F).RLOAD2 ;ºÎÇÏ´ëÀÀ2 ÅõÀԵǾú´Â°¡?
J T,MF38
;
LD HL,(RLTEMP) ;<090511> RT ¿Âµµ¿¡ µû¶ó ºÎÇÏ´ëÀÀ ½Ã°£,¿Âµµ º¯È­
;LD HL,R6NOTCH
SUB HL,1 ;ºÎÇÏ´ëÀÀ¿Âµµ-0.5¡É COMP OFF
J MF40
;
;------------------------------;
MF38: LD HL,(CTL_R)
SUB HL,1
;-------------------------------------------
;****** R_SENSOR : R NOTCH DATA CMPR ******
MF40:
LD A,(RSDT)
CMP A,(HL) ;(R-NOTCH) - (HL)
; CMP (MARSDT),(HL) ;(R-NOTCH) - (HL) <080902><090114_2>
;;; ;(R_SENSOR) < (R_CONTENT')-->CF=1
;;; ;(R_SENSOR) >= (R_CONTENT')-->CF=0 :R_CON'
J CS,MFED ;IF CF=1 ===> JUMP
;
CLR (LOADF).POCOMP ; << COMP OFF >>
LD (CD7MIN),0x07 ;COMP 7MIN DELAY TIME SET
CLR (S_F_F).A_Q_R_F ;INITIAL AUTO_QUICK_REF'_FLAG SET
;
J MFED
;
;===========================================
;===== COMP ON CONDITION JUDGEMENT =======
;===========================================
MF50: TEST (S_F_F).RLOAD1 ;Ãʱ⠰­NOTCH ºÎÇÏ´ëÀÀ1Àΰ¡?
J T,MF55
;
LD HL,R6NOTCH ;°­NTOCH ³Ã°¢
ADD HL,1
J MF60
;-------------------------------------------
MF55: TEST (S_F_F).RLOAD2 ;ºÎÇÏ´ëÀÀ2 ÅõÀԵǾú´Â°¡?
J T,MF56
;
LD HL,(RLTEMP) ;<090511> RT ¿Âµµ¿¡ µû¶ó ºÎÇÏ´ëÀÀ ½Ã°£,¿Âµµ º¯È­
;LD HL,R6NOTCH
ADD HL,1 ;ºÎÇÏ´ëÀÀ¿Âµµ+0.5¡É COMP ON
J MF60
;
;------------------------------;
MF56: LD HL,(CTL_R) ;r_room_current_control_point_value LOAD
ADD HL,1 ; R-NOTCH + (0.5 C)
;-------------------------------------------
;****** R_SENSOR : R NOTCH DATA CMPR ******
MF60:
LD A,(RSDT)
CMP A,(HL) ;(R-NOTCH) - (HL)
;;; ;(R_SENSOR) < (R_UNSATIS') -->CF=1 :COMP_ON
;;; ;(R_SENSOR) >= (R_UNSATIS') -->CF=0
J CC,MFED ;IF CF=0 ===> JUMP
;
MF65: SET (LOADF).POCOMP ; << COMP ON >>
;091110 Á¦»ó Áß Á¤Àü ÈÄ º¹±Í ½Ã, °ð¹Ù·Î Á¦»óÅõÀÔÇϱâÀ§ÇØ DEEP COOL½Ã°£ SET À§Ä¡º¯°æ
TEST (DEFFLAG).DCT_F ;DEEP COOL TOGGLE FLAG SET = ?
J F,MFED
;
LD (DCOOLCNT),30 ;DEEP COOL Ãß°¡¿îÀü 30ºÐ SET
;
MFED: NOP
;*************************************************
;*************************************************
;****** ******
;****** COMP COOL POWER CONTROL ******
;****** ******
;*************************************************
;*************************************************<100220>
COOL_PWR_00:
LD HL,INIHALF ;100319 Ãʱâ 10ºÐ LINEAR COMP HALF-STROKE ¿îÀü
CMP (HL),0
J EQ,COOL_PWR_05
;
LD (COOL_POWER),0
J COOL_PWR_90
;
COOL_PWR_05:
TEST (S_F_F).A_Q_R_F ;INITIAL AUTO_QUICK_REF'_FLAG SET
J F,COOL_PWR_FULL
;
TEST (S_F_F).RLOAD1 ;R1_LOAD FLAG SET = ?
J F,COOL_PWR_FULL
;
TEST (S_F_F).RLOAD2 ;R2_LOAD_COMPENTATION FLAG SET = ?
J F,COOL_PWR_FULL
;
TEST (S_F_F).FLOAD ;F_LOAD FLAG SET = ?
J F,COOL_PWR_FULL
;
LD HL,SINCEDEF
CMP (HL),0 ;SINCE DEFROST END, 4HR OVER ?
J NE,COOL_PWR_FULL
;
TEST (QRFLAG).QR_OPR ;Q/R OPERATION FLAG SET ?
J F,COOL_PWR_FULL
;
;;;;; LD HL,CMP3HR
;;;;; CMP (HL),120 ;Continuous COMP ON TIME > 1hr ?
;;;;; J CS,COOL_PWR_FULL
;
J COOL_PWR_10
;
;-------±âº» ³Ã·Â ¼³Á¤
COOL_PWR_10:
CMP (RTJG),2 ;RT = 38 C OVER?
J CS,COOL_PWR_RTH ; RTJG > 2
;
CMP (RTJG),4 ;RT = 30 C OVER?
J CS,COOL_PWR_RTM ; RTJG > 4
;
J COOL_PWR_RTL
;
;--------------- °í¿Â ------------------
COOL_PWR_RTH:
CMP (RN_NOW),TEMP4 ;R-NOTCH > 4 C ?
J CS,COOL_PWR_RTH_RL
;
CMP (RN_NOW),TEMP0 ;R-NOTCH > 2 C ?
J CS,COOL_PWR_RTH_RM
;
J COOL_PWR_RTH_RH
;
COOL_PWR_RTH_RL: ;°í¿Â ¾àNOTCH
LD (COOL_POWER),COOL_MAX
J COOL_PWR_50
;
COOL_PWR_RTH_RM: ;°í¿Â ÁßNOTCH
LD (COOL_POWER),COOL_MAX
J COOL_PWR_50
;
COOL_PWR_RTH_RH: ;°í¿Â °­NOTCH
LD (COOL_POWER),COOL_MAX
J COOL_PWR_50
;
;--------------- Áß¿Â ------------------
COOL_PWR_RTM:
CMP (RN_NOW),TEMP4 ;R-NOTCH > 4 C ?
J CS,COOL_PWR_RTM_RL
;
CMP (RN_NOW),TEMP0 ;R-NOTCH > 0 C ?
J CS,COOL_PWR_RTM_RM
;
J COOL_PWR_RTM_RH
;
COOL_PWR_RTM_RL: ;Áß¿Â ¾àNOTCH
LD (COOL_POWER),COOL_MID
J COOL_PWR_50
;
COOL_PWR_RTM_RM: ;Áß¿Â ÁßNOTCH
LD (COOL_POWER),COOL_MID
J COOL_PWR_50
;
COOL_PWR_RTM_RH: ;Áß¿Â °­NOTCH
LD (COOL_POWER),COOL_MID
J COOL_PWR_50
;
;--------------- Àú¿Â ------------------
COOL_PWR_RTL:
CMP (RN_NOW),TEMP4 ;R-NOTCH > 4 C ?
J CS,COOL_PWR_RTL_RL
;
CMP (RN_NOW),TEMP0 ;R-NOTCH > 0 C ?
J CS,COOL_PWR_RTL_RM
;
J COOL_PWR_RTL_RH
;
COOL_PWR_RTL_RL: ;Àú¿Â ¾àNOTCH
LD (COOL_POWER),COOL_MIN
J COOL_PWR_50
;
COOL_PWR_RTL_RM: ;Àú¿Â ÁßNOTCH
LD (COOL_POWER),COOL_MIN
J COOL_PWR_50
;
COOL_PWR_RTL_RH: ;Àú¿Â °­NOTCH
LD (COOL_POWER),COOL_MIN
J COOL_PWR_50
;---------------------------------------
;
COOL_PWR_50:
LD A,(C_PWR_OLD) ;100324 COMP ON Áß¿¡´Â ³Ã·Â ³·ÃßÁö ¾ÊÀ½.
CMP A,(COOL_POWER)
J CS,COOL_PWR_70
;
TEST (LOADF).POCOMP
J T,COOL_PWR_70
;
LD (COOL_POWER),A
;
COOL_PWR_70:
CMP (COOL_POWER),COOL_MAX
J CS,COOL_PWR_90 ;COOL_MAX(FULL STROKE)º¸´Ù Å©¸é COOL_MAX SET
;
COOL_PWR_FULL:
LD (COOL_POWER),COOL_MAX ;Max. POWER
;
COOL_PWR_90:
LD A,(COOL_POWER)
LD (C_PWR_OLD),A
;
COOL_PWR_END: NOP
;
;*************************************************
;*************************************************
;****** ******
;****** F A N C O N T R O L ******
;****** ******
;*************************************************
;*************************************************
;=================================================;100308
; F-FAN CHECK CONTROL
;=================================================
;
FLOCK0: TEST (LOADF).POFFAN ;F_Fan On? ;100408
J T,FLOCK80
; ;3ÃÊ DELAY
CMP (F_START3S),0 ;FG 353RPM ÀÌÇÏ?
J NE,FLOCKED
;
;---------------------------------------;»óÇѼ³Á¤
LD HL,FFGCNT
LD WA,(HL) ;FG=RPM/(2*(60/18))
CMP WA,600 ;FG 353RPM ÀÌÇÏ?
J CC,FLOCK10 ;6003
J CS,FLOCKED
;
;---- F-FAN LOCK DETECT
LD (FLOCKCNT),0 ;F-LOCK COUNTER CLEAR

CLR (LOADF).POFFAN ;F_Fan Off ;100408
SET (ERRFLAG).FFANERR
;
CMP (ERR_1ST),0
J NE,FLOCK20 ;fan error¼öÁ¤
;
SET (ERR_1ST).FFANERR
;
LD (ERR3HR),180 ;100320 HIDDEN ERROR
;
FLOCK20:
LD (FLOK30M),30 ;30min Set(Fan_ERR)
J FLOCKED
;
FLOCK50:
LD (FLOK15S),150 ;15sec Set
LD (FLOCKCNT),0 ;F-LOCK COUNTER CLEAR
J FLOCKED
;
FLOCK80:
LD (FLOK15S),150 ;15sec Set
LD (F_START3S),30 ;3SEC SET
;
FLOCKED:NOP
;
;=================================================
; F-FAN CHECK CONTROL
;=================================================
;
FFAN00:
FFAN02:
TEST (ERRFLAG).FFANERR ;BLDC F_Fan Error ?
J T,FFAN06
;
CMP (FLOK30M),0 ;After Lock 30min Over ?
J NE,FFAN04 ;BLDC F_FAN OFF
;
CMP (FCHK20S),0 ;Lock Free 20sec Over ?
J NE,FFAN05 ;BLDC F_FAN ON
;
CMP (FLOCKCNT),0 ;F-FAN LOCK COUNTER = 0 ?
J NE,FFAN08
;
TEST (ERR_1ST).FFANERR ;F_Fan First Error ?
J F,START
;
CLR (ERRFLAG).FFANERR ;Error F. Clear
J MFAN00
;
FFAN04:
LD (FCHK20S),200 ;20sec Set
J FFANOFF
;---
FFAN05:
LD (FLOK10S),100 ;10sec Set
J FFANON
;; ;Fan_ERR
;====================================================
FFAN06:
CMP (FLOCKCNT),0 ;F-LOCK COUNTER = 0 ?
J NE,FFAN08
;
TEST (TSTFLAG).TSTMAST ;Test Mode ?
J F,FCON0
J MFAN00
;
FFAN08:
CMP (FLOK10S),0 ;10sec Over?
J EQ,FFANON
J FFANOFF
;
;
;=================================================
; F-FAN OPERATING CONTROL
;=================================================
MFAN00: CMP (ERR_1ST),0 ;ERROR MASTER FLAG SET = ?
J EQ,MFAN02
;
CLR (FANFLAG).FHIGH ;FAN 1750RPM MODE CLR
J MFAN100
;
MFAN02: CMP (LQC30S),0 ;LQC CHECK 30S SET = ?
J EQ,MFAN50
;
TEST (LQCFLAG).LQC_TOG ;FAN RPM TOGGLE FLAG SET = ?
J F,MFAN100
;
SET (LQCFLAG).LQC_TOG ;FAN RPM TOGGLE FLAG SET
;
TEST (FANFLAG).FHIGH ;FAN HIGH RPM MODE SET = ?
J F,MFAN05
;
SET (FANFLAG).FHIGH ;FAN HIGH RPM MODE SET
J MFAN100
;
MFAN05: CLR (FANFLAG).FHIGH ;FAN LOW RPM MODE SET
J MFAN100
;
MFAN50: CLR (LQCFLAG).LQC_TOG ;FAN RPM TOGGLE FLAG CLR
;
TEST (S_F_F).A_Q_R_F ;INITIAL AUTO QUICK REF' FLAG SET = ?
J F,MFAN55
;
TEST (S_F_F).RLOAD1 ;R-ROOM LOAD COMPENSATION MODE SET = ?
J F,MFAN55
;
TEST (S_F_F).RLOAD2 ;R-ROOM LOAD COMPENSATION MODE SET = ?
J F,MFAN55
;
LD HL,SINCEDEF ;SINCE DEFROST END, 4HR OVER ? ;100308
CMP (HL),0
J NE,MFAN55
;
CMP (COOL_POWER),COOL_MAX ;Max. Power? ;100308
J CC,MFAN55
;
TEST (QRFLAG).QR_OPR ;Q/R OPERATION FLAG SET ?
J T,MFAN57
;
MFAN55: CMP (DEF_F17),0
J NE,MFAN57
;
SET (FANFLAG).FHIGH ;FAN HIGH RPM MODE SET
J MFAN100
;
MFAN57: CLR (FANFLAG).FHIGH ;FAN LOW RPM MODE SET
;
;========== DOOR OPEN: LOW RPM FAN ON 60s =======<100105>
MFAN100:TEST (LOADF).POHEAT ;DEF-HEATER ON = ?
J F,FFANOFF ;F-FAN OFF
;
CMP (DEF_F12),0 ;DEF DELAY 12 MIN = 0 ?
J NE,FFANOFF ;F-FAN OFF
;
;---------- DOOR CLOSE½Ã F-FAN ON 60s SET -------
MFAN105:
TEST (DOFLAG).DO_MAST ;DOOR OPEN ?
J F,MFAN107
;
LD (FANON60S),60 ;DOOR OPEN½Ã F-FAN ON 60s SET
;
J MFAN120
;
;---------- DOOR OPEN½Ã RT>10¡ÉÀ̸é 60ÃÊ°£ LOW RPM F-FAN ON -------
MFAN107:
LD C,(RTJG)
;
CMP C,0x07 ;RT = 8~12.5 C ?
J EQ,FFANOFF ;F-FAN OFF
;
CMP C,0x08 ;RT = 8 C BELOW?
J EQ,FFANOFF ;F-FAN OFF
;
CMP (FANON60S),0 ;60s passed?
J EQ,FFANOFF ;F-FAN OFF
;
J FRPM_M ;100308
;
;---------- COMP¿¬µ¿ F-FAN CONTROL -----;100308 100319 COMP OFF ÈÄ F-FAN Ãß°¡¿îÀü 60ÃÊ
MFAN120:
TEST (LOADF).POCOMP ;If Comp is ON, F_FAN ON
J T,MFAN130
;
LD (FANONMOR),60 ;Additional F-FAN ON time SET
;
J FFANON
;
MFAN130:
CMP (FANONMOR),0 ;Additional F-FAN ON time passed?
J NE,FRPM_M ;F-FAN LOW RPM ON
;
;******* F-FAN ON/OFF CONTROL *************
FFANOFF:
CLR (LOADF).POFANH ;F-FAN MOTOR OFF SET
CLR (LOADF).POFANL
;
CLR (LOADF).POFFAN ;F-FAN(DC-BLDC) OFF
;
J MFANED
;
FFANON:
CMP (ERR_1ST),0 ;ERROR MASTER FLAG SET = ?
J EQ,FRPM00
;
CLR (FANFLAG).FHIGH ;100417 FAN 1750RPM MODE CLR
;
;******* F-FAN RPM CONTROL *************
FRPM00:
TEST (FANFLAG).FHIGH ;F-FAN HIGH RPM MODE ?
J T,FRPM_M
;
J FRPM_H
;
;;;;;FRPM_L:
;;;;; LD (F_RPM),FFAN_L
;;;;; J FRPM100
;
FRPM_M:
CLR (LOADF).POFANH
SET (LOADF).POFANL ;F-FAN LOW RPM ON
;
LD (F_RPM),FFAN_M
;
J FRPM100
;
FRPM_H:
SET (LOADF).POFANH ;F-FAN HIGH RPM ON
CLR (LOADF).POFANL
;
LD (F_RPM),FFAN_H
;
FRPM100:
SET (LOADF).POFFAN ;F-FAN(DC-BLDC) ON
;---------------------------------------
;
MFANED: NOP
;
;
;
;
;=================================================
; F-FAN DUTY CONTROL
;=================================================
;
FCON0: TEST (LOADOUT).POFFAN ;F_Fan Off ? ;100408
J F,FCON10
;
LD (FDUTY),0x10 ;100417 F_FAN Duty Clear
;;;;; CLR (GENFLAG2).DUT_FTG ;F_FAN DUTY INC' TG CLR
J FCONED
;
FCON10:
;;;;; TEST (GENFLAG2).DUT_FTG ;F_FAN DUTY INC' TG CLR
;;;;; J F,FCON15
;;;;;;
;;;;; SET (GENFLAG2).DUT_FTG ;F_FAN DUTY INC' TG SET
;;;;; J FCONED
;;;;;;
CMP (FFANDUTY1S),0
J EQ,FCON15
;
J FCONED
;
FCON15:
;;;;; CLR (GENFLAG2).DUT_FTG ;F_FAN DUTY INC' TG CLR
;--------------------------------------------------------------
LD A,(FDUTY)
;
CMP A,(F_RPM)
J CS,FCON20 ;ÇöÀç < ¸ñÇ¥ ?
;
J EQ,FCONED ;ÇöÀç = ¸ñÇ¥ ?
;
J FCON30 ;ÇöÀç > ¸ñÇ¥ ?
;------------------------------------------------------------
FCON20:
;;;;;;;; TEST (FANDELY).FDELAY ;»ó½Â½Ã°£ Áö¿¬(071023)
;;;;;;;; J T,FCON20_1
;;;;;;;;;
;;;;;;;; CLR (FANDELY).FDELAY
;;;;;;;; J FCONED
;;;;;;;;;
;;;;;;;;FCON20_1:
;;;;;;;; SET (FANDELY).FDELAY
;----------------------------------------------------------
ADD A,1 ;Duty ++
CMP A,0xFA
J CC,FCON21 ;ÇöÀç >= F0
;
LD (FDUTY),A ;ÇöÀç Duty Save
LD (FFANDUTY1S),6
J FCONED
;
FCON21:
LD (FDUTY),0xFA ;Full Duty Set
LD (FFANDUTY1S),6
J FCONED
;
FCON30:
CMP A,0xFA
J CS,FCON31 ;ÇöÀç < F0
;
LD (FDUTY),0xFA ;ÇöÀç Duty <- EF
LD (FFANDUTY1S),6
J FCONED
;
FCON31:
SUB A,1 ;Duty--
LD (FDUTY),A ;ÇöÀç Duty Save
LD (FFANDUTY1S),6
;
FCONED: NOP
;
;
;
;
;
;
;
;=================================================;100308
; C-FAN CHECK CONTROL
;=================================================
;
CLOCK0:
TEST (LOADF).POCFAN ;C-FAN On? ;100408
J T,CLOCK80
;
CMP (C_START3S),0 ;FG 353RPM ÀÌÇÏ?
J NE,CLOCKED
;
;PGM RECHECK
;---------------------------------------;»óÇѼ³Á¤
LD HL,CFGCNT
LD WA,(HL) ;FG=RPM/(2*(60/18))
CMP WA,600 ;FG 353RPM ÀÌÇÏ?
J CC,CLOCK10 ;600

Comments