📄 24lc04q.lst
字号:
HI-TECH Software PICC Macro Assembler V8.05PL1
Serial number: HCPIC-63763 Sat Jun 14 16:35:57 2008
Licensed to: CHENLIYUN
1 processor 16F877A
2 opt pw 79
3 psect __Z63763RS_,global,delta=1
4 psect text7,local,class=CODE,delta=2
5 psect text8,local,class=CODE,delta=2
6 psect text11,local,class=CODE,delta=2
7 psect text12,local,class=CODE,delta=2
8 psect temp,global,ovrld,class=BANK0,space=1,de
+ lta=1
9 0000
10 0000
11 0000
12 0000
13 0000
14 0000
15 0000
16 0000
17 0000
18 0000
19
20 psect __Z63763RS_
21 0190
22 0190
23
24 psect text7
25 ;24LC04Q.C: 266: void EEBankSet(unsigned char b
+ uf)
26 ;24LC04Q.C: 267: {
27 0ECC _EEBankSet
28 ; _buf assigned to ?a_EEBankSet+0
29 0000 _EEBankSet$buf set ?a_EEBankSet
30 ;_buf stored from w
31 0ECC 0183 clrf 3 ;select bank 0
32 0ECD 00DC movwf ?a_EEBankSet
33 ;24LC04Q.C: 269: unsigned char start;
34 0ECE 00AF movwf _startad
35 ;24LC04Q.C: 271: temp=buf>>8;
36 0ECF 01B0 clrf _temp
37 ;24LC04Q.C: 272: temp=temp<<1;
38 0ED0 1003 bcf 3,0
39 0ED1 0DB0 rlf _temp
40 ;24LC04Q.C: 274: temp=temp|0xae;
41 0ED2 30AE movlw -82
42 0ED3 04B0 iorwf _temp
43 ;24LC04Q.C: 275: asm("nop");
44 0ED4 0000 nop ;#
45 ;24LC04Q.C: 277: }
46 0ED5 0008 return
47
48 psect text8
49 017A _BJ_EE_Card
50 ; _EEType assigned to ?a_BJ_EE_Card+0
51 0000 _BJ_EE_Card$EEType set ?a_BJ_EE_Card
52 ; _i assigned to ?a_BJ_EE_Card+1
53 0000 _BJ_EE_Card$i set ?a_BJ_EE_Card+1
54 ; _j assigned to ?a_BJ_EE_Card+3
55 0000 _BJ_EE_Card$j set ?a_BJ_EE_Card+3
56 ;_EEType stored from w
57 017A 0183 clrf 3 ;select bank 0
58 017B 00DF movwf ?a_BJ_EE_Card
59 ;24LC04Q.C: 286: int i,j;
60 017C 3A08 xorlw 8
61 017D 1D03 btfss 3,2
62 017E 29F9 goto l28
63 ;24LC04Q.C: 289: {
64 017F 01E0 clrf ?a_BJ_EE_Card+1
65 0180 01E1 clrf ?a_BJ_EE_Card+2
66 0181 l29
67 ;24LC04Q.C: 291: {
68 ;24LC04Q.C: 293: for (j=i;j<(i+15);j=j+3)
69 0181 0860 movf ?a_BJ_EE_Card+1,w
70 0182 00E2 movwf ?a_BJ_EE_Card+3
71 0183 0861 movf ?a_BJ_EE_Card+2,w
72 0184 00E3 movwf ?a_BJ_EE_Card+4
73 0185 l35
74 0185 0861 movf ?a_BJ_EE_Card+2,w
75 0186 00F3 movwf btemp+1
76 0187 0860 movf ?a_BJ_EE_Card+1,w
77 0188 00F2 movwf btemp
78 0189 300F movlw 15
79 018A 07F2 addwf btemp
80 018B 1803 btfsc 3,0
81 018C 0AF3 incf btemp+1
82 018D 0863 movf ?a_BJ_EE_Card+4,w
83 018E 3A80 xorlw 128
84 018F 00F4 movwf btemp+2
85 0190 0873 movf btemp+1,w
86 0191 3A80 xorlw 128
87 0192 0274 subwf btemp+2,w
88 0193 1D03 btfss 3,2
89 0194 2997 goto u205
90 0195 0872 movf btemp,w
91 0196 0262 subwf ?a_BJ_EE_Card+3,w
92 0197 u205
93 0197 1803 btfsc 3,0
94 0198 29E8 goto l33
95 ;24LC04Q.C: 294: if(iic_read(j)==BJ_EE_Buf[0] &
+ & iic_read(j+1)==BJ_EE_Buf[1] && iic_read(j+2)=
+ =BJ_EE_Buf[2])
96 0199 1283 bcf 3,5
97 019A 1303 bcf 3,6 ;carry unused
98 019B 0862 movf ?a_BJ_EE_Card+3,w
99 019C 00E4 movwf ?_iic_read
100 019D 0863 movf ?a_BJ_EE_Card+4,w
101 019E 00E5 movwf ?_iic_read+1
102 019F 120A 118A 268E fcall _iic_read
+ 120A 118A
103 01A4 00F2 movwf btemp
104 01A5 01F3 clrf btemp+1
105 01A6 085E movf ?_BJ_EE_Card,w
106 01A7 0084 movwf 4
107 01A8 1383 bcf 3,7
108 01A9 0800 movf 0,w
109 01AA 0672 xorwf btemp,w
110 01AB 0473 iorwf btemp+1,w
111 01AC 1D03 btfss 3,2
112 01AD 29E3 goto l36
113 01AE 3001 movlw 1
114 01AF 0762 addwf ?a_BJ_EE_Card+3,w
115 01B0 00E4 movwf ?_iic_read
116 01B1 3000 movlw 0
117 01B2 1803 btfsc 3,0
118 01B3 3001 movlw 1
119 01B4 0763 addwf ?a_BJ_EE_Card+4,w
120 01B5 00E5 movwf ?_iic_read+1
121 01B6 120A 118A 268E fcall _iic_read
+ 120A 118A
122 01BB 00F2 movwf btemp
123 01BC 01F3 clrf btemp+1
124 01BD 0A5E incf ?_BJ_EE_Card,w
125 01BE 0084 movwf 4
126 01BF 1383 bcf 3,7
127 01C0 0800 movf 0,w
128 01C1 0672 xorwf btemp,w
129 01C2 0473 iorwf btemp+1,w
130 01C3 1D03 btfss 3,2
131 01C4 29E3 goto l36
132 01C5 3002 movlw 2
133 01C6 0762 addwf ?a_BJ_EE_Card+3,w
134 01C7 00E4 movwf ?_iic_read
135 01C8 3000 movlw 0
136 01C9 1803 btfsc 3,0
137 01CA 3001 movlw 1
138 01CB 0763 addwf ?a_BJ_EE_Card+4,w
139 01CC 00E5 movwf ?_iic_read+1
140 01CD 120A 118A 268E fcall _iic_read
+ 120A 118A
141 01D2 00F2 movwf btemp
142 01D3 01F3 clrf btemp+1
143 01D4 085E movf ?_BJ_EE_Card,w
144 01D5 3E02 addlw 2
145 01D6 0084 movwf 4
146 01D7 1383 bcf 3,7
147 01D8 0800 movf 0,w
148 01D9 0672 xorwf btemp,w
149 01DA 0473 iorwf btemp+1,w
150 01DB 1D03 btfss 3,2
151 01DC 29E3 goto l36
152 ;24LC04Q.C: 295: {
153 01DD 0000 nop ;#
154 ;24LC04Q.C: 297: BJReAddr = j;
155 01DE 0862 movf ?a_BJ_EE_Card+3,w
156 01DF 00B3 movwf _BJReAddr
157 01E0 0863 movf ?a_BJ_EE_Card+4,w
158 01E1 00B4 movwf _BJReAddr+1
159 ;24LC04Q.C: 298: return 1;
160 01E2 3401 retlw 1
161 01E3 l36
162 ;24LC04Q.C: 299: }
163 01E3 3003 movlw 3
164 01E4 07E2 addwf ?a_BJ_EE_Card+3
165 01E5 1803 btfsc 3,0
166 01E6 0AE3 incf ?a_BJ_EE_Card+4
167 01E7 2985 goto l35
168 01E8 l33
169 01E8 3010 movlw 16
170 01E9 1283 bcf 3,5
171 01EA 1303 bcf 3,6 ;carry unused
172 01EB 07E0 addwf ?a_BJ_EE_Card+1
173 01EC 1803 btfsc 3,0
174 01ED 0AE1 incf ?a_BJ_EE_Card+2
175 01EE 0861 movf ?a_BJ_EE_Card+2,w
176 01EF 3A80 xorlw 128
177 01F0 00F2 movwf btemp
178 01F1 3084 movlw 132
179 01F2 0272 subwf btemp,w
180 01F3 3000 movlw 0
181 ;set bank bits for (((?a_BJ_EE_Card+1)))
182 01F4 1903 btfsc 3,2
183 01F5 0260 subwf ?a_BJ_EE_Card+1,w
184 01F6 1803 btfsc 3,0
185 01F7 3400 retlw 0
186 01F8 2981 goto l29
187 ;24LC04Q.C: 305: }
188 01F9 l28
189 01F9 085F movf ?a_BJ_EE_Card,w
190 01FA 3A20 xorlw 32
191 01FB 1903 btfsc 3,2
192 ;24LC04Q.C: 309: {
193 01FC 0000 nop ;#
194 ;24LC04Q.C: 314: }
195 01FD 3400 retlw 0
196
197 psect text11
198 ;24LC04Q.C: 388: void delay1ms(unsigned char co
+ unt)
199 ;24LC04Q.C: 389: {
200 0623 _delay1ms
201 ; _count assigned to ?a_delay1ms+0
202 0000 _delay1ms$count set ?a_delay1ms
203 ; _i assigned to ?a_delay1ms+1
204 0000 _delay1ms$i set ?a_delay1ms+1
205 ; _j assigned to ?a_delay1ms+2
206 0000 _delay1ms$j set ?a_delay1ms+2
207 ;_count stored from w
208 0623 0183 clrf 3 ;select bank 0
209 0624 00E6 movwf ?a_delay1ms
210 ;24LC04Q.C: 391: unsigned char i,j;
211 0625 01E7 clrf ?a_delay1ms+1
212 0626 2E2E goto l52
213 0627 l49
214 ;24LC04Q.C: 393: for(j=0;j<130;j++)
215 0627 01E8 clrf ?a_delay1ms+2
216 0628 l53
217 ;24LC04Q.C: 394: ;
218 0628 0AE8 incf ?a_delay1ms+2
219 0629 3082 movlw -126
220 062A 0268 subwf ?a_delay1ms+2,w
221 062B 1C03 btfss 3,0
222 062C 2E28 goto l53
223 062D 0AE7 incf ?a_delay1ms+1
224 062E l52
225 062E 0866 movf ?a_delay1ms,w
226 062F 0267 subwf ?a_delay1ms+1,w
227 0630 1803 btfsc 3,0
228 0631 0008 return
229 0632 2E27 goto l49
230 0633 _dlay
231 ;24LC04Q.C: 23: asm("nop");
232 0633 0000 nop ;#
233 ;24LC04Q.C: 24: asm("nop");
234 0634 0000 nop ;#
235 ;24LC04Q.C: 25: asm("nop");
236 0635 0000 nop ;#
237 ;24LC04Q.C: 26: asm("nop");
238 0636 0000 nop ;#
239 ;24LC04Q.C: 28: }
240 0637 0183 clrf 3 ;select bank 0
241 0638 0008 return
242 0639 _tx
243 ; _k assigned to ?a_tx+0
244 0000 _tx$k set ?a_tx
245 ; _temp assigned to ?a_tx+1
246 0000 _tx$temp set ?a_tx+1
247 ;_k stored from w
248 0639 0183 clrf 3 ;select bank 0
249 063A 00EE movwf ?a_tx
250 ;24LC04Q.C: 32: unsigned char temp=8;
251 063B 3008 movlw 8
252 063C 00EF movwf ?a_tx+1
253 ;24LC04Q.C: 33: err_flag=1;
254 063D 14A0 bsf _err_flag/(0+8),_err_flag& (0+7)
255 ;24LC04Q.C: 34: while(temp--)
256 063E 2E4D goto l3
257 063F l4
258 ;24LC04Q.C: 35: {
259 063F 1683 bsf 3,5
260 0640 1087 bcf 7,1
261 ;24LC04Q.C: 39: TRISC0=0;
262 0641 1007 bcf 7,0
263 ;24LC04Q.C: 40: dlay( );
264 0642 2633 fcall _dlay
265 ;24LC04Q.C: 41: if((k&0b10000000))
266 0643 1FEE btfss ?a_tx,7
267 0644 2E47 goto l6
268 ;24LC04Q.C: 42: {
269 0645 1407 bsf 7,0
270 ;24LC04Q.C: 45: }
271 0646 2E48 goto l7
272 0647 l6
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -