📄 lcd.lst
字号:
539 0162 8491 lpm r24, Z
540
541 /* #NOAPP */
542 .LBE3:
543 0164 0E94 0000 call write_command
106:APP1/lcd.c **** write_data(p/10);
545 .LM46:
546 0168 1AE0 ldi r17,lo8(10)
547 016a 8F2D mov r24,r15
548 016c 612F mov r22,r17
549 016e 0E94 0000 call __udivmodqi4
550 0172 0E94 0000 call write_data
107:APP1/lcd.c **** write_data(p%10);
552 .LM47:
553 0176 8F2D mov r24,r15
554 0178 612F mov r22,r17
555 017a 0E94 0000 call __udivmodqi4
556 017e 892F mov r24,r25
557 0180 0E94 0000 call write_data
108:APP1/lcd.c **** write_data('%');
559 .LM48:
560 0184 85E2 ldi r24,lo8(37)
561 0186 0E94 0000 call write_data
562 /* epilogue: frame size=0 */
563 018a 1F91 pop r17
564 018c 0F91 pop r16
565 018e FF90 pop r15
566 0190 0895 ret
567 /* epilogue end (size=4) */
568 /* function display_1str size 47 (40) */
573 .Lscope6:
578 .global display_str2
580 display_str2:
109:APP1/lcd.c **** }
110:APP1/lcd.c **** void display_str2(unsigned char row,unsigned char column,char *p)
111:APP1/lcd.c **** {
582 .LM49:
583 /* prologue: frame size=0 */
584 0192 FF92 push r15
585 0194 0F93 push r16
586 0196 1F93 push r17
587 0198 CF93 push r28
588 019a DF93 push r29
589 /* prologue end (size=5) */
590 019c 182F mov r17,r24
591 019e 062F mov r16,r22
592 01a0 EA01 movw r28,r20
112:APP1/lcd.c **** unsigned char j,i=0;
594 .LM50:
595 01a2 FF24 clr r15
113:APP1/lcd.c **** j=1;
114:APP1/lcd.c **** write_command(0x30);
597 .LM51:
598 01a4 80E3 ldi r24,lo8(48)
599 01a6 0E94 0000 call write_command
600 .LBB4:
115:APP1/lcd.c **** //write_command(adress_table[row*8+column]);
116:APP1/lcd.c **** write_command(pgm_read_byte(adress_table+row*8+column));
602 .LM52:
603 01aa E12F mov r30,r17
604 01ac FF27 clr r31
605 01ae 23E0 ldi r18,3
606 01b0 EE0F 1: lsl r30
607 01b2 FF1F rol r31
608 01b4 2A95 dec r18
609 01b6 E1F7 brne 1b
610 01b8 E00F add r30,r16
611 01ba F11D adc r31,__zero_reg__
612 01bc E050 subi r30,lo8(-(adress_table))
613 01be F040 sbci r31,hi8(-(adress_table))
614 /* #APP */
615 01c0 8491 lpm r24, Z
616
617 /* #NOAPP */
618 .LBE4:
619 01c2 0E94 0000 call write_command
620 .L57:
621 .LBB5:
117:APP1/lcd.c **** while((j)!='\0')
118:APP1/lcd.c **** {j=pgm_read_byte(p+i);
623 .LM53:
624 01c6 FE01 movw r30,r28
625 01c8 EF0D add r30,r15
626 01ca F11D adc r31,__zero_reg__
627 /* #APP */
628 01cc 1491 lpm r17, Z
629
630 /* #NOAPP */
631 .LBE5:
119:APP1/lcd.c **** write_data(j);
633 .LM54:
634 01ce 812F mov r24,r17
635 01d0 0E94 0000 call write_data
120:APP1/lcd.c **** i++;
637 .LM55:
638 01d4 F394 inc r15
639 01d6 1123 tst r17
640 01d8 B1F7 brne .L57
641 /* epilogue: frame size=0 */
642 01da DF91 pop r29
643 01dc CF91 pop r28
644 01de 1F91 pop r17
645 01e0 0F91 pop r16
646 01e2 FF90 pop r15
647 01e4 0895 ret
648 /* epilogue end (size=6) */
649 /* function display_str2 size 48 (37) */
661 .Lscope7:
663 .global setpic
665 setpic:
121:APP1/lcd.c **** }
122:APP1/lcd.c **** }
123:APP1/lcd.c ****
124:APP1/lcd.c ****
125:APP1/lcd.c **** void setpic(void)
126:APP1/lcd.c **** {
667 .LM56:
668 /* prologue: frame size=0 */
669 01e6 1F93 push r17
670 01e8 CF93 push r28
671 /* prologue end (size=2) */
127:APP1/lcd.c **** unsigned char i,j;
128:APP1/lcd.c **** LCD_Init();
673 .LM57:
674 01ea 0E94 0000 call LCD_Init
129:APP1/lcd.c **** write_command(0x34);
676 .LM58:
677 01ee 84E3 ldi r24,lo8(52)
678 01f0 0E94 0000 call write_command
130:APP1/lcd.c **** write_command(0x3c);// RE=1 扩展指令选择 G=1 开图形显示
680 .LM59:
681 01f4 8CE3 ldi r24,lo8(60)
682 01f6 0E94 0000 call write_command
131:APP1/lcd.c ****
132:APP1/lcd.c **** for(j=0;j<16;j++)
684 .LM60:
685 01fa 10E0 ldi r17,lo8(0)
686 .L68:
133:APP1/lcd.c **** for(i=0;i<32;i++)
688 .LM61:
689 01fc C0E0 ldi r28,lo8(0)
690 .L67:
134:APP1/lcd.c **** {
135:APP1/lcd.c **** write_command(0x80+i);
692 .LM62:
693 01fe 8C2F mov r24,r28
694 0200 8058 subi r24,lo8(-(-128))
695 0202 0E94 0000 call write_command
136:APP1/lcd.c **** write_command(0x80+j);
697 .LM63:
698 0206 812F mov r24,r17
699 0208 8058 subi r24,lo8(-(-128))
700 020a 0E94 0000 call write_command
137:APP1/lcd.c **** write_data(0x00);
702 .LM64:
703 020e 80E0 ldi r24,lo8(0)
704 0210 0E94 0000 call write_data
138:APP1/lcd.c **** write_data(0x00);
706 .LM65:
707 0214 80E0 ldi r24,lo8(0)
708 0216 0E94 0000 call write_data
710 .LM66:
711 021a CF5F subi r28,lo8(-(1))
712 021c C032 cpi r28,lo8(32)
713 021e 78F3 brlo .L67
715 .LM67:
716 0220 1F5F subi r17,lo8(-(1))
717 0222 1031 cpi r17,lo8(16)
718 0224 58F3 brlo .L68
139:APP1/lcd.c **** }
140:APP1/lcd.c **** write_command(0x3e);
720 .LM68:
721 0226 8EE3 ldi r24,lo8(62)
722 0228 0E94 0000 call write_command
723 /* epilogue: frame size=0 */
724 022c CF91 pop r28
725 022e 1F91 pop r17
726 0230 0895 ret
727 /* epilogue end (size=3) */
728 /* function setpic size 38 (33) */
734 .Lscope8:
736 .global settxt
738 settxt:
141:APP1/lcd.c **** }
142:APP1/lcd.c **** /************************开文本函数***************************/
143:APP1/lcd.c **** void settxt(void)
144:APP1/lcd.c **** {
740 .LM69:
741 /* prologue: frame size=0 */
742 /* prologue end (size=0) */
145:APP1/lcd.c **** write_command(0x30); //功能设置 8位数据,基本指令集
744 .LM70:
745 0232 80E3 ldi r24,lo8(48)
746 0234 0E94 0000 call write_command
747 /* epilogue: frame size=0 */
748 0238 0895 ret
749 /* epilogue end (size=1) */
750 /* function settxt size 4 (3) */
752 .Lscope9:
754 .global hello
756 hello:
146:APP1/lcd.c ****
147:APP1/lcd.c **** }
148:APP1/lcd.c **** void hello(void)
149:APP1/lcd.c **** {
758 .LM71:
759 /* prologue: frame size=0 */
760 /* prologue end (size=0) */
150:APP1/lcd.c **** display_str(0,0,character1);
762 .LM72:
763 023a 40E0 ldi r20,lo8(character1)
764 023c 50E0 ldi r21,hi8(character1)
765 023e 60E0 ldi r22,lo8(0)
766 0240 862F mov r24,r22
767 0242 0E94 0000 call display_str
768 /* epilogue: frame size=0 */
769 0246 0895 ret
770 /* epilogue end (size=1) */
771 /* function hello size 7 (6) */
773 .Lscope10:
791 .text
793 Letext:
794 /* File "APP1/lcd.c": code 304 = 0x0130 ( 254), prologues 20, epilogues 30 */
DEFINED SYMBOLS
*ABS*:00000000 lcd.c
*ABS*:0000003f __SREG__
*ABS*:0000003e __SP_H__
*ABS*:0000003d __SP_L__
*ABS*:00000000 __tmp_reg__
*ABS*:00000001 __zero_reg__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:73 .progmem.data:00000000 adress_table
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:109 .progmem.data:00000020 sse
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:114 .progmem.data:00000031 ssd
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:119 .progmem.data:00000042 ssa
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:124 .progmem.data:00000053 ssb
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:130 .data:00000000 character12
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:135 .data:00000011 character11
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:140 .data:00000022 character10
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:145 .data:00000033 character9
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:150 .data:00000044 character8
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:155 .data:00000055 character7
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:160 .data:00000066 character6
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:165 .data:00000077 character5
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:170 .data:00000088 character4
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:175 .data:00000099 character3
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:180 .data:000000aa character2
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:185 .data:000000bb character1
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:192 .text:00000000 delay
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:221 .text:0000000a write_byte
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:295 .text:0000005a write_command
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:334 .text:0000007e write_data
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:372 .text:000000a2 LCD_Init
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:438 .text:000000ee display_str
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:509 .text:0000013a display_1str
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:580 .text:00000192 display_str2
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:665 .text:000001e6 setpic
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:738 .text:00000232 settxt
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:756 .text:0000023a hello
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccmUaaaa.s:793 .text:00000248 Letext
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__udivmodqi4
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -