?? wl006.lst
字號:
197
0083 C2B4 198 CLR CS
199
0085 22 200 RET
201 ; END OF ERASE
202
203 ;===============================================================================
---- 204 RSEG CODE_SEG
0086 205 INOP:
206 ; 寫入操作碼
207 ; 傳入參數:R7高兩位 --- 指令碼的高兩位
208 ; 傳入參數:R5低七位 --- 指令碼的低7位或地址
209 ; 返回值:無
210
211 USING 0
212
0086 C2B3 213 CLR SK ; 開始位
0088 D2B5 214 SETB DI
008A D2B4 215 SETB CS
008C 00 216 NOP
008D 00 217 NOP
008E D2B3 218 SETB SK
0090 00 219 NOP
0091 00 220 NOP
0092 C2B3 221 CLR SK ; 開始位結束
222
0094 EF 223 MOV A,R7 ; 先移入指令碼高位
0095 33 224 RLC A
0096 92B5 225 MOV DI,C
0098 D2B3 226 SETB SK
009A 33 227 RLC A
009B C2B3 228 CLR SK
009D 92B5 229 MOV DI,C ; 移入指令碼次高位
009F D2B3 230 SETB SK
00A1 00 231 NOP
00A2 00 232 NOP
00A3 C2B3 233 CLR SK
234
235
00A5 ED 236 MOV A,R5 ; 移入余下的指令碼或地址數據
00A6 33 237 RLC A
00A7 FD 238 MOV R5,A ; R5左移一位
239
00A8 E4 240 CLR A
00A9 FF 241 MOV R7,A
00AA 242 INOP_LP:
00AA ED 243 MOV A,R5 ; 移入R5的高7位
00AB 33 244 RLC A
00AC 92B5 245 MOV DI,C
00AE D2B3 246 SETB SK
00B0 ED 247 MOV A,R5
00B1 33 248 RLC A
00B2 FD 249 MOV R5,A
00B3 C2B3 250 CLR SK
251
00B5 0F 252 INC R7
00B6 BF07F1 253 CJNE R7,#07H,INOP_LP ; 判斷是否7位全移完
254
00B9 D2B5 255 SETB DI
256
A51 MACRO ASSEMBLER WL006 03/29/2005 15:44:25 PAGE 5
00BB 22 257 RET
258 ; END OF INOP
259
260 ;===============================================================================
---- 261 RSEG CODE_SEG
00BC 262 SHIN:
263 ; 從MCU移出數據到AT93C46
264 ; 傳入參數:R7 --- 要移入的數據
265 ; 返回值:無
266
267 USING 0
268
00BC E4 269 CLR A
00BD FE 270 MOV R6,A
00BE EE 271 MOV A,R6
00BF EF 272 MOV A,R7
00C0 273 SHIN_LP:
00C0 33 274 RLC A
00C1 92B5 275 MOV DI,C
00C3 D2B3 276 SETB SK
00C5 00 277 NOP
00C6 00 278 NOP
00C7 C2B3 279 CLR SK
280
00C9 0E 281 INC R6
00CA BE08F3 282 CJNE R6,#08H,SHIN_LP ; 共8位,判斷是否完成
283
00CD D2B5 284 SETB DI
00CF 22 285 RET
286 ; END OF SHIN
287
288 ;===============================================================================
289
---- 290 RSEG CODE_SEG
00D0 291 SHOUT:
292 ; 從AT93C46移出數據MCU
293 ; 傳入參數:無
294 ; 返回值:R7 --- 讀出的數據
295
296 USING 0
297
00D0 E4 298 CLR A
00D1 FE 299 MOV R6,A
00D2 300 SHOUT_LP:
00D2 D2B3 301 SETB SK
00D4 00 302 NOP
00D5 00 303 NOP
00D6 C2B3 304 CLR SK
00D8 A2B6 305 MOV C,DO
00DA 33 306 RLC A
00DB 0E 307 INC R6
00DC BE08F3 308 CJNE R6,#08H,SHOUT_LP ; 共8位,判斷是否完成
00DF F507 309 MOV AR7,A
310
00E1 22 311 RET
312 ; END OF SHOUT
313
314 ;===============================================================================
---- 315 RSEG CODE_SEG
00E2 316 DELAYMS:
317 ; 延時子程序
318 ; 傳入參數:R7 --- 延時值(MS)
319 ; 返回值:無
320
00E2 EF 321 MOV A,R7
00E3 6009 322 JZ END_DLYMS
A51 MACRO ASSEMBLER WL006 03/29/2005 15:44:25 PAGE 6
00E5 323 DLY_LP1:
00E5 7EB9 324 MOV R6,#185
00E7 325 DLY_LP2:
00E7 00 326 NOP
00E8 00 327 NOP
00E9 00 328 NOP
00EA DEFB 329 DJNZ R6,DLY_LP2
00EC DFF7 330 DJNZ R7,DLY_LP1
331
00EE 332 END_DLYMS:
00EE 22 333 RET
334 ; END OF DELAYMS
335
336 ;===============================================================================
337
---- 338 RSEG CODE_SEG
00EF 339 DIS_CODE:
340 ; 寫入到AT93C46的數據串
341
00EF 7E 342 DB 07EH
00F0 BD 343 DB 0BDH
00F1 DB 344 DB 0DBH
00F2 E7 345 DB 0E7H
00F3 DB 346 DB 0DBH
00F4 BD 347 DB 0BDH
00F5 7E 348 DB 07EH
00F6 FF 349 DB 0FFH
350
351 END
A51 MACRO ASSEMBLER WL006 03/29/2005 15:44:25 PAGE 7
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
ADDR . . . . . . . D ADDR 0001H R SEG=DATA_SEG
AR7. . . . . . . . D ADDR 0007H A
CODE_SEG . . . . . C SEG 00F7H REL=UNIT
CS . . . . . . . . B ADDR 00B0H.4 A
DATA_SEG . . . . . D SEG 0002H REL=UNIT
DELAYMS. . . . . . C ADDR 00E2H R SEG=CODE_SEG
DI . . . . . . . . B ADDR 00B0H.5 A
DIS_CODE . . . . . C ADDR 00EFH R SEG=CODE_SEG
DLY_LP1. . . . . . C ADDR 00E5H R SEG=CODE_SEG
DLY_LP2. . . . . . C ADDR 00E7H R SEG=CODE_SEG
DO . . . . . . . . B ADDR 00B0H.6 A
END_DLYMS. . . . . C ADDR 00EEH R SEG=CODE_SEG
ERASE. . . . . . . C ADDR 0077H R SEG=CODE_SEG
EWDS . . . . . . . C ADDR 006EH R SEG=CODE_SEG
EWEN . . . . . . . C ADDR 0064H R SEG=CODE_SEG
INDATA . . . . . . D ADDR 0000H R SEG=DATA_SEG
INOP . . . . . . . C ADDR 0086H R SEG=CODE_SEG
INOP_LP. . . . . . C ADDR 00AAH R SEG=CODE_SEG
MAIN . . . . . . . C ADDR 0000H R SEG=CODE_SEG
MAIN_LP. . . . . . C ADDR 002FH R SEG=CODE_SEG
P0 . . . . . . . . D ADDR 0080H A
P3 . . . . . . . . D ADDR 00B0H A
READ . . . . . . . C ADDR 0057H R SEG=CODE_SEG
SHIN . . . . . . . C ADDR 00BCH R SEG=CODE_SEG
SHIN_LP. . . . . . C ADDR 00C0H R SEG=CODE_SEG
SHOUT. . . . . . . C ADDR 00D0H R SEG=CODE_SEG
SHOUT_LP . . . . . C ADDR 00D2H R SEG=CODE_SEG
SK . . . . . . . . B ADDR 00B0H.3 A
SP . . . . . . . . D ADDR 0081H A
STACK. . . . . . . I ADDR 0000H R SEG=STACK_SEG
STACK_SEG. . . . . I SEG 0014H REL=UNIT
WL006. . . . . . . N NUMB -----
WRITE. . . . . . . C ADDR 0042H R SEG=CODE_SEG
WRITE_LP . . . . . C ADDR 0014H R SEG=CODE_SEG
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -