📄 main.lst
字号:
"File: MAIN.ASM Holtek Cross-Assembler Version 2.86 Page 1
1 0000 ;*******************************************************************************
2 0000 ;*
3 0000 ;* (c) Copyright 2005, Holtek Semiconductor Inc.
4 0000 ;*
5 0000 ;******************************************************************************/
6 0000 ;*******************************************************************************
7 0000 ;MODULE: main.asm
8 0000
9 0000 ;INITIAL: 11/14/2006
10 0000
11 0000 ;AUTHOR: C351 hongyuan lai
12 0000
13 0000 ;NOTE: HT82A851R Main Function
14 0000
15 0000 ;VERSION: 0.01
16 0000 ;Function:
17 0000 ;key debounced N
18 0000 ;oled N
19 0000 ;volume adjust Y
20 0000 ;2005/05/13 Update Key Debounce
21 0000 ;2005/05/25 Modify Pop noise
22 0000 ;2005/06/06 Modify Send_Hand_Shake
23 0000 ;2005/06/10 if setup scmd, clear scmd and len0 when read 8 bytes
24 0000 ;*******************************************************************************
25 0000
26 0000 ;***************************************************************
27 0000 ;Include File
28 0000 ;const.inc user defined
29 0000 ;macro.asm macro function
30 0000 ;***************************************************************
31 0000 #include ht82a851r.inc
32 0000 #include const.inc
33 0000 #include nRF24L01.inc
34 0000 #include macro.asm
35 0000 #define WaitBias 0
36 0000
37 0000 ;***************************************************************
38 0000 ; nRF transmit and receive FIFO
39 0000 ; each 64 bytes, 2 ms
40 0000 ;***************************************************************
41 0000
42 0000 RAMBank 1 DATA2
43 0000 DATA2 .section AT 40H 'DATA'
44 0000 0040[ TX_FIFO_STACK DB 64 DUP(?)
00
]
45 0040 0040[ RX_FIFO_STACK DB 64 DUP(?)
00
]
46 0080 ;====================================================================
47 0080 ;Variable Defined , read/write DATA start from 40H
"File: MAIN.ASM Holtek Cross-Assembler Version 2.86 Page 2
48 0080 ;====================================================================
49 0080 RAMBank 0 DATA
50 0000 DATA .SECTION AT 40H 'DATA'
51 0000 ;***************************************************************
52 0000 ; USB ISR Var (backup for interrupt)
53 0000 ;***************************************************************
54 0000 00 isr_usb_acc DB ?
55 0001 00 isr_usb_status DB ?
56 0002 00 isr_usb_mp1 DB ?
57 0003 00 isr_usb_mp0 DB ?
58 0004 00 isr_usb_tblp DB ?
59 0005 00 isr_usb_bp DB ?
60 0006 ;***************************************************************
61 0006 ; Timer0 ISR Var (backup for interrupt)
62 0006 ;***************************************************************
63 0006 00 isr_tmr0_acc DB ?
64 0007 00 isr_tmr0_status DB ?
65 0008 00 isr_tmr0_mp1 DB ?
66 0009 00 isr_tmr0_mp0 DB ?
67 000A 00 isr_tmr0_tblp DB ?
68 000B 00 isr_tmr0_bp DB ?
69 000C ;***************************************************************
70 000C ; Timer1 ISR Var (backup for interrupt)
71 000C ;***************************************************************
72 000C 00 isr_tmr1_acc DB ?
73 000D 00 isr_tmr1_status DB ?
74 000E 00 isr_tmr1_mp1 DB ?
75 000F 00 isr_tmr1_mp0 DB ?
76 0010 00 isr_tmr1_tblp DB ?
77 0011 00 isr_tmr1_bp DB ?
78 0012 ;***************************************************************
79 0012 ; Play ISR Var (backup for interrupt)
80 0012 ;***************************************************************
81 0012 00 isr_play_acc DB ?
82 0013 00 isr_play_status DB ?
83 0014 00 isr_play_mp1 DB ?
84 0015 00 isr_play_mp0 DB ?
85 0016 00 isr_play_tblp DB ?
86 0017 00 isr_play_bp DB ?
87 0018 ;***************************************************************
88 0018 ; Rec ISR Var (backup for interrupt)
89 0018 ;***************************************************************
90 0018 00 isr_rec_acc DB ?
91 0019 00 isr_rec_status DB ?
92 001A 00 isr_rec_mp1 DB ?
93 001B 00 isr_rec_mp0 DB ?
94 001C 00 isr_rec_tblp DB ?
95 001D 00 isr_rec_bp DB ?
96 001E ;***************************************************************
97 001E ; Delay variable
98 001E ;***************************************************************
99 001E 00 Delay_1 DB ?
100 001F 00 Delay_2 DB ?
101 0020 00 Delay_3 DB ?
102 0021
103 0021 ;***************************************************************
104 0021 ;USB FIFO Variable
105 0021 ;USB_Interface : to save usb current interface number
106 0021 ;USB_Interface_Alt : to save usb current alternate of interface number
107 0021 ;USB_Configuration : to save USB configuration number
"File: MAIN.ASM Holtek Cross-Assembler Version 2.86 Page 3
108 0021 ;FIFO_ADDR : to save USB ADDRESS
109 0021 ;Loop_Counter , Data_Count , Data_Start : control_read variable
110 0021 ;***************************************************************
111 0021 ;For FIFO Access
112 0021 ;modify 2006-09-22
113 0021 00 FIFO_SIZE db ?
114 0022 ;------------------------------------------------
115 0022 00 FIFO_SendLen db ?
116 0023 FIFO_out1 label byte
117 0023 00 FIFO_Type db ?
118 0024 FIFO_out2 label byte
119 0024 00 FIFO_Request db ?
120 0025 FIFO_out3 label byte
121 0025 00 FIFO_wValueL db ?
122 0026 FIFO_out4 label byte
123 0026 00 FIFO_wValueH db ?
124 0027 FIFO_out5 label byte
125 0027 00 FIFO_wIndexL db ?
126 0028 FIFO_out6 label byte
127 0028 00 FIFO_wIndexH db ?
128 0029 FIFO_out7 label byte
129 0029 00 FIFO_wLengthL db ?
130 002A FIFO_out8 label byte
131 002A 00 FIFO_wLengthH db ?
132 002B
133 002B 00 USB_Interface db ?
134 002C 00 USB_Interface_Alt db ?
135 002D 00 USB_Configuration db ?
136 002E
137 002E 00 FIFO_ADDR db ?
138 002F
139 002F
140 002F 00 Loop_Counter db ?
141 0030 00 Data_Count db ?
142 0031 00 Data_Start db ?
143 0032
144 0032 ;voice control
145 0032 00 INC_Counter db ?
146 0033 00 DEC_Counter db ?
147 0034
148 0034
149 0034 ;FIFO
150 0034 00 FIFO_TEMP db ?
151 0035 00 bFlag_SetConfiguration_Ready dbit
152 0035 bFlag_SetInterface_Ready dbit
153 0035 bFlag_Real_Cmd dbit
154 0035 bFlag_FIFO_Ready dbit
155 0035 bFlag_FIFO_LEN0 dbit
156 0035 bFlag_RD_HTable dbit
157 0035 bFlag_wait_control_out dbit
158 0035 bFlag_SET_ADDRESS dbit
159 0036 00 bFlag_SCMD dbit
160 0036 bFlag_Enum_Ready dbit
161 0037 ;Audio
162 0037 00 PortC_data db ?
163 0036 bFlag_Audio_Mute dbit
164 0036 bFlag_Mic_Mute dbit
165 0038 00 Volume1 db ?
166 0039 00 Volume2 db ?
167 0036 bFlag_Mute_Detect dbit
"File: MAIN.ASM Holtek Cross-Assembler Version 2.86 Page 4
168 0036 bFlag_INC_Detect dbit
169 0036 bFlag_DEC_Detect dbit
170 003A 00 Flag_Audio_Control db ? ; 0 0 muteH muteL incH incL decH decL
171 003B
172 003B 00 VolumeH_Save db ?
173 003C 00 VolumeL_Save db ?
174 003D
175 003D 00 nCmdIndex1 db ?
176 003E 00 nCmdIndex2 db ?
177 003F 00 nCmdIndex3 db ?
178 0040
179 0040
180 0040 00 Key_Process db ?
181 0041 00 Key_CheckIn db ?
182 0042 00 Key_Counter db ?
183 0043 00 Key_Temp db ?
184 0044 00 Key_IncCounter db ?
185 0045 00 Key_DecCounter db ?
186 0046 00 MODE_CTRL_TEMP db ?
187 0036 TMR1_KEY_FG dbit
188 0047
189 0047 ;---------------
190 0047 00 ADC_POR_FG dbit
191 0048 ;---------------
192 0048
193 0048
194 0048 ;====== nRF24L01 ========================
195 0048 ;--use for address initial/setup/save/change
196 0048 00 TX_FIFO_ADDR DB ?
197 0049 00 TX_FIFO_ADDR1 DB ?
198 004A 00 RX_FIFO_ADDR DB ?
199 004B 00 RX_FIFO_ADDR1 DB ?
200 004C 00 FIFO_COUNTER DB ?
201 004D 00 DAC_FIFO_COUNTER DB ?
202 004E 00 ADC_FIFO_COUNTER DB ?
203 004F
204 004F 00 RX_FIFO_ADDR_temp DB ?
205 0050 00 TX_FIFO_ADDR_temp DB ?
206 0051 00 RX_FIFO_Status DB ?
207 0052 00 RX_key_code DB ?
208 0053
209 0053 00 channel_1 DB ?
210 0054 00 channel_2 DB ?
211 0055
212 0047 bFlag_TX_FIFO DBIT
213 0047 bFlag_TX_FIFO_Select DBIT
214 0047 bFlag_TX_FIFO_Select1 DBIT
215 0047 bFlag_RX_FIFO_Select DBIT
216 0047 bFlag_RX_FIFO_Select1 DBIT
217 0047 bFlag_TX_Mode DBIT
218 0047 bFlag_RX_Mode DBIT
219 0055 00 bFlag_RX_SPI DBIT
220 0056
221 0056 ;----use for playload
222 0055 bFlag_End_SPI_Operation DBIT
223 0056
224 0056 ;---general variant
225 0056 00 temp_num DB ? ;general use for SPI counter
226 0057 00 table_data DB ? ;initial table
227 0058 00 COMMAND_L DB ? ;second send data via SPI
"File: MAIN.ASM Holtek Cross-Assembler Version 2.86 Page 5
228 0059 00 COMMAND_H DB ? ;first send data via SPI
229 005A 00 RF_number DB ?
230 005B
231 005B ;---TX/RX ADDR WRITE
232 005B 00 TX_ADDRESS_Select DB ?
233 005C 00 RX_ADDRESS_Select DB ?
234 005D 0005[ nRF_ADDR_value DB 5 DUP(?)
00
]
235 0062
236 0062 #define AUDIO_8K 1
237 0062
238 0062 extern control_read_table:NEAR
239 0062 extern device_desc_table:NEAR
240 0062 extern config_desc_table:NEAR
241 0062
242 0062 extern end_config_desc_table:NEAR
243 0062 extern hid_report_desc_table:NEAR
244 0062 extern end_hid_report_desc_table:NEAR
245 0062
246 0062 extern USBStringLanguageDescription:NEAR
247 0062 extern USBStringDescription1:NEAR
248 0062 extern USBStringDescription2:NEAR
249 0062
250 0062 extern config_desc_length:NEAR
251 0062 extern report_desc_length:NEAR
252 0062 ;function
253 0062 extern Control_Read:NEAR
254 0062 extern FIFO0_RD_CHECK:NEAR
255 0062 extern FIFO1_RD_CHECK:NEAR
256 0062 extern FIFO2_RD_CHECK:NEAR
257 0062 extern FIFO3_RD_CHECK:NEAR
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -