📄 rf_oper.asm.bak
字号:
RF_REG_WRITE:
SET SPIEN
CALL DELAY_20US
;WRITE R/W BIT, 1
SET TRSDAT
SET TRSCLK
CLR TRSCLK
CLR TRSDAT
;ADDRESS PHASE
MOV A, 7
MOV RF_LCOUNT0, A
WREGAP:
SZ RF_REG_ADDRESS.6
SET TRSDAT
SET TRSCLK
CLR TRSCLK
CLR TRSDAT
RL RF_REG_ADDRESS
SDZ RF_LCOUNT0
JMP WREGAP
;DATA PHASE
MOV A, 8
MOV RF_LCOUNT0, A
WREGDP:
SZ RF_REG_DATA.7
SET TRSDAT
SET TRSCLK
CLR TRSCLK
CLR TRSDAT
RL RF_REG_DATA
SDZ RF_LCOUNT0
JMP WREGDP
CLR SPIEN
RET
RF_REG_READ:
SET SPIEN
CALL DELAY_20US
;WRITE R/W BIT, 1
CLR TRSDAT
SET TRSCLK
CLR TRSCLK
;ADDRESS PHASE
MOV A, 7
MOV RF_LCOUNT0, A
RREGAP:
SZ RF_REG_ADDRESS.6
SET TRSDAT
SET TRSCLK
CLR TRSCLK
CLR TRSDAT
RL RF_REG_ADDRESS
SDZ RF_LCOUNT0
JMP RREGAP
;DATA PHASE
CLR REG_DATA
MOV A, 8
MOV RF_LCOUNT0, A
;TURNCATE DATA PIN FROM OUTPUT TO INPUT
SET TRSDAT_CTRL
CLR SPI_DATA
RREGDP:
RL RF_REG_DATA
SZ TRSDAT
SET RF_REG_DATA.0
SET TRSCLK
CLR TRSCLK
SDZ RF_LCOUNT0
JMP WREGDP
CLR SPIEN
;TURNCATE DATA PIN FROM OUTPUT TO INPUT
CLR TRSDAT_CTRL
CLR SPI_DATA
RET
RF_FIFO_WRITE:
MOV A, RF_DATALNG
MOV RF_LCOUNT1, A
MOV A, RF_OUTBUFF
MOV MP0, A
CLR TRSDAT
CLR TRSCLK
SET TRRDY
CALL DELAY_20US
;DATA PHASE
WFIFOOLP:
MOV A, 8
MOV RF_LCOUNT0, A
WFIFOILP:
SZ ID0.7
SET TRSDAT
SET TRSCLK
CLR TRSCLK
CLR TRSDAT
RL ID0
SDZ RF_LCOUNT0
JMP WFIFOILP
INC MP0
SDZ RF_LCOUNT1
JMP WFIFOOLP
;DUMMY CYCLE : 3-BIT
CLR TRSDAT
SET TRSCLK
CLR TRSCLK
SET TRSCLK
CLR TRSCLK
SET TRSCLK
CLR TRSCLK
CLR TRSRDY
RET
RF_FIFO_READ:
MOV A, RF_DATALNG
MOV RF_LCOUNT1, A
MOV A, RF_INBUFF
MOV MP0, A
CLR TRSDAT
CLR TRSCLK
SET TRRDY
CALL DELAY_20US
;DATA PHASE
WFIFOOLP:
MOV A, 8
MOV RF_LCOUNT0, A
WFIFOILP:
SZ ID0.7
SET TRSDAT
SET TRSCLK
CLR TRSCLK
CLR TRSDAT
RL ID0
SDZ RF_LCOUNT0
JMP WFIFOILP
INC MP0
SDZ RF_LCOUNT1
JMP WFIFOOLP
;DUMMY CYCLE : 3-BIT
CLR TRSDAT
SET TRSCLK
CLR TRSCLK
SET TRSCLK
CLR TRSCLK
SET TRSCLK
CLR TRSCLK
CLR TRSRDY
RET
RFDATA_REV:
CLR TRRDY
;TURNCATE TRSDAT AS INPUT
SET TRSDAT_CTRL
MOV A, 070H
MOV BUFFADDR, A
;PRE-DUMMY CYCLE : 2-BIT
SET TRSCLK
CLR TRSCLK
SET TRSCLK
CLR TRSCLK
;MOV A, 4
;REV_AGAIN:
;REV DATA PHASE: BYTE0
CLR BUFFDATA
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.7
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.6
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.5
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.4
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.3
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.2
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.1
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.0
CLR TRSCLK
INC BUFFADDR
;BYTE 1
CLR BUFFDATA
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.7
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.6
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.5
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.4
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.3
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.2
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.1
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.0
CLR TRSCLK
INC BUFFADDR
;BYTE 2
CLR BUFFDATA
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.7
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.6
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.5
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.4
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.3
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.2
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.1
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.0
CLR TRSCLK
INC BUFFADDR
;BYTE 3
CLR BUFFDATA
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.7
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.6
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.5
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.4
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.3
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.2
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.1
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.0
CLR TRSCLK
INC BUFFADDR
;BYTE 4
CLR BUFFDATA
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.7
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.6
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.5
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.4
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.3
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.2
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.1
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.0
CLR TRSCLK
INC BUFFADDR
;BYTE 5
CLR BUFFDATA
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.7
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.6
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.5
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.4
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.3
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.2
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.1
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.0
CLR TRSCLK
INC BUFFADDR
;BYTE 6
CLR BUFFDATA
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.7
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.6
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.5
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.4
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.3
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.2
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.1
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.0
CLR TRSCLK
INC BUFFADDR
;BYTE 7
CLR BUFFDATA
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.7
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.6
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.5
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.4
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.3
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.2
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.1
CLR TRSCLK
SET TRSCLK
SZ TRSDAT
SET BUFFDATA.0
CLR TRSCLK
;INC BUFFADDR
; SDZ ACC
; JMP REV_AGAIN
;POST-DUMMY CYCLE : 3-BIT
SET TRSCLK
CLR TRSCLK
SET TRSCLK
CLR TRSCLK
SET TRSCLK
CLR TRSCLK
;TURNCATE TRSDAT AS OUTPUT
CLR TRSDAT_CTRL
;TEST PATTERN
; MOV A, 070H
; MOV BUFFADDR, A
;
; MOV A, 0F0H
; MOV BUFFDATA, A
;
; INC BUFFADDR
;
; MOV A, 41H
; MOV BUFFDATA, A
RET
; DELAY ABOUT 20US
DELAY_20US:
MOV A, 10
DELAY_LOOP:
SDZ ACC
JMP DELAY_LOOP
RET
DELAY_120MS:
;SET CONBUT
SET RF_TEMP
DELAY_120MS_OUTLOOP:
SET ACC
DELAY_120MS_INLOOP:
SDZ ACC
JMP DELAY_120MS_INLOOP
SDZ RF_TEMP
JMP DELAY_120MS_OUTLOOP
;CLR CONBUT
RET
;RF_SEND_TEST:
;
; MOV A, 078H
; MOV BUFFADDR, A
;
; MOV A, 0E1H
; MOV BUFFDATA, A
; INC BUFFADDR
;
; MOV A, 00H
; MOV BUFFDATA, A
; INC BUFFADDR
;
; MOV A, 00H
; MOV BUFFDATA, A
; INC BUFFADDR
;
; MOV A, 0FFH
; MOV BUFFDATA, A
; INC BUFFADDR
;
; MOV A, 01H
; MOV BUFFDATA, A
; INC BUFFADDR
;
; MOV A, 001H
; MOV BUFFDATA, A
; INC BUFFADDR
;
; MOV A, 000H
; MOV BUFFDATA, A
; INC BUFFADDR
;
; MOV A, 0FFH
; MOV BUFFDATA, A
; INC BUFFADDR
;
; AGAIN:
; CALL RFDATA_SEND
;
; WWWAAAIIITTT:
; SNZ TRINT
; JMP WWWAAAIIITTT
;
; JMP AGAIN
;
; RET
;
;RF_RECEIVE_TEST:
;
; GOGO_REV:
; SET TRRDY
; WAIT_RF_TEST_IN:
; SNZ TRINT
;; JMP WAIT_RF_TEST_IN
;
; CLR TRRDY
; CALL RFDATA_REV
;
; JMP GOGO_REV
;
; RET
RF_REG_VALUE .SECTION AT 0700H 'CODE'
;C3 078h
; 0 1 2 3 4 5 6 7
DC 02AH, 01BH, 068H, 007H, 000H, 007H, 030H, 023H ;0
DC 003H, 011H, 022H, 033H, 000H, 000H, 044H, 055H ;8
DC 066H, 000H, 000H, 000H, 000H, 014H, 000H, 0D2H ;16
;-------------------------------------------------------------------------------
DC 008H, 000H, 000H, 000H, 000H, 000H, 000H, 000H ;24
DC 03FH, 000H, 000H, 000H, 000H, 000H, 000H, 000H ;32
DC 000H, 000H, 000H, 000H, 000H, 000H, 000H, 000H ;40
DC 072H, 000H, 0B7H, 0E4H, 024H, 000H, 00BH, 050H ;48
DC 044H, 0B8H, 01AH, 001H, 01AH, 000H, 01AH, 000H ;56
DC 01AH, 000H, 031H, 042H, 008H, 008H, 000H, 000H ;64
DC 08CH, 066H, 070H, 0BFH, 019H, 046H, 01DH, 026H ;72
DC 04CH, 0A8H, 014H, 00EH, 01AH, 007H, 09BH, 025H ;80
DC 070H, 010H, 0A9H, 017H, 0FEH, 0FEH, 0FEH, 0FEH ;88
DC 001H, 022H, 018H, 00FH, 005H, 055H, 000H, 000H ;96
DC 000H, 000H, 000H, 000H, 000H, 000H, 000H, 000H ;104
DC 000H, 000H, 000H, 000H, 000H, 000H, 000H, 09CH ;112
DC 0B9H, 039H, 000H, 000H, 002H, 000H, 003H, 018H ;120
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -