📄 motor_side.lst
字号:
228 04A1 0084 movwf 4
229 04A2 1383 bcf 3,7
230 04A3 0800 movf 0,w
231 04A4 00A4 movwf ?a_clear_zer0
232 ;motor_side.c: 185: eeprom_write(i * 2 + 1, val
+ ue_of_ad);
233 04A5 00BC movwf ?_eeprom_write
234 04A6 1403 bsf 3,0
235 04A7 0D25 rlf ?a_clear_zer0+1,w
236 04A8 120A 118A 20E2 fcall _eeprom_write
+ 120A 118A
237 ;motor_side.c: 186: delay(8,250);
238 04AD 3008 movlw 8
239 04AE 00CA movwf ?_delay
240 04AF 01CB clrf ?_delay+1
241 04B0 30FA movlw 250
242 04B1 00CC movwf ?_delay+2
243 04B2 01CD clrf ?_delay+3
244 04B3 2521 fcall _delay
245 ;motor_side.c: 187: }
246 04B4 0AA5 incf ?a_clear_zer0+1
247 04B5 3003 movlw 3
248 04B6 0225 subwf ?a_clear_zer0+1,w
249 04B7 1C03 btfss 3,0
250 04B8 2C84 goto l49
251 ;motor_side.c: 188: point = 0;
252 04B9 1020 bcf _point/(0+8),_point& (0+7)
253 ;motor_side.c: 189: display(0x1111);
254 04BA 3011 movlw 17
255 04BB 00BC movwf ?_display
256 04BC 00BD movwf ?_display+1
257 04BD 120A 118A 2126 fcall _display
+ 120A 118A
258 ;motor_side.c: 190: delay(1000,500);
259 04C2 30E8 movlw 232
260 04C3 00CA movwf ?_delay
261 04C4 3003 movlw 3
262 04C5 00CB movwf ?_delay+1
263 04C6 30F4 movlw 244
264 04C7 00CC movwf ?_delay+2
265 04C8 3001 movlw 1
266 04C9 00CD movwf ?_delay+3
267 04CA 2521 fcall _delay
268 ;motor_side.c: 191: point = 1;
269 04CB 1420 bsf _point/(0+8),_point& (0+7)
270 ;motor_side.c: 192: display(0xbb00);
271 04CC 01BC clrf ?_display
272 04CD 30BB movlw 187
273 04CE 00BD movwf ?_display+1
274 04CF 120A 118A 2926 ljmp _display
275 ;motor_side.c: 227: void check()
276 ;motor_side.c: 228: {
277 04D2 _check
278 ; _i assigned to ?a_check+0
279 0000 _check$i set ?a_check
280 ;motor_side.c: 229: unsigned short i;
281 04D2 2563 fcall _key_release
282 04D3 l57
283 ;motor_side.c: 232: while(1){
284 ;motor_side.c: 233: i = count_side(ad_adverage(
+ 1));
285 04D3 3001 movlw 1
286 04D4 241E fcall _ad_adverage
287 04D5 0870 movf btemp,w
288 04D6 00AF movwf ?_count_side
289 04D7 0871 movf btemp+1,w
290 04D8 00B0 movwf ?_count_side+1
291 04D9 120A 118A 217A fcall _count_side
292 04DC 0870 movf btemp,w
293 04DD 00A4 movwf ?a_check
294 04DE 0871 movf btemp+1,w
295 04DF 00A5 movwf ?a_check+1
296 ;motor_side.c: 237: send_data[0] = '*';
297 04E0 302A movlw 42
298 04E1 00D0 movwf _send_data
299 ;motor_side.c: 238: send_data[1] = ASCII[i >> 1
+ 2 & 0x0f];
300 04E2 3000 movlw _ASCII shr (0+8)
301 04E3 008A movwf 10
302 04E4 0E25 swapf ?a_check+1,w
303 04E5 390F andlw 15
304 04E6 206C call ((_ASCII+-1)& (0+2047))| (($)& (0+-2048))
305 04E7 00D1 movwf _send_data+1
306 ;motor_side.c: 239: send_data[2] = ASCII[i >> 8
+ & 0x0f];
307 04E8 3000 movlw _ASCII shr (0+8)
308 04E9 008A movwf 10
309 04EA 0825 movf ?a_check+1,w
310 04EB 390F andlw 15
311 04EC 206C call ((_ASCII+-1)& (0+2047))| (($)& (0+-2048))
312 04ED 00D2 movwf _send_data+2
313 ;motor_side.c: 240: send_data[3] = ASCII[i >> 4
+ & 0x0f];
314 04EE 3000 movlw _ASCII shr (0+8)
315 04EF 008A movwf 10
316 04F0 0E24 swapf ?a_check,w
317 04F1 390F andlw 15
318 04F2 206C call ((_ASCII+-1)& (0+2047))| (($)& (0+-2048))
319 04F3 00D3 movwf _send_data+3
320 ;motor_side.c: 241: send_data[4] = '.';
321 04F4 302E movlw 46
322 04F5 00D4 movwf _send_data+4
323 ;motor_side.c: 242: send_data[5] = ASCII[i & 0x
+ 0f];
324 04F6 3000 movlw _ASCII shr (0+8)
325 04F7 008A movwf 10
326 04F8 0824 movf ?a_check,w
327 04F9 390F andlw 15
328 04FA 206C call ((_ASCII+-1)& (0+2047))| (($)& (0+-2048))
329 04FB 00D5 movwf _send_data+5
330 ;motor_side.c: 243: send_data[6] = ' ';
331 04FC 3020 movlw 32
332 04FD 00D6 movwf _send_data+6
333 ;motor_side.c: 244: SendComputer(send_data,7);
334 04FE 3007 movlw 7
335 04FF 00AF movwf ?_SendComputer
336 0500 3050 movlw _send_data
337 0501 120A 118A 22EF fcall _SendComputer
338 ;motor_side.c: 245: point = 1;
339 0504 1420 bsf _point/(0+8),_point& (0+7)
340 ;motor_side.c: 246: display(i);
341 0505 0824 movf ?a_check,w
342 0506 00BC movwf ?_display
343 0507 0825 movf ?a_check+1,w
344 0508 00BD movwf ?_display+1
345 0509 120A 118A 2126 fcall _display
+ 120A 118A
346 ;motor_side.c: 248: if(!RB7){
347 050E 1B86 btfsc 6,7
348 050F 2CD3 goto l57
349 ;motor_side.c: 249: delay(8,250);
350 0510 3008 movlw 8
351 0511 00CA movwf ?_delay
352 0512 01CB clrf ?_delay+1
353 0513 30FA movlw 250
354 0514 00CC movwf ?_delay+2
355 0515 01CD clrf ?_delay+3
356 0516 2521 fcall _delay
357 ;motor_side.c: 250: if(!RB7){
358 0517 1B86 btfsc 6,7
359 0518 2CD3 goto l57
360 ;motor_side.c: 251: key_release();
361 0519 2563 fcall _key_release
362 ;motor_side.c: 252: break;
363 ;motor_side.c: 256: point = 1;
364 051A 1420 bsf _point/(0+8),_point& (0+7)
365 ;motor_side.c: 257: display(0xbb00);
366 051B 01BC clrf ?_display
367 051C 30BB movlw 187
368 051D 00BD movwf ?_display+1
369 051E 120A 118A 2926 ljmp _display
370 0521 _delay
371 ; _k assigned to ?a_delay+0
372 0000 _delay$k set ?a_delay
373 ;motor_side.c: 22: unsigned short k;
374 0521 0183 clrf 3 ;select bank 0
375 0522 084B movf ?_delay+1,w
376 0523 044A iorwf ?_delay,w
377 0524 1903 btfsc 3,2
378 0525 0008 return
379 0526 l2
380 ;motor_side.c: 25: k = j;
381 0526 084C movf ?_delay+2,w
382 0527 00CE movwf ?a_delay
383 0528 084D movf ?_delay+3,w
384 0529 00CF movwf ?a_delay+1
385 052A L1
386 ;motor_side.c: 26: for(; k > 0; k--){
387 052A 044E iorwf ?a_delay,w
388 052B 1903 btfsc 3,2
389 052C 2D37 goto l6
390 ;motor_side.c: 27: asm("nop");
391 052D 0000 nop ;#
392 ;motor_side.c: 28: asm("nop");
393 052E 0000 nop ;#
394 ;motor_side.c: 29: asm("nop");
395 052F 0000 nop ;#
396 ;motor_side.c: 30: asm("nop");
397 0530 0000 nop ;#
398 ;motor_side.c: 31: }
399 0531 08CE movf ?a_delay
400 0532 1903 btfsc 3,2
401 0533 03CF decf ?a_delay+1
402 0534 03CE decf ?a_delay
403 0535 084F movf ?a_delay+1,w
404 0536 2D2A goto L1
405 0537 l6
406 ;motor_side.c: 32: }
407 0537 08CA movf ?_delay
408 0538 1903 btfsc 3,2
409 0539 03CB decf ?_delay+1
410 053A 03CA decf ?_delay
411 053B 084B movf ?_delay+1,w
412 053C 044A iorwf ?_delay,w
413 053D 1903 btfsc 3,2
414 053E 0008 return
415 053F 2D26 goto l2
416 ;motor_side.c: 65: unsigned short adc_read(unsi
+ gned char channel)
417 ;motor_side.c: 66: {
418 0540 _adc_read
419 ; _channel assigned to ?a_adc_read+0
420 0000 _adc_read$channel set ?a_adc_read
421 ; _result assigned to ?a_adc_read+1
422 0000 _adc_read$result set ?a_adc_read+1
423 ;_channel stored from w
424 0540 0183 clrf 3 ;select bank 0
425 0541 00C7 movwf ?a_adc_read
426 ;motor_side.c: 67: unsigned short result = 0;
427 0542 01C8 clrf ?a_adc_read+1
428 0543 01C9 clrf ?a_adc_read+2
429 ;motor_side.c: 69: ADCON0 = (channel << 3) + 0x
+ 81;
430 0544 00F0 movwf btemp
431 0545 1003 bcf 3,0
432 0546 0DF0 rlf btemp
433 0547 1003 bcf 3,0
434 0548 0DF0 rlf btemp
435 0549 1003 bcf 3,0
436 054A 0D70 rlf btemp,w
437 054B 3E81 addlw -127
438 054C 009F movwf 31 ;volatile
439 ;motor_side.c: 70: delay(1,5);
440 054D 01CA clrf ?_delay
441 054E 0ACA incf ?_delay
442 054F 01CB clrf ?_delay+1
443 0550 3005 movlw 5
444 0551 00CC movwf ?_delay+2
445 0552 01CD clrf ?_delay+3
446 0553 2521 fcall _delay
447 ;motor_side.c: 71: ADIF = 0;
448 0554 130C bcf 12,6
449 ;motor_side.c: 72: ADGO = 1;
450 0555 151F bsf 31,2
451 ;motor_side.c: 73: while(ADIF == 0)
452 ;motor_side.c: 74: continue;
453 0556 l17
454 0556 1F0C btfss 12,6
455 0557 2D56 goto l17
456 ;motor_side.c: 75: result = (ADRESH << 8) + ADR
+ ESL;
457 0558 081E movf 30,w ;volatile
458 0559 00C9 movwf ?a_adc_read+2
459 055A 1683 bsf 3,5
460 055B 081E movf 30,w ;volatile
461 055C 1283 bcf 3,5
462 055D 00C8 movwf ?a_adc_read+1
463 ;motor_side.c: 76: return(result);
464 055E 0849 movf ?a_adc_read+2,w
465 055F 00F1 movwf btemp+1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -