📄 main.lss
字号:
main.elf: file format elf32-avr
Sections:
Idx Name Size VMA LMA File off Algn
0 .text 00000b1c 00000000 00000000 00000074 2**1
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .data 0000005a 00800060 00000b1c 00000b90 2**0
CONTENTS, ALLOC, LOAD, DATA
2 .bss 0000000f 008000ba 00000b76 00000bea 2**0
ALLOC
3 .stab 00000378 00000000 00000000 00000bec 2**2
CONTENTS, READONLY, DEBUGGING
4 .stabstr 0000005f 00000000 00000000 00000f64 2**0
CONTENTS, READONLY, DEBUGGING
5 .debug_aranges 00000020 00000000 00000000 00000fc3 2**0
CONTENTS, READONLY, DEBUGGING
6 .debug_pubnames 000001da 00000000 00000000 00000fe3 2**0
CONTENTS, READONLY, DEBUGGING
7 .debug_info 00000876 00000000 00000000 000011bd 2**0
CONTENTS, READONLY, DEBUGGING
8 .debug_abbrev 000002d4 00000000 00000000 00001a33 2**0
CONTENTS, READONLY, DEBUGGING
9 .debug_line 0000063d 00000000 00000000 00001d07 2**0
CONTENTS, READONLY, DEBUGGING
10 .debug_frame 00000120 00000000 00000000 00002344 2**2
CONTENTS, READONLY, DEBUGGING
11 .debug_str 00000236 00000000 00000000 00002464 2**0
CONTENTS, READONLY, DEBUGGING
12 .debug_loc 0000031b 00000000 00000000 0000269a 2**0
CONTENTS, READONLY, DEBUGGING
Disassembly of section .text:
00000000 <__vectors>:
0: 12 c0 rjmp .+36 ; 0x26 <__ctors_end>
2: 2c c0 rjmp .+88 ; 0x5c <__bad_interrupt>
4: 2b c0 rjmp .+86 ; 0x5c <__bad_interrupt>
6: 2a c0 rjmp .+84 ; 0x5c <__bad_interrupt>
8: 93 c1 rjmp .+806 ; 0x330 <__vector_4>
a: 28 c0 rjmp .+80 ; 0x5c <__bad_interrupt>
c: 27 c0 rjmp .+78 ; 0x5c <__bad_interrupt>
e: 26 c0 rjmp .+76 ; 0x5c <__bad_interrupt>
10: 45 c0 rjmp .+138 ; 0x9c <__vector_8>
12: 24 c0 rjmp .+72 ; 0x5c <__bad_interrupt>
14: 23 c0 rjmp .+70 ; 0x5c <__bad_interrupt>
16: 22 c0 rjmp .+68 ; 0x5c <__bad_interrupt>
18: 21 c0 rjmp .+66 ; 0x5c <__bad_interrupt>
1a: 20 c0 rjmp .+64 ; 0x5c <__bad_interrupt>
1c: 1f c0 rjmp .+62 ; 0x5c <__bad_interrupt>
1e: 1e c0 rjmp .+60 ; 0x5c <__bad_interrupt>
20: 1d c0 rjmp .+58 ; 0x5c <__bad_interrupt>
22: 1c c0 rjmp .+56 ; 0x5c <__bad_interrupt>
24: 1b c0 rjmp .+54 ; 0x5c <__bad_interrupt>
00000026 <__ctors_end>:
26: 11 24 eor r1, r1
28: 1f be out 0x3f, r1 ; 63
2a: cf e5 ldi r28, 0x5F ; 95
2c: d4 e0 ldi r29, 0x04 ; 4
2e: de bf out 0x3e, r29 ; 62
30: cd bf out 0x3d, r28 ; 61
00000032 <__do_copy_data>:
32: 10 e0 ldi r17, 0x00 ; 0
34: a0 e6 ldi r26, 0x60 ; 96
36: b0 e0 ldi r27, 0x00 ; 0
38: ec e1 ldi r30, 0x1C ; 28
3a: fb e0 ldi r31, 0x0B ; 11
3c: 02 c0 rjmp .+4 ; 0x42 <.do_copy_data_start>
0000003e <.do_copy_data_loop>:
3e: 05 90 lpm r0, Z+
40: 0d 92 st X+, r0
00000042 <.do_copy_data_start>:
42: aa 3b cpi r26, 0xBA ; 186
44: b1 07 cpc r27, r17
46: d9 f7 brne .-10 ; 0x3e <.do_copy_data_loop>
00000048 <__do_clear_bss>:
48: 10 e0 ldi r17, 0x00 ; 0
4a: aa eb ldi r26, 0xBA ; 186
4c: b0 e0 ldi r27, 0x00 ; 0
4e: 01 c0 rjmp .+2 ; 0x52 <.do_clear_bss_start>
00000050 <.do_clear_bss_loop>:
50: 1d 92 st X+, r1
00000052 <.do_clear_bss_start>:
52: a9 3c cpi r26, 0xC9 ; 201
54: b1 07 cpc r27, r17
56: e1 f7 brne .-8 ; 0x50 <.do_clear_bss_loop>
58: 29 d2 rcall .+1106 ; 0x4ac <main>
5a: 5f c5 rjmp .+2750 ; 0xb1a <_exit>
0000005c <__bad_interrupt>:
5c: d1 cf rjmp .-94 ; 0x0 <__vectors>
0000005e <delay_nms>:
5e: ac 01 movw r20, r24
60: 20 e0 ldi r18, 0x00 ; 0
62: 30 e0 ldi r19, 0x00 ; 0
64: 06 c0 rjmp .+12 ; 0x72 <delay_nms+0x14>
66: 80 ed ldi r24, 0xD0 ; 208
68: 97 e0 ldi r25, 0x07 ; 7
6a: 01 97 sbiw r24, 0x01 ; 1
6c: f1 f7 brne .-4 ; 0x6a <delay_nms+0xc>
6e: 2f 5f subi r18, 0xFF ; 255
70: 3f 4f sbci r19, 0xFF ; 255
72: 24 17 cp r18, r20
74: 35 07 cpc r19, r21
76: b9 f7 brne .-18 ; 0x66 <delay_nms+0x8>
78: 08 95 ret
0000007a <IO_INIT>:
7a: 87 b3 in r24, 0x17 ; 23
7c: 8f 60 ori r24, 0x0F ; 15
7e: 87 bb out 0x17, r24 ; 23
80: 88 b3 in r24, 0x18 ; 24
82: 8f 70 andi r24, 0x0F ; 15
84: 88 bb out 0x18, r24 ; 24
86: 84 b3 in r24, 0x14 ; 20
88: 84 bb out 0x14, r24 ; 20
8a: 85 b3 in r24, 0x15 ; 21
8c: 15 ba out 0x15, r1 ; 21
8e: 81 b3 in r24, 0x11 ; 17
90: 8c 6d ori r24, 0xDC ; 220
92: 81 bb out 0x11, r24 ; 17
94: 82 b3 in r24, 0x12 ; 18
96: 8c 7d andi r24, 0xDC ; 220
98: 82 bb out 0x12, r24 ; 18
9a: 08 95 ret
0000009c <__vector_8>:
9c: 1f 92 push r1
9e: 0f 92 push r0
a0: 0f b6 in r0, 0x3f ; 63
a2: 0f 92 push r0
a4: 11 24 eor r1, r1
a6: 8f 93 push r24
a8: 80 91 c1 00 lds r24, 0x00C1
ac: 8f 5f subi r24, 0xFF ; 255
ae: 80 93 c1 00 sts 0x00C1, r24
b2: 8f 91 pop r24
b4: 0f 90 pop r0
b6: 0f be out 0x3f, r0 ; 63
b8: 0f 90 pop r0
ba: 1f 90 pop r1
bc: 18 95 reti
000000be <WriteDataTo595>:
be: 97 98 cbi 0x12, 7 ; 18
c0: 90 e0 ldi r25, 0x00 ; 0
c2: c0 98 cbi 0x18, 0 ; 24
c4: 80 ff sbrs r24, 0
c6: 02 c0 rjmp .+4 ; 0xcc <WriteDataTo595+0xe>
c8: 96 9a sbi 0x12, 6 ; 18
ca: 01 c0 rjmp .+2 ; 0xce <WriteDataTo595+0x10>
cc: 96 98 cbi 0x12, 6 ; 18
ce: c0 9a sbi 0x18, 0 ; 24
d0: 9f 5f subi r25, 0xFF ; 255
d2: 98 30 cpi r25, 0x08 ; 8
d4: 11 f0 breq .+4 ; 0xda <WriteDataTo595+0x1c>
d6: 86 95 lsr r24
d8: f4 cf rjmp .-24 ; 0xc2 <WriteDataTo595+0x4>
da: 81 e0 ldi r24, 0x01 ; 1
dc: 90 e0 ldi r25, 0x00 ; 0
de: 01 97 sbiw r24, 0x01 ; 1
e0: f1 f7 brne .-4 ; 0xde <WriteDataTo595+0x20>
e2: 97 9a sbi 0x12, 7 ; 18
e4: 08 95 ret
000000e6 <WriteDataLCD>:
e6: e0 ed ldi r30, 0xD0 ; 208
e8: f7 e0 ldi r31, 0x07 ; 7
ea: 31 97 sbiw r30, 0x01 ; 1
ec: f1 f7 brne .-4 ; 0xea <WriteDataLCD+0x4>
ee: e7 df rcall .-50 ; 0xbe <WriteDataTo595>
f0: 92 9a sbi 0x12, 2 ; 18
f2: 93 98 cbi 0x12, 3 ; 18
f4: 94 98 cbi 0x12, 4 ; 18
f6: 81 e0 ldi r24, 0x01 ; 1
f8: 90 e0 ldi r25, 0x00 ; 0
fa: 01 97 sbiw r24, 0x01 ; 1
fc: f1 f7 brne .-4 ; 0xfa <WriteDataLCD+0x14>
fe: 94 9a sbi 0x12, 4 ; 18
100: 08 95 ret
00000102 <WriteCommandLCD>:
102: e0 ed ldi r30, 0xD0 ; 208
104: f7 e0 ldi r31, 0x07 ; 7
106: 31 97 sbiw r30, 0x01 ; 1
108: f1 f7 brne .-4 ; 0x106 <WriteCommandLCD+0x4>
10a: d9 df rcall .-78 ; 0xbe <WriteDataTo595>
10c: 92 98 cbi 0x12, 2 ; 18
10e: 93 98 cbi 0x12, 3 ; 18
110: 94 98 cbi 0x12, 4 ; 18
112: 81 e0 ldi r24, 0x01 ; 1
114: 90 e0 ldi r25, 0x00 ; 0
116: 01 97 sbiw r24, 0x01 ; 1
118: f1 f7 brne .-4 ; 0x116 <WriteCommandLCD+0x14>
11a: 94 9a sbi 0x12, 4 ; 18
11c: 08 95 ret
0000011e <LCDInit>:
11e: cf 93 push r28
120: df 93 push r29
122: 80 e0 ldi r24, 0x00 ; 0
124: cc df rcall .-104 ; 0xbe <WriteDataTo595>
126: 88 e3 ldi r24, 0x38 ; 56
128: ec df rcall .-40 ; 0x102 <WriteCommandLCD>
12a: 20 e0 ldi r18, 0x00 ; 0
12c: 30 e0 ldi r19, 0x00 ; 0
12e: c0 ed ldi r28, 0xD0 ; 208
130: d7 e0 ldi r29, 0x07 ; 7
132: ce 01 movw r24, r28
134: 01 97 sbiw r24, 0x01 ; 1
136: f1 f7 brne .-4 ; 0x134 <LCDInit+0x16>
138: 2f 5f subi r18, 0xFF ; 255
13a: 3f 4f sbci r19, 0xFF ; 255
13c: 2f 30 cpi r18, 0x0F ; 15
13e: 31 05 cpc r19, r1
140: b1 f7 brne .-20 ; 0x12e <LCDInit+0x10>
142: 88 e3 ldi r24, 0x38 ; 56
144: de df rcall .-68 ; 0x102 <WriteCommandLCD>
146: ce 01 movw r24, r28
148: 01 97 sbiw r24, 0x01 ; 1
14a: f1 f7 brne .-4 ; 0x148 <LCDInit+0x2a>
14c: ce 01 movw r24, r28
14e: 01 97 sbiw r24, 0x01 ; 1
150: f1 f7 brne .-4 ; 0x14e <LCDInit+0x30>
152: ce 01 movw r24, r28
154: 01 97 sbiw r24, 0x01 ; 1
156: f1 f7 brne .-4 ; 0x154 <LCDInit+0x36>
158: ce 01 movw r24, r28
15a: 01 97 sbiw r24, 0x01 ; 1
15c: f1 f7 brne .-4 ; 0x15a <LCDInit+0x3c>
15e: ce 01 movw r24, r28
160: 01 97 sbiw r24, 0x01 ; 1
162: f1 f7 brne .-4 ; 0x160 <LCDInit+0x42>
164: 88 e3 ldi r24, 0x38 ; 56
166: cd df rcall .-102 ; 0x102 <WriteCommandLCD>
168: ce 01 movw r24, r28
16a: 01 97 sbiw r24, 0x01 ; 1
16c: f1 f7 brne .-4 ; 0x16a <LCDInit+0x4c>
16e: ce 01 movw r24, r28
170: 01 97 sbiw r24, 0x01 ; 1
172: f1 f7 brne .-4 ; 0x170 <LCDInit+0x52>
174: ce 01 movw r24, r28
176: 01 97 sbiw r24, 0x01 ; 1
178: f1 f7 brne .-4 ; 0x176 <LCDInit+0x58>
17a: ce 01 movw r24, r28
17c: 01 97 sbiw r24, 0x01 ; 1
17e: f1 f7 brne .-4 ; 0x17c <LCDInit+0x5e>
180: 21 97 sbiw r28, 0x01 ; 1
182: f1 f7 brne .-4 ; 0x180 <LCDInit+0x62>
184: 88 e3 ldi r24, 0x38 ; 56
186: bd df rcall .-134 ; 0x102 <WriteCommandLCD>
188: 88 e0 ldi r24, 0x08 ; 8
18a: bb df rcall .-138 ; 0x102 <WriteCommandLCD>
18c: 81 e0 ldi r24, 0x01 ; 1
18e: b9 df rcall .-142 ; 0x102 <WriteCommandLCD>
190: 86 e0 ldi r24, 0x06 ; 6
192: b7 df rcall .-146 ; 0x102 <WriteCommandLCD>
194: 8c e0 ldi r24, 0x0C ; 12
196: b5 df rcall .-150 ; 0x102 <WriteCommandLCD>
198: df 91 pop r29
19a: cf 91 pop r28
19c: 08 95 ret
0000019e <DisplayOneChar>:
19e: 1f 93 push r17
1a0: 14 2f mov r17, r20
1a2: 8f 70 andi r24, 0x0F ; 15
1a4: 60 fd sbrc r22, 0
1a6: 80 64 ori r24, 0x40 ; 64
1a8: 80 68 ori r24, 0x80 ; 128
1aa: ab df rcall .-170 ; 0x102 <WriteCommandLCD>
1ac: 81 2f mov r24, r17
1ae: 9b df rcall .-202 ; 0xe6 <WriteDataLCD>
1b0: 1f 91 pop r17
1b2: 08 95 ret
000001b4 <DisplayListChar>:
1b4: ff 92 push r15
1b6: 0f 93 push r16
1b8: 1f 93 push r17
1ba: cf 93 push r28
1bc: df 93 push r29
1be: 06 2f mov r16, r22
1c0: ea 01 movw r28, r20
1c2: 01 70 andi r16, 0x01 ; 1
1c4: 18 2f mov r17, r24
1c6: 1f 70 andi r17, 0x0F ; 15
1c8: ff 24 eor r15, r15
1ca: 07 c0 rjmp .+14 ; 0x1da <DisplayListChar+0x26>
1cc: 10 31 cpi r17, 0x10 ; 16
1ce: 28 f4 brcc .+10 ; 0x1da <DisplayListChar+0x26>
1d0: 60 2f mov r22, r16
1d2: 81 2f mov r24, r17
1d4: e4 df rcall .-56 ; 0x19e <DisplayOneChar>
1d6: f3 94 inc r15
1d8: 1f 5f subi r17, 0xFF ; 255
1da: fe 01 movw r30, r28
1dc: ef 0d add r30, r15
1de: f1 1d adc r31, r1
1e0: 40 81 ld r20, Z
1e2: 40 32 cpi r20, 0x20 ; 32
1e4: 98 f7 brcc .-26 ; 0x1cc <DisplayListChar+0x18>
1e6: df 91 pop r29
1e8: cf 91 pop r28
1ea: 1f 91 pop r17
1ec: 0f 91 pop r16
1ee: ff 90 pop r15
1f0: 08 95 ret
000001f2 <LCD_ON>:
1f2: 20 e0 ldi r18, 0x00 ; 0
1f4: 30 e0 ldi r19, 0x00 ; 0
1f6: 80 ed ldi r24, 0xD0 ; 208
1f8: 97 e0 ldi r25, 0x07 ; 7
1fa: 01 97 sbiw r24, 0x01 ; 1
1fc: f1 f7 brne .-4 ; 0x1fa <LCD_ON+0x8>
1fe: 2f 5f subi r18, 0xFF ; 255
200: 3f 4f sbci r19, 0xFF ; 255
202: 81 e0 ldi r24, 0x01 ; 1
204: 20 39 cpi r18, 0x90 ; 144
206: 38 07 cpc r19, r24
208: b1 f7 brne .-20 ; 0x1f6 <LCD_ON+0x4>
20a: 89 df rcall .-238 ; 0x11e <LCDInit>
20c: 20 e0 ldi r18, 0x00 ; 0
20e: 30 e0 ldi r19, 0x00 ; 0
210: 80 ed ldi r24, 0xD0 ; 208
212: 97 e0 ldi r25, 0x07 ; 7
214: 01 97 sbiw r24, 0x01 ; 1
216: f1 f7 brne .-4 ; 0x214 <LCD_ON+0x22>
218: 2f 5f subi r18, 0xFF ; 255
21a: 3f 4f sbci r19, 0xFF ; 255
21c: 24 36 cpi r18, 0x64 ; 100
21e: 31 05 cpc r19, r1
220: b9 f7 brne .-18 ; 0x210 <LCD_ON+0x1e>
222: 49 e6 ldi r20, 0x69 ; 105
224: 50 e0 ldi r21, 0x00 ; 0
226: 60 e0 ldi r22, 0x00 ; 0
228: 80 e0 ldi r24, 0x00 ; 0
22a: c4 df rcall .-120 ; 0x1b4 <DisplayListChar>
22c: 4a e9 ldi r20, 0x9A ; 154
22e: 50 e0 ldi r21, 0x00 ; 0
230: 65 e0 ldi r22, 0x05 ; 5
232: 80 e0 ldi r24, 0x00 ; 0
234: bf df rcall .-130 ; 0x1b4 <DisplayListChar>
236: 08 95 ret
00000238 <Uart_Init>:
238: 88 e1 ldi r24, 0x18 ; 24
23a: 8a b9 out 0x0a, r24 ; 10
23c: 83 e3 ldi r24, 0x33 ; 51
23e: 89 b9 out 0x09, r24 ; 9
240: 8b ea ldi r24, 0xAB ; 171
242: 90 e0 ldi r25, 0x00 ; 0
244: 90 93 c6 00 sts 0x00C6, r25
248: 80 93 c5 00 sts 0x00C5, r24
24c: 90 93 c4 00 sts 0x00C4, r25
250: 80 93 c3 00 sts 0x00C3, r24
254: 08 95 ret
00000256 <System_putchar>:
256: 1f 93 push r17
258: 18 2f mov r17, r24
25a: 80 91 c2 00 lds r24, 0x00C2
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -