RETL 0X2B ;KEY_0
RETL 0X10 ;KEY_3D
RETL 0X18 ;KEY_MUTE
RETL 0X11 ;KEY_VOCAL
RETL 0X16 ;KEY_VOL+
RETL 0X15 ;KEY_VOL-
RETL 0X28 ;KEY_TUNE FWD
RETL 0X2A ;KEY_TUNE REV
RETL 0X22 ;KEY_STOP
RETL 0X31 ;KEY_<|
RETL 0X21 ;KEY_|>
RETL 0X29 ;KEY_OK
RETL 0X2E ;KEY_TUNER
RETL 0X20 ;KEY_AUX-1
RETL 0X23 ;KEY_AUX-2
RETL 0X17 ;KEY_DVD
ORG 0X050
MAIN:
;*********************初始化寄存器**********************
MOV A,@0B00000000
IOW IOCE0
MOV A,@0B11111101
IOW IOCD0
MOV A,@0B00000010
IOW IOC60
MOV A,@0B00000001
MOV PORT6,A
MOV A,@0B00000001
IOW IOCF0
CLR FLAG
CLR TEMPCODE
CLR COUNTER
CLR CODE1
CLR CODE2
CLR CODE3
CLR CODE4
MOV A,@0B10010000
MOV USER_CODE,A
;*********************扫描引导码**********************
SCAN_LEAD_CODE:
JBC PORT6,INPUT
JMP SCAN_LEAD_CODE
CLR FLAG
CLR REPEAT_COUNTER
CLR TEMPCODE
CALL JUDGE_START_CODE
JBS FLAG,LEAD
JMP SCAN_LEAD_CODE
;*********************接收数据**********************
RECEIVE_DATA_PROCEE:
CLR TEMPCODE
CALL RECEIVE_DATA
MOV A,TEMPCODE
MOV CODE1,A
MOV A,@0 ;判断用户码是否是00
BC PSW,Z
XOR A,CODE1
JBS PSW,Z
JMP SCAN_LEAD_CODE
CLR TEMPCODE
CALL RECEIVE_DATA
MOV A,TEMPCODE
MOV CODE2,A
MOV A,@0XFF ;判断用户码是否是FF
BC PSW,Z
XOR A,CODE2
JBS PSW,Z
JMP SCAN_LEAD_CODE
CLR TEMPCODE
CALL RECEIVE_DATA
MOV A,TEMPCODE
MOV CODE3,A
CLR TEMPCODE
CALL RECEIVE_DATA
MOV A,TEMPCODE
MOV CODE4,A
CLR FLAG
;*********************发送数据**********************
SEND_DATA_PROCEE:
JBS USER_CODE,6 ;ST码的次高位反相
JMP COM_1 ;=0
JMP COM_2 ;=1
COM_1:
BS USER_CODE,6
JMP VVV
COM_2:
BC USER_CODE,6
JMP VVV
VVV:
CALL TABLE_CONVER ;调用码表转换子程序
MOV CODE3,A
REP:
CALL TRANSMIT_DATA
本文关键字:程序 义隆单片机,单片机-工控设备 - 义隆单片机
上一篇:EM78系列8位单片机指令集