📄 1602lcd.lst
字号:
252 06A8 1803 btfsc 3,0
253 06A9 2EA7 goto l26
254 ;1602lcd.c: 84: RE1=0;
255 06AA 1089 bcf 9,1
256 ;1602lcd.c: 85: RE0=0;
257 06AB 1009 bcf 9,0
258 ;1602lcd.c: 86: RE2=0;
259 06AC 1109 bcf 9,2
260 ;1602lcd.c: 87: TRISC=0X00;
261 06AD 1683 bsf 3,5
262 06AE 0187 clrf 7 ;volatile
263 ;1602lcd.c: 88: PORTC=0x02;
264 06AF 3002 movlw 2
265 06B0 1283 bcf 3,5
266 06B1 0087 movwf 7 ;volatile
267 ;1602lcd.c: 89: delay_us(100);
268 06B2 3064 movlw 100
269 06B3 25F3 call _delay_us
270 ;1602lcd.c: 90: RE2=1;
271 06B4 1509 bsf 9,2
272 ;1602lcd.c: 91: RE2=0;
273 06B5 1109 bcf 9,2
274 ;1602lcd.c: 92: }
275 06B6 0008 return ;W free
276
277 psect text7
278 060A _gotoxy
279 ;1602lcd.c: 93: void gotoxy(unsigned x,unsigned
+ y)
280 060A 0183 clrf 3 ;select bank 0
281 060B 0327 decf ?_gotoxy,w
282 060C 0428 iorwf ?_gotoxy+1,w
283 060D 1D03 btfss 3,2
284 060E 2E11 goto l30
285 ;1602lcd.c: 96: write_LCD_command(128+y);
286 060F 3080 movlw 128
287 0610 2E12 goto L1
288 0611 l30
289 ;1602lcd.c: 97: else
290 0611 30C0 movlw 192
291 0612 L1
292 0612 0729 addwf ?_gotoxy+2,w
293 0613 00AB movwf ?_write_LCD_command
294 0614 3000 movlw 0
295 0615 1803 btfsc 3,0
296 0616 3001 movlw 1
297 0617 072A addwf ?_gotoxy+3,w
298 0618 00AC movwf ?_write_LCD_command+1
299 0619 2E1A goto l14
300
301 psect text8
302 0651 _display_LCD_string
303 ;1602lcd.c: 100: void display_LCD_string(const
+ char *p)
304 0651 2E5E goto l33
305 0652 l34
306 ;1602lcd.c: 103: {
307 0652 0828 movf ?_display_LCD_string+1,w
308 0653 00B9 movwf code_ptr+1
309 0654 0827 movf ?_display_LCD_string,w
310 0655 2001 call string_table
311 0656 00B5 movwf ?_write_LCD_data
312 0657 01B6 clrf ?_write_LCD_data+1
313 0658 262C call _write_LCD_data
314 ;1602lcd.c: 105: p++;
315 0659 0AA7 incf ?_display_LCD_string
316 065A 1903 btfsc 3,2
317 065B 0AA8 incf ?_display_LCD_string+1
318 ;1602lcd.c: 106: delay_us(50);
319 065C 3032 movlw 50
320 065D 25F3 call _delay_us
321 065E l33
322 065E 1283 bcf 3,5
323 065F 1303 bcf 3,6 ;carry unused
324 0660 0828 movf ?_display_LCD_string+1,w
325 0661 00B9 movwf code_ptr+1
326 0662 0827 movf ?_display_LCD_string,w
327 0663 2001 call string_table
328 0664 3800 iorlw 0
329 0665 1903 btfsc 3,2
330 0666 0008 return
331 0667 2E52 goto l34
332
333 psect text9
334 06E6 _display_LCD_number
335 ; _i assigned to ?a_display_LCD_number+0
336 0000 _display_LCD_number$i set ?a_display_LCD_number
337 ; _temp assigned to ?a_display_LCD_number+1
338 0000 _display_LCD_number$temp set ?a_display_LCD_num
+ ber+1
339 ;1602lcd.c: 109: void display_LCD_number(long i
+ nt number)
340 06E6 0183 clrf 3 ;select bank 0
341 06E7 01AB clrf ?a_display_LCD_number
342 ;1602lcd.c: 111: unsigned char temp[8];
343 06E8 01AB clrf ?a_display_LCD_number
344 06E9 l37
345 ;1602lcd.c: 113: {
346 06E9 082B movf ?a_display_LCD_number,w
347 06EA 3E2C addlw ?a_display_LCD_number+1
348 06EB 0084 movwf 4
349 06EC 1383 bcf 3,7
350 06ED 300A movlw 10
351 06EE 0080 movwf 0
352 06EF 0AAB incf ?a_display_LCD_number
353 06F0 3007 movlw 7
354 06F1 022B subwf ?a_display_LCD_number,w
355 06F2 1C03 btfss 3,0
356 06F3 2EE9 goto l37
357 ;1602lcd.c: 115: }
358 06F4 01AB clrf ?a_display_LCD_number
359 ;1602lcd.c: 117: while(number/10)
360 06F5 l40
361 06F5 300A movlw 10
362 06F6 00F8 movwf btemp+4
363 06F7 01F9 clrf btemp+5
364 06F8 01FA clrf btemp+6
365 06F9 01FB clrf btemp+7
366 06FA 0827 movf ?_display_LCD_number,w
367 06FB 00F4 movwf btemp
368 06FC 0828 movf ?_display_LCD_number+1,w
369 06FD 00F5 movwf btemp+1
370 06FE 0829 movf ?_display_LCD_number+2,w
371 06FF 00F6 movwf btemp+2
372 0700 082A movf ?_display_LCD_number+3,w
373 0701 00F7 movwf btemp+3
374 0702 274F call aldiv
375 0703 0877 movf btemp+3,w
376 0704 0476 iorwf btemp+2,w
377 0705 0475 iorwf btemp+1,w
378 0706 0474 iorwf btemp,w
379 0707 1903 btfsc 3,2
380 0708 2F2C goto l42
381 ;1602lcd.c: 118: {
382 0709 300A movlw 10
383 070A 00F8 movwf btemp+4
384 070B 01F9 clrf btemp+5
385 070C 01FA clrf btemp+6
386 070D 01FB clrf btemp+7
387 070E 0827 movf ?_display_LCD_number,w
388 070F 00F4 movwf btemp
389 0710 0828 movf ?_display_LCD_number+1,w
390 0711 00F5 movwf btemp+1
391 0712 0829 movf ?_display_LCD_number+2,w
392 0713 00F6 movwf btemp+2
393 0714 082A movf ?_display_LCD_number+3,w
394 0715 00F7 movwf btemp+3
395 0716 274F call almod
396 0717 0878 movf btemp+4,w
397 0718 00B4 movwf ?a_display_LCD_number+9
398 0719 082B movf ?a_display_LCD_number,w
399 071A 3E2C addlw ?a_display_LCD_number+1
400 071B 0084 movwf 4
401 071C 1383 bcf 3,7
402 071D 0834 movf ?a_display_LCD_number+9,w
403 071E 0080 movwf 0
404 ;1602lcd.c: 120: number=number/10;
405 071F 300A movlw 10
406 0720 00F8 movwf btemp+4
407 0721 01F9 clrf btemp+5
408 0722 01FA clrf btemp+6
409 0723 01FB clrf btemp+7
410 0724 3027 movlw ?_display_LCD_number
411 0725 0084 movwf 4
412 0726 1383 bcf 3,7
413 0727 2743 call aldiv_f
414 ;1602lcd.c: 121: i++;
415 0728 1283 bcf 3,5
416 0729 1303 bcf 3,6 ;carry unused
417 072A 0AAB incf ?a_display_LCD_number
418 072B 2EF5 goto l40
419 072C l42
420 ;1602lcd.c: 122: }
421 072C 082B movf ?a_display_LCD_number,w
422 072D 3E2C addlw ?a_display_LCD_number+1
423 072E 0084 movwf 4
424 072F 1383 bcf 3,7
425 0730 0827 movf ?_display_LCD_number,w
426 0731 0080 movwf 0
427 ;1602lcd.c: 124: i=i+1;
428 0732 0AAB incf ?a_display_LCD_number
429 ;1602lcd.c: 125: while(i--)
430 0733 2F3F goto l43
431 0734 l44
432 ;1602lcd.c: 126: {
433 0734 3000 movlw _int2charLCD shr (0+8)
434 0735 008A movwf 10
435 0736 082B movf ?a_display_LCD_number,w
436 0737 3E2C addlw ?a_display_LCD_number+1
437 0738 0084 movwf 4
438 0739 1383 bcf 3,7
439 073A 0800 movf 0,w
440 073B 2022 call ((_int2charLCD+-1)& (0+2047))| (($)& (0+-
+ 2048))
441 073C pagesel $
442 073C 00B5 movwf ?_write_LCD_data
443 073D 01B6 clrf ?_write_LCD_data+1
444 073E 262C call _write_LCD_data
445 073F l43
446 073F 03AB decf ?a_display_LCD_number
447 0740 0F2B incfsz ?a_display_LCD_number,w
448 0741 2F34 goto l44
449 0742 0008 return
450
451 psect rbit_0
452 0100 F535
F535
453 0100 ds 1
454 0000
455 0000
456 0000
457 0000
458 0000
459 0000
460 0000
461 0000
462 0000
463 0000
464 0000
465 0000
466 0000
467 0000
468 0000
469 0000
470 0000
471 0000
472 0000
473 0000
474 0000
475 0000
476 0000
477 0000
478 0000
479 0000
480 0000
481 0000
482 0000
483 0000
484 0000
485 0000
486 0000
487 0000
488 0000
489 0000
490 0000
491 0000
492 0000
493 0000
494 0000
495 0000
496 0000
497 0000
498 0000
499 0000
500 0000
501 0000
502 0000
503 0000
504 0000
505 0000
506 0000
507 0000
508 0000
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -