📄 main.lss
字号:
main.elf: file format elf32-avr
Sections:
Idx Name Size VMA LMA File off Algn
0 .text 000000ae 00000000 00000000 00000054 2**1
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .debug_aranges 00000020 00000000 00000000 00000102 2**0
CONTENTS, READONLY, DEBUGGING
2 .debug_pubnames 0000001b 00000000 00000000 00000122 2**0
CONTENTS, READONLY, DEBUGGING
3 .debug_info 00000080 00000000 00000000 0000013d 2**0
CONTENTS, READONLY, DEBUGGING
4 .debug_abbrev 0000004a 00000000 00000000 000001bd 2**0
CONTENTS, READONLY, DEBUGGING
5 .debug_line 0000008b 00000000 00000000 00000207 2**0
CONTENTS, READONLY, DEBUGGING
6 .debug_frame 00000020 00000000 00000000 00000294 2**2
CONTENTS, READONLY, DEBUGGING
7 .debug_str 00000087 00000000 00000000 000002b4 2**0
CONTENTS, READONLY, DEBUGGING
Disassembly of section .text:
00000000 <__vectors>:
0: 0c 94 2a 00 jmp 0x54 ; 0x54 <__ctors_end>
4: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
8: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
c: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
10: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
14: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
18: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
1c: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
20: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
24: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
28: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
2c: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
30: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
34: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
38: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
3c: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
40: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
44: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
48: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
4c: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
50: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt>
00000054 <__ctors_end>:
54: 11 24 eor r1, r1
56: 1f be out 0x3f, r1 ; 63
58: cf e5 ldi r28, 0x5F ; 95
5a: d8 e0 ldi r29, 0x08 ; 8
5c: de bf out 0x3e, r29 ; 62
5e: cd bf out 0x3d, r28 ; 61
00000060 <__do_copy_data>:
60: 10 e0 ldi r17, 0x00 ; 0
62: a0 e6 ldi r26, 0x60 ; 96
64: b0 e0 ldi r27, 0x00 ; 0
66: ee ea ldi r30, 0xAE ; 174
68: f0 e0 ldi r31, 0x00 ; 0
6a: 02 c0 rjmp .+4 ; 0x70 <.do_copy_data_start>
0000006c <.do_copy_data_loop>:
6c: 05 90 lpm r0, Z+
6e: 0d 92 st X+, r0
00000070 <.do_copy_data_start>:
70: a0 36 cpi r26, 0x60 ; 96
72: b1 07 cpc r27, r17
74: d9 f7 brne .-10 ; 0x6c <.do_copy_data_loop>
00000076 <__do_clear_bss>:
76: 10 e0 ldi r17, 0x00 ; 0
78: a0 e6 ldi r26, 0x60 ; 96
7a: b0 e0 ldi r27, 0x00 ; 0
7c: 01 c0 rjmp .+2 ; 0x80 <.do_clear_bss_start>
0000007e <.do_clear_bss_loop>:
7e: 1d 92 st X+, r1
00000080 <.do_clear_bss_start>:
80: a0 36 cpi r26, 0x60 ; 96
82: b1 07 cpc r27, r17
84: e1 f7 brne .-8 ; 0x7e <.do_clear_bss_loop>
86: 0e 94 49 00 call 0x92 ; 0x92 <main>
8a: 0c 94 55 00 jmp 0xaa ; 0xaa <_exit>
0000008e <__bad_interrupt>:
8e: 0c 94 00 00 jmp 0 ; 0x0 <__vectors>
00000092 <main>:
int main(void)
{
DDRB = (1<<PINB5)|(1<<PINB7)|(1<<PINB4);
92: 80 eb ldi r24, 0xB0 ; 176
94: 87 bb out 0x17, r24 ; 23
/* Enable SPI, Master, set clock rate fck/16 */
SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR0);
96: 81 e5 ldi r24, 0x51 ; 81
98: 8d b9 out 0x0d, r24 ; 13
DDRA=0; // PORTA as input
9a: 1a ba out 0x1a, r1 ; 26
while (1){
cbi(PORTB, 4);
9c: c4 98 cbi 0x18, 4 ; 24
SPDR = PINA;// read the data from PORTA and transmit it through SPI
9e: 89 b3 in r24, 0x19 ; 25
a0: 8f b9 out 0x0f, r24 ; 15
/* Wait for transmission complete */
while(!(SPSR & (1<<SPIF))){}
a2: 77 9b sbis 0x0e, 7 ; 14
a4: fe cf rjmp .-4 ; 0xa2 <main+0x10>
sbi(PORTB, 4);
a6: c4 9a sbi 0x18, 4 ; 24
a8: f9 cf rjmp .-14 ; 0x9c <main+0xa>
000000aa <_exit>:
aa: f8 94 cli
000000ac <__stop_program>:
ac: ff cf rjmp .-2 ; 0xac <__stop_program>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -