📄 rf_oper.lst
字号:
"File: RF_OPER.ASM Holtek Cross-Assembler Version 2.86 Page 1
1 0000 INCLUDE REG_DEF.INC
2 0000
3 0000 PUBLIC INIT_RF
4 0000 PUBLIC RF_CHANGE_TO_TX
5 0000 PUBLIC RF_CHANGE_TO_RX
6 0000 PUBLIC RF_REFILL_DATA
7 0000 PUBLIC RF_REG_WRITE
8 0000 PUBLIC RF_REG_READ
9 0000 PUBLIC RF_FIFO_WRITE
10 0000 PUBLIC RF_FIFO_READ
11 0000
12 0000 PUBLIC WAIT_FSP
13 0000 PUBLIC CHECK_FSP
14 0000
15 0000 PUBLIC DELAY_120MS
16 0000 PUBLIC TEST_RF
17 0000
18 0000 REOPER_CODE .SECTION 'CODE'
19 0000
20 0000 TEST_RF:
21 0000 ;================CONTINUES RF READ IN TEST===============
22 0000 ; MOV A, 8
23 0000 ; MOV RF_DATALNG, A
24 0000 ;
25 0000 ; RUN_AGAIN:
26 0000 ; SET TRRDY
27 0000 ;
28 0000 ; WAIT:
29 0000 ; SNZ TRINT
30 0000 ; JMP WAIT
31 0000 ;
32 0000 ; CLR TRRDY
33 0000 ; CALL RF_FIFO_READ
34 0000 ; JMP RUN_AGAIN
35 0000 ;
36 0000 ;==================END HERE=============================
37 0000
38 0000 ;==============CONTINUES RF WRITE OUT TEST==============
39 0000 ;
40 0000 ; RUN_AGAIN:
41 0000 ; MOV A, RF_OUTBUFF
42 0000 ; MOV MP0, A
43 0000 ;
44 0000 ; MOV A, 8
45 0000 ; MOV RF_DATALNG, A
46 0000 ; MOV RF_LCOUNT0, A
47 0000 ;
48 0000 ; FILLLOOP:
49 0000 ; MOV A, RF_LCOUNT0
50 0000 ; MOV ID0, A
51 0000 ;
52 0000 ; INC MP0
53 0000 ;
54 0000 ; SDZ RF_LCOUNT0
55 0000 ; JMP FILLLOOP
56 0000 ;
57 0000 ; CALL RF_FIFO_WRITE
"File: RF_OPER.ASM Holtek Cross-Assembler Version 2.86 Page 2
58 0000 ; WAIT:
59 0000 ; SNZ TRINT
60 0000 ; JMP WAIT
61 0000 ;
62 0000 ; JMP RUN_AGAIN
63 0000 ;==============================END HERE==================
64 0000 0003 RET
65 0001
66 0001 INIT_RF:
67 0001 3697 CLR TRSDAT_CTRL
68 0002 3117 SET TRINT_CTRL
69 0003 3617 CLR SPIEN_CTRL
70 0004 3616 CLR SPIEN
71 0005 3797 CLR TRRDY_CTRL
72 0006 3796 CLR TRRDY
73 0007 3697 CLR TRSDAT_CTRL
74 0008 3696 CLR TRSDAT
75 0009 3717 CLR TRSCLK_CTRL
76 000A 3716 CLR TRSCLK
77 000B 3419 CLR PSB_CTRL
78 000C 3018 SET PSB
79 000D
80 000D 2000 R CALL RF_RESET
81 000E
82 000E 2100 CALL INIT_RF_REG
83 000F
84 000F 0F02 MOV A, 002H
85 0010 00FC MOV RF_CHANNEL, A
86 0011
87 0011 0F0A MOV A, 00AH
88 0012 00FB MOV RF_DATALNG, A
89 0013
90 0013 5F01 CLR NEXT_1_CHANNEL
91 0014 5F02 CLR NEXT_2_CHANNEL
92 0015 5F03 CLR NEXT_3_CHANNEL
93 0016 5F04 CLR NEXT_4_CHANNEL
94 0017 5F05 CLR NEXT_5_CHANNEL
95 0018
96 0018 ; THE RANGE OD THE SERIAL NUMBER OF THE DATA PACKET IS 1~255
97 0018 0F01 MOV A, 1
98 0019 00FE MOV RF_MSERIAL, A
99 001A
100 001A 0003 RET
101 001B
102 001B WAIT_FSP:
103 001B 3D73 SZ POWER_MODE.2
104 001C 2800 R JMP WAIT
105 001D
106 001D 3873 SNZ POWER_MODE.0
107 001E 3396 SET TRRDY
108 001F
109 001F WAIT:
110 001F 3D16 SZ TRINT
111 0020 2800 R JMP WFSP_GOT_FSP
112 0021
113 0021 0F50 MOV A, 80
114 0022 440D XOR A, TIMER_COUNT
115 0023 1085 SZ ACC
116 0024 2800 R JMP WAIT
117 0025
"File: RF_OPER.ASM Holtek Cross-Assembler Version 2.86 Page 3
118 0025 0FEC MOV A, RF_INBUFF
119 0026 0081 MOV MP0, A
120 0027 1F00 CLR ID0
121 0028 2800 R JMP LOST_FSP
122 0029
123 0029 2800 R JMP WAIT
124 002A
125 002A LOST_FSP:
126 002A WFSP_GOT_FSP:
127 002A 3796 CLR TRRDY
128 002B 360E CLR TIMER_ENABLE
129 002C 5F0D CLR TIMER_COUNT
130 002D 0F69 MOV A, 105
131 002E 008D MOV TMR, A
132 002F 320E SET TIMER_ENABLE
133 0030 2000 R CALL RF_FIFO_READ
134 0031
135 0031 0003 RET
136 0032
137 0032 CHECK_FSP:
138 0032 0FEC MOV A, RF_INBUFF
139 0033 0081 MOV MP0, A
140 0034
141 0034 0FF0 MOV A, 0F0H
142 0035 0400 XOR A, ID0
143 0036 1085 SZ ACC
144 0037 2800 R JMP NOT_VALID_FSP
145 0038
146 0038 3066 SET VALID_FSP
147 0039 1481 INC MP0
148 003A 0700 MOV A, ID0
149 003B 00FD MOV RF_FSP_COUNT, A
150 003C
151 003C 1481 INC MP0
152 003D
153 003D 34E6 CLR RESEND_DATA_REQUIRED
154 003E 0700 MOV A, ID0
155 003F 0E03 AND A, 003H
156 0040 0C03 XOR A, 003H
157 0041 1085 SZ ACC
158 0042 2800 R JMP MAYBE_RESEND_CHECK
159 0043 2800 R JMP NO_RESEND_CHECK
160 0044 MAYBE_RESEND_CHECK:
161 0044 0F01 MOV A, 1
162 0045 4415 XOR A, RESEND_COUNT
163 0046 1085 SZ ACC
164 0047 2800 R JMP RESEND_CHECK
165 0048 5F15 CLR RESEND_COUNT
166 0049 2800 R JMP NO_RESEND_CHECK
167 004A RESEND_CHECK:
168 004A 30E6 SET RESEND_DATA_REQUIRED
169 004B 5495 INC RESEND_COUNT
170 004C
171 004C NO_RESEND_CHECK :
172 004C 1481 INC MP0
173 004D
174 004D 0700 MOV A, ID0
175 004E 4081 MOV NEXT_1_CHANNEL, A
176 004F
177 004F 1481 INC MP0
"File: RF_OPER.ASM Holtek Cross-Assembler Version 2.86 Page 4
178 0050 0700 MOV A, ID0
179 0051 4082 MOV NEXT_2_CHANNEL, A
180 0052
181 0052 1481 INC MP0
182 0053 0700 MOV A, ID0
183 0054 4083 MOV NEXT_3_CHANNEL, A
184 0055
185 0055 1481 INC MP0
186 0056 0700 MOV A, ID0
187 0057 4084 MOV NEXT_4_CHANNEL, A
188 0058
189 0058 1481 INC MP0
190 0059 0700 MOV A, ID0
191 005A 4085 MOV NEXT_5_CHANNEL, A
192 005B
193 005B 3166 SET DONGLE_LINKED
194 005C
195 005C 2800 R JMP EXIT_CHECK_FSP
196 005D
197 005D NOT_VALID_FSP:
198 005D 3466 CLR VALID_FSP
199 005E
200 005E EXIT_CHECK_FSP:
201 005E 0003 RET
202 005F
203 005F RF_CHANGE_TO_RX:
204 005F 077C MOV A, RF_CHANNEL
205 0060 00FA MOV RF_REG_DATA, A
206 0061 1F79 CLR RF_REG_ADDRESS
207 0062 2000 R CALL RF_REG_WRITE
208 0063 0003 RET
209 0064
210 0064 RF_CHANGE_TO_TX:
211 0064 077C MOV A, RF_CHANNEL
212 0065 0D80 OR A, 080H
213 0066 00FA MOV RF_REG_DATA, A
214 0067 1F79 CLR RF_REG_ADDRESS
215 0068 2000 R CALL RF_REG_WRITE
216 0069 0003 RET
217 006A
218 006A RF_REFILL_DATA:
219 006A 3866 SNZ VALID_FSP
220 006B 2800 R JMP NOT_INC_MSERIAL
221 006C
222 006C 3CE6 SZ RESEND_DATA_REQUIRED
223 006D 2800 R JMP NOT_INC_MSERIAL
224 006E
225 006E 14FE INC RF_MSERIAL
226 006F 10FE SZ RF_MSERIAL
227 0070 2800 R JMP NOT_INC_AGAIN
228 0071
229 0071 14FE INC RF_MSERIAL
230 0072
231 0072 NOT_INC_AGAIN:
232 0072 NOT_INC_MSERIAL:
233 0072
234 0072 0FF6 MOV A, RF_OUTBUFF
235 0073 0081 MOV MP0, A
236 0074
237 0074 0FE1 MOV A, 0E1H
"File: RF_OPER.ASM Holtek Cross-Assembler Version 2.86 Page 5
238 0075 0080 MOV ID0, A
239 0076 1481 INC MP0
240 0077
241 0077 077E MOV A, RF_MSERIAL
242 0078 0080 MOV ID0, A
243 0079 1481 INC MP0
244 007A
245 007A 077D MOV A, RF_FSP_COUNT
246 007B 0080 MOV ID0, A
247 007C 1481 INC MP0
248 007D
249 007D 076A MOV A, KEY_STATUS ;FOR BUTTONS
250 007E 0080 MOV ID0, A
251 007F 1481 INC MP0
252 0080
253 0080 470A MOV A, MONTION_X
254 0081 0080 MOV ID0, A
255 0082 1481 INC MP0
256 0083
257 0083 470B MOV A, MONTION_Y
258 0084 0080 MOV ID0, A
259 0085 1481 INC MP0
260 0086
261 0086 076B MOV A, Z_WHEEL ;FOR Z-WHEEL
262 0087 0080 MOV ID0, A
263 0088 1481 INC MP0
264 0089
265 0089 3866 SNZ VALID_FSP
266 008A 2800 R JMP NOT_CLR_Z
267 008B
268 008B 3CE6 SZ RESEND_DATA_REQUIRED
269 008C 2800 R JMP NOT_CLR_Z
270 008D
271 008D 1F6B CLR Z_WHEEL
272 008E
273 008E NOT_CLR_Z:
274 008E
275 008E 0003 RET
276 008F
277 008F
278 008F RF_RESET:
279 008F 3418 CLR PSB
280 0090 3396 SET TRRDY
281 0091
282 0091 2000 R CALL DELAY_120MS
283 0092
284 0092 3796 CLR TRRDY
285 0093 2000 R CALL DELAY_20US
286 0094 3018 SET PSB
287 0095
288 0095 2000 R CALL DELAY_120MS
289 0096 0003 RET
290 0097
291 0097 RF_REG_WRITE:
292 0097 3216 SET SPIEN
293 0098 2000 R CALL DELAY_20US
294 0099
295 0099 ;WRITE R/W BIT, 1
296 0099 3296 SET TRSDAT
297 009A 3316 SET TRSCLK
"File: RF_OPER.ASM Holtek Cross-Assembler Version 2.86 Page 6
298 009B 3716 CLR TRSCLK
299 009C 3696 CLR TRSDAT
300 009D
301 009D ;ADDRESS PHASE
302 009D 0F07 MOV A, 7
303 009E 00F6 MOV RF_LCOUNT0, A
304 009F WREGAP:
305 009F 3F79 SZ RF_REG_ADDRESS.6
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -