📄 main.lst
字号:
"File: MAIN.ASM Holtek Cross-Assembler Version 2.86 Page 1
1 0000 INCLUDE DONGLE.INC
2 0000
3 0000 ;FUNCTIONS AND VARIABLES DEFINED IN USB_OPER.ASM
4 0000 EXTERN INIT_USB :NEAR
5 0000 EXTERN USB_ROUTINE :NEAR
6 0000 EXTERN USB_CONFIGURATION_DONE :BIT
7 0000 EXTERN WRITE_FIFO2 :NEAR
8 0000
9 0000 ;FUNCTIONS AND VARIABLES DEFINED IN RF_OPER.ASM
10 0000 EXTERN INIT_RF :NEAR
11 0000 EXTERN RF_REFILL_COMMAND :NEAR
12 0000 EXTERN RF_CHANGE_TO_TX :NEAR
13 0000 EXTERN RF_CHANGE_TO_RX :NEAR
14 0000 EXTERN RF_WAIT_DATA :NEAR
15 0000 EXTERN RF_FIFO_WRITE :NEAR
16 0000 EXTERN TEST_RF :NEAR
17 0000
18 0000 ;FUNCTIONS AND VARIABLES DEFINED IN TIMER_OPER.ASM
19 0000 EXTERN INIT_TIMER :NEAR
20 0000 EXTERN TIME_EVENT :BIT
21 0000 ;EXTERN TEST_V:BYTE
22 0000 ;FUNCTIONS AND VARIABLES DEFINED IN CHANNEL_MANA.ASM
23 0000 EXTERN CHANNEL_SCAN :NEAR
24 0000 EXTERN GET_NEXT_CHANNEL :NEAR
25 0000 EXTERN GET_NEXT_2CHANNELS :NEAR
26 0000 EXTERN RSSI_CHECK :NEAR
27 0000 EXTERN INIT_CHANNEL_MANA :NEAR
28 0000
29 0000 MAIN_CODE .SECTION AT 0000H 'CODE'
30 0000 2810 JMP START
31 0001
32 0000 MAIN_FLOW .SECTION AT 0010H 'CODE'
33 0000 START:
34 0000
35 0000 2029 CALL INIT_RAM
36 0001 2000 E CALL INIT_RF
37 0002 ; CALL CHANNEL_SCAN
38 0002 2000 E CALL INIT_CHANNEL_MANA
39 0003 2000 E CALL INIT_TIMER
40 0004 2000 E CALL INIT_USB
41 0005 3597 CLR LED_PIN_CTRL
42 0006 3196 SET LED_PIN
43 0007 3517 CLR PCC.2
44 0008 3516 CLR PC.2
45 0009
46 0009
47 0009 MAINLOOP:
48 0009 ;=============== FOR TEST ================
49 0009 ;MOV A, 0B4H
50 0009 ;MOV TEST_V,A
51 0009 ;MOV A, 04BH
52 0009 ;ADDM A, TEST_V
53 0009
54 0009 ;=========================================
55 0009 2000 E CALL USB_ROUTINE
56 000A
57 000A 3800 E SNZ USB_CONFIGURATION_DONE
"File: MAIN.ASM Holtek Cross-Assembler Version 2.86 Page 2
58 000B 2819 JMP MAINLOOP
59 000C
60 000C 320E SET [0EH].4
61 000D
62 000D 3800 E SNZ TIME_EVENT
63 000E 2828 JMP NOT_DO_RF_COMMUNICATION
64 000F
65 000F 3400 E CLR TIME_EVENT
66 0010 2000 E CALL RF_FIFO_WRITE ;SEND A COMMAND
67 0011 2000 E CALL RF_CHANGE_TO_RX
68 0012
69 0012 2000 E CALL RF_WAIT_DATA
70 0013
71 0013 2000 E CALL RSSI_CHECK
72 0014 2000 E CALL GET_NEXT_CHANNEL
73 0015 2000 E CALL GET_NEXT_2CHANNELS
74 0016 2000 E CALL RF_REFILL_COMMAND
75 0017 2000 E CALL RF_CHANGE_TO_TX
76 0018
77 0018 NOT_DO_RF_COMMUNICATION:
78 0018
79 0018 2819 JMP MAINLOOP
80 0019
81 0019 INIT_RAM:
82 0019 ;ALWAYS LET MP1 POINTS TO BANK 1
83 0019 0F01 MOV A, 1
84 001A 0084 MOV BP, A
85 001B
86 001B ;INITIALIZE RAM CONTENT TO ZERO (20H~BFH)
87 001B 0F20 MOV A, 020H
88 001C 0081 MOV MP0, A
89 001D
90 001D INIT_RAM_LOOP:
91 001D 1F00 CLR ID0
92 001E 1481 INC MP0
93 001F 0FC0 MOV A, 0C0H
94 0020 0401 XOR A, MP0
95 0021 1085 SZ ACC
96 0022 282D JMP INIT_RAM_LOOP
97 0023
98 0023 0003 RET
99 0024
100 0024
0 Errors
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -