📄 sky1.asm
字号:
GOTO KEY_1
KEY36_42: BCR PORTA,PA5
MOVIA 023H
MOVAR KEY_NUM
MOVR PORTB,R
IORIA 001H
SUBIA 0FFH
BTRSC STATUS,Z
GOTO CHECK_KEY
KEY_1: CLRR KEY_R
BTRSS PORTB,PB1
GOTO END_KEY
KEY_2: MOVIA 001H
MOVAR KEY_R
BTRSS PORTB,PB2
GOTO END_KEY
KEY_3: MOVIA 002H
MOVAR KEY_R
BTRSS PORTB,PB3
GOTO END_KEY
KEY_4: MOVIA 003H
MOVAR KEY_R
BTRSS PORTB,PB4
GOTO END_KEY
KEY_5: MOVIA 004H
MOVAR KEY_R
BTRSS PORTB,PB5
GOTO END_KEY
KEY_6: MOVIA 005H
MOVAR KEY_R
BTRSS PORTB,PB6
GOTO END_KEY
KEY_7: MOVIA 006H
MOVAR KEY_R
BTRSC PORTB,PB7
GOTO CHECK_KEY
END_KEY:
MOVR KEY_R,R
ADDAR KEY_NUM,W
MOVIA 022H ;SAT键K34
SUBAR KEY_NUM,R
BTRSS STATUS,Z
GOTO NEXT_1
BSR FLAG,0
GOTO CHECK_KEY
NEXT_1: MOVIA 021H ;TV键K35
SUBAR KEY_NUM,R
BTRSS STATUS,Z
GOTO COMPARE_FLAG
BCR FLAG,0
GOTO CHECK_KEY
COMPARE_FLAG: BTRSC FLAG,0
GOTO TV_MODE
;------------------------------------------------------------------
SAT_MODE: MOVR KEY_NUM,R
LCALL TABLE1
MOVAR DATA3
COMR DATA3,R
MOVAR DATA4
MOVIA 020H
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO CHECK_KEY
GOTO TRANSMIT_PHILIPS
;------------------------------------------------------------------
TV_MODE:
;MOVR KEY_R,R
;ADDAR KEY_NUM,W
;MOVR KEY_NUM,R
;LCALL TABLE1
;MOVAR DATA3
MOVIA 000H
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_0C
MOVIA 00EH
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_10
MOVIA 010H
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_20
MOVIA 011H
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_11
MOVIA 014H
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_21
MOVIA 015H
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_01
MOVIA 016H
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_02
MOVIA 017H
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_03
MOVIA 018H
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_04
MOVIA 019H
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_05
MOVIA 01AH
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_06
MOVIA 01BH
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_07
MOVIA 01CH
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_08
MOVIA 01DH
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_09
MOVIA 01EH
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_0D
MOVIA 01FH
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_00
MOVIA 020H
SUBAR KEY_NUM,R
BTRSC STATUS,Z
GOTO SET_DATA_0A
GOTO CHECK_KEY
SET_DATA_0C:
MOVIA 00CH
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_10:
MOVIA 010H
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_20:
MOVIA 020H
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_11:
MOVIA 011H
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_21:
MOVIA 021H
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_01:
MOVIA 001H
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_02:
MOVIA 002H
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_03:
MOVIA 003H
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_04:
MOVIA 004H
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_05:
MOVIA 005H
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_06:
MOVIA 006H
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_07:
MOVIA 007H
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_08:
MOVIA 008H
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_09:
MOVIA 009H
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_0D:
MOVIA 00DH
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_00:
MOVIA 000H
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_0A:
MOVIA 00AH
MOVAR DATA3
GOTO SET_DATA_1
SET_DATA_1:
BTRSS FLAG_1,0
GOTO NEXT_DATA_1
MOVIA 0C0H
MOVAR DATA1
GOTO TRANSMIT_1
NEXT_DATA_1:
MOVIA 0E0H
MOVAR DATA1
GOTO TRANSMIT_1
TRANSMIT_1: BTRSS CLASS,0
GOTO TRANSMIT
WAIT_FRAME: MOVIA 0BFH
SUBAR TMR0,R
BTRSS STATUS,C
GOTO WAIT_FRAME
TRANSMIT: CLRR TMR0
MOVIA 046H
OPTION
TRANS_DATA: MOVR DATA1,R ;Data
MOVAR SEND_DATA
MOVIA 008H
MOVAR SEND_BIT
LCALL TRANS_ONE_BIT_3010
MOVIA 006H
MOVAR SEND_BIT
RLR DATA3,1
RLR DATA3,0
MOVAR SEND_DATA
LCALL TRANS_ONE_BIT_3010
END_TRANS: MOVIA 004H
MOVAR DEL_1
GOTO END_1
END_1: DECRSZ DEL_1,W
GOTO END_1
MOVIA 020H
IOST PCON
BSR CLASS,0
GOTO CHECK_KEY
;---------------------------------------------------------------------
;---------------------------------------------------------------------
;---------------------------------------------------------------------
TRANSMIT_philips: BTRSS CLASS,0
GOTO TRANSMIT2
WAIT_FRAME2: MOVIA 0BFH
SUBAR TMR0,R
BTRSS STATUS,C
GOTO WAIT_FRAME2
TRANSMIT2: CLRR TMR0
MOVIA 046H
OPTION
TRANS_HEAD: MOVIA 025H ;Head's Low
IOST PCON
MOVIA 038H
MOVAR DEL_1
LCALL DELAY
MOVIA 020H ;Head's High
IOST PCON
MOVIA 0C5H
MOVAR DEL_1
LCALL DELAY
TRANS_DATA2: MOVIA 080H ;Data
MOVAR SEND_DATA
MOVIA 004H
MOVAR SEND_BIT
LCALL TRANS_ONE_BIT_PHILIPS
BTRSC FLAG_1,0
GOTO TTL
MOVIA 020H
IOST PCON
LCALL DELAY_HIG2
MOVIA 025H
IOST PCON
LCALL DELAY_LOW2
GOTO NEXT_TRANS_DATA2
TTL: MOVIA 025H
IOST PCON
LCALL DELAY_LOW2
MOVIA 020H
IOST PCON
LCALL DELAY_HIG2
NEXT_TRANS_DATA2:
MOVIA 027H;004H
MOVAR SEND_DATA
MOVIA 008H
MOVAR SEND_BIT
LCALL TRANS_ONE_BIT_PHILIPS
MOVR DATA3,R
MOVAR SEND_DATA
MOVIA 008H
MOVAR SEND_BIT
LCALL TRANS_ONE_BIT_PHILIPS
END_TRANS2: MOVIA 004H
MOVAR DEL_1
GOTO END_12
END_12: DECRSZ DEL_1,W
GOTO END_12
MOVIA 020H
IOST PCON
BSR CLASS,0
GOTO CHECK_KEY
;-----------------------------------------------------------------------------
ORG 01FFH
GOTO POWER_ON
;-------------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -