?? receving_wnv_07.asm
字號:
SNZ CONTROL_FLAG.7 ;; *** KEY_ON ****
JMP KEYSCAN_EXIT ;;
;;
CLR EMI ;;
CALL DELAY_20MS ;;
SET EMI ;;
;;
SZ PA.3 ;;
JMP KEYSCAN_FORMAT ;;
;;
CLR COUNT_MODE ;;
SET SCAN_TY ;;
;; SET KBOD_ON ;;
SET TON ;;
MODE_ELARN: ;;
SET PA3 ;; *** I/O DELECT ***
SZ PA.3 ;;
JMP RELAY_MODE ;;
MOV A, 008AH ;; B9
SUB A, COUNT_MODE ;;
SZ CY ;;
JMP KEYSCAN_EXIT ;;
;;
CLR SCAN_TY ;; *** ELAN_OK_IN ***
CLR COUNT_MODE ;;
CLR COUNT_LEDG ;;
CLR COUNT_ELARN ;;
;;
CLR KBOD_ON ;;
CLR SCAN_ON ;;
SET ELAN_ON ;;
SET DATA_ON ;;
JMP KEYSCAN_EXIT ;;
;;.........................................;;
RELAY_MODE: ;;
CLR SCAN_TY ;;
SZ RELY_ST ;;
JMP MODE_OFF ;;
SET PA2 ;;
SET RELY_ST ;;
JMP KEYSCAN_DELAY150MS ;;
MODE_OFF: ;;
CLR PA2 ;;
CLR RELY_ST ;;
;;
KEYSCAN_DELAY150MS: ;;
CLR EMI ;;
CLR PB1 ;;
CLR LEDG_ST ;;
CLR COUNT_MODE ;;
CLR COUNT_LEDG ;;
CLR COUNT_ELARN ;;
CALL DELAY_50MS ;;
CALL DELAY_50MS ;;
CALL DELAY_50MS ;;
SET EMI ;;
JMP KEYSCAN_EXIT ;;
;;.........................................;;
MODE_EXIT: ;;
CLR SCAN_TY ;;
KEYSCAN_FORMAT: ;;
SET KBOD_ON ;;
KEYSCAN_EXIT: ;;
NOP ;;
RET ;;
;;
;;*****************************************;;
CONTROL_ELARN: ;;
NOP ;;
SNZ CONTROL_FLAG.1 ;;
JMP CONTROL_ELARN_EXIT ;;
;;
SET EMI ;;
MOV A, 001EH ;;
SUB A, COUNT_LEDG ;;
SZ CY ;;
JMP CONTROL_ELARN_EXIT ;;
;;
CLR COUNT_LEDG ;;
INC COUNT_ELARN ;;
SZ LEDG_ST ;;
JMP LEDG_OFF ;;
LEDG_ON: ;;
SET PB1 ;;
SET LEDG_ST ;;
JMP ELARN_LED ;;
LEDG_OFF: ;;
CLR PB1 ;;
CLR LEDG_ST ;;
;;
ELARN_LED: ;;
MOV A, 0078H ;;
SUB A, COUNT_ELARN ;;
SZ CY ;;
JMP CONTROL_ELARN_EXIT ;;
;;
CLR PB1 ;;
CLR LEDG_ST ;;
CLR COUNT_LEDG ;;
CLR COUNT_ELARN ;;
;;
SET SCAN_ON ;;
CLR ELAN_ON ;;
CLR EXTE_ON ;;
CLR REIN_ON ;;
SET DATA_ON ;;
CLR CMPA_ON ;;
;;
CONTROL_ELARN_EXIT: ;;
RET ;;
;;
;;*****************************************;;
EXTEMBER_END: ;;
NOP ;;
SZ CONTROL_FLAG.3 ;;
JMP EXTEMBER_END_EXIT ;;
EXTEMBER_TIAO: ;;
MOV A, 0053H ;;
MOV COUNT_EXT, A ;;
SNZ PA.1 ;;
JMP EXTEMBER_END_EXIT ;;
EXTEMBER_LOOP0: ;;
CLR EMI ;;
CALL DELAY_50US ;;
SET EMI ;;
SDZ COUNT_EXT ;;
JMP EXTEMBER_LOOP0 ;;
SET PC0 ;;
SET REIN_ON ;;
CLR EIF ;;
; SET EEI ;;
CLR EEI ;;
SET EMI ;;
EXTEMBER_END_EXIT: ;;
NOP ;;
RET ;;
;;
;;*****************************************;;
RECEVING_DATA: ;;
NOP ;;
SNZ CONTROL_FLAG.3 ;;
JMP RECEVING_DATA_EXIT ;;
SNZ CONTROL_FLAG.4 ;;
JMP RECEVING_DATA_EXIT ;;
SZ PA1 ;;
JMP RECEVING_DATA_EXIT ;; *** IR_CHK ********
;;
MOV A, 0060H ;; *** START_CHK *****FA/70=1000US
MOV COUNT_LOOPT, A ;;
START_CHK: ;;
NOP ;;
NOP ;;
NOP ;;
NOP ;;
SZ PA1 ;;
JMP RECEVING_DATA_EXIT ;;
SDZ COUNT_LOOPT ;;
JMP START_CHK ;;
;;
MOV A, 000FH ;;
MOV COUNT_LOOPT, A ;;
MOV A, 0050H ;;
MOV MP0, A ;;
DELE_DATA: ;;
NOP ;;
CLR IAR0 ;;
INC MP0 ;;
SDZ COUNT_LOOPT ;;
JMP DELE_DATA ;;
;;
CLR LEDR_ON ;;
CLR TMRC_ST ;;
CLR TMR ;;
SET TON ;;
SET EMI ;;
WAIT_HIG: ;;
NOP ;;
SZ TMRC_ST ;;
JMP RECEVING_DATA_EXIT ;;
NOP ;;
SNZ PA1 ;;
JMP WAIT_HIG ;;
;;
CLR LEDR_ON ;;
CLR TMRC_ST ;;
CLR TMR ;;
SET TON ;;
SET EMI ;;
WAIT_LOW: ;;
NOP ;;
SZ TMRC_ST ;;
JMP RECEVING_DATA_EXIT ;;
NOP ;;
SZ PA1 ;;
JMP WAIT_LOW ;;
;;
MOV A, 0001H ;;
MOV DELAY_R0, A ;;
MOV A, 0050H ;;
MOV MP0, A ;;
MOV A, 0060H ;;
MOV MP1, A ;;
MOV A, 000AH ;;
MOV DATAH, A ;;
BIT_EXIT: ;;
MOV A, 0004H ;;
MOV DATAL, A ;;
;; *** DATA_LOW ***
RECEVING_LOOP0: ;;
MOV A, 0001H ;;
MOV DATA_RECHH, A ;;
CLR DATA_RECHL ;;
MOV A, 0004H ;;
MOV COUNT_DATA, A ;;
WAIT_DATAH: ;;
NOP ;;
CLR AZ ;;
MOV A, DELAY_R0 ;;
ADDM A, DATA_RECHL ;;
CLR ACC ;;
ADCM A, DATA_RECHH ;;
SZ AZ ;;
JMP RECEVING_END ;;
NOP ;;
SNZ PA1 ;;
JMP WAIT_DATAH ;;
SDZ COUNT_DATA ;;
JMP WAIT_DATAH ;;
;;
MOV A, 0001H ;;
MOV DATA_RECLH, A ;; *** DATA_HIG ***
CLR DATA_RECLL ;;
MOV A, 0003H ;;
MOV COUNT_DATA, A ;;
WAIT_DATAL: ;;
NOP ;;
CLR AZ ;;
MOV A, DELAY_R0 ;;
ADDM A, DATA_RECLL ;;
CLR ACC ;;
ADCM A, DATA_RECLH ;;
SZ AZ ;;
JMP RECEVING_END ;;
NOP ;;
SZ PA1 ;;
JMP WAIT_DATAL ;;
SDZ COUNT_DATA ;;
JMP WAIT_DATAL ;;
;; *** STAND ***
SELECT_BIT: ;;
NOP ;;
CLR CY ;;
DEC DATA_RECHH ;;
DEC DATA_RECLH ;;
SZ LEDR_ON ;;
JMP SELECT_DATA01H ;;
MOV A, DATA_RECHH ;;
MOV CHANHH, A ;;
MOV PASSHH, A ;;
MOV A, DATA_RECHL ;;
MOV CHANHL, A ;;
MOV PASSHL, A ;;
MOV A, DATA_RECLH ;;
MOV CHANLH, A ;;
MOV PASSLH, A ;;
MOV A, DATA_RECLL ;;
MOV CHANLL, A ;;
MOV PASSLL, A ;;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -