test1.elf: file format elf32-avr Sections: Idx Name Size VMA LMA File off Algn 0 .text 000000e8 00000000 00000000 00000054 2**1 CONTENTS, ALLOC, LOAD, READONLY, CODE 1 .stab 00000360 00000000 00000000 0000013c 2**2 CONTENTS, READONLY, DEBUGGING 2 .stabstr 00000071 00000000 00000000 0000049c 2**0 CONTENTS, READONLY, DEBUGGING 3 .debug_aranges 00000020 00000000 00000000 0000050d 2**0 CONTENTS, READONLY, DEBUGGING 4 .debug_pubnames 00000024 00000000 00000000 0000052d 2**0 CONTENTS, READONLY, DEBUGGING 5 .debug_info 00000141 00000000 00000000 00000551 2**0 CONTENTS, READONLY, DEBUGGING 6 .debug_abbrev 00000070 00000000 00000000 00000692 2**0 CONTENTS, READONLY, DEBUGGING 7 .debug_line 000000e1 00000000 00000000 00000702 2**0 CONTENTS, READONLY, DEBUGGING 8 .debug_frame 00000030 00000000 00000000 000007e4 2**2 CONTENTS, READONLY, DEBUGGING Disassembly of section .text: 00000000 <__vectors>: 0: 0b c0 rjmp .+22 ; 0x18 <__ctors_end> 2: 24 c0 rjmp .+72 ; 0x4c <__bad_interrupt> 4: 23 c0 rjmp .+70 ; 0x4c <__bad_interrupt> 6: 22 c0 rjmp .+68 ; 0x4c <__bad_interrupt> 8: 21 c0 rjmp .+66 ; 0x4c <__bad_interrupt> a: 20 c0 rjmp .+64 ; 0x4c <__bad_interrupt> c: 1f c0 rjmp .+62 ; 0x4c <__bad_interrupt> e: 1e c0 rjmp .+60 ; 0x4c <__bad_interrupt> 10: 1d c0 rjmp .+58 ; 0x4c <__bad_interrupt> 12: 1c c0 rjmp .+56 ; 0x4c <__bad_interrupt> 14: 1b c0 rjmp .+54 ; 0x4c <__bad_interrupt> 16: 1a c0 rjmp .+52 ; 0x4c <__bad_interrupt> 00000018 <__ctors_end>: 18: 11 24 eor r1, r1 1a: 1f be out 0x3f, r1 ; 63 1c: cf ed ldi r28, 0xDF ; 223 1e: cd bf out 0x3d, r28 ; 61 00000020 <__do_copy_data>: 20: 10 e0 ldi r17, 0x00 ; 0 22: a0 e6 ldi r26, 0x60 ; 96 24: b0 e0 ldi r27, 0x00 ; 0 26: e8 ee ldi r30, 0xE8 ; 232 28: f0 e0 ldi r31, 0x00 ; 0 2a: 03 c0 rjmp .+6 ; 0x32 <.do_copy_data_start> 0000002c <.do_copy_data_loop>: 2c: c8 95 lpm 2e: 31 96 adiw r30, 0x01 ; 1 30: 0d 92 st X+, r0 00000032 <.do_copy_data_start>: 32: a0 36 cpi r26, 0x60 ; 96 34: b1 07 cpc r27, r17 36: d1 f7 brne .-12 ; 0x2c <.do_copy_data_loop> 00000038 <__do_clear_bss>: 38: 10 e0 ldi r17, 0x00 ; 0 3a: a0 e6 ldi r26, 0x60 ; 96 3c: b0 e0 ldi r27, 0x00 ; 0 3e: 01 c0 rjmp .+2 ; 0x42 <.do_clear_bss_start> 00000040 <.do_clear_bss_loop>: 40: 1d 92 st X+, r1 00000042 <.do_clear_bss_start>: 42: a0 36 cpi r26, 0x60 ; 96 44: b1 07 cpc r27, r17 46: e1 f7 brne .-8 ; 0x40 <.do_clear_bss_loop> 48: 02 d0 rcall .+4 ; 0x4e
4a: 4d c0 rjmp .+154 ; 0xe6 <_exit> 0000004c <__bad_interrupt>: 4c: d9 cf rjmp .-78 ; 0x0 <__vectors> 0000004e
: #include void wait(void); int main(void) { 4e: cf 93 push r28 50: df 93 push r29 52: cd b7 in r28, 0x3d ; 61 54: de b7 in r29, 0x3e ; 62 //---初期化 //PA7を出力に変更 DDRA |= _BV(7); 56: aa e3 ldi r26, 0x3A ; 58 58: b0 e0 ldi r27, 0x00 ; 0 5a: ea e3 ldi r30, 0x3A ; 58 5c: f0 e0 ldi r31, 0x00 ; 0 5e: 80 81 ld r24, Z 60: 80 68 ori r24, 0x80 ; 128 62: 8c 93 st X, r24 //--- //---処理ループ while(1) { //PA7 ON PORTA |=_BV(7); 64: ab e3 ldi r26, 0x3B ; 59 66: b0 e0 ldi r27, 0x00 ; 0 68: eb e3 ldi r30, 0x3B ; 59 6a: f0 e0 ldi r31, 0x00 ; 0 6c: 80 81 ld r24, Z 6e: 80 68 ori r24, 0x80 ; 128 70: 8c 93 st X, r24 //WAIT wait(); 72: 0a d0 rcall .+20 ; 0x88 //PA7 OFF PORTA &=~_BV(7); 74: ab e3 ldi r26, 0x3B ; 59 76: b0 e0 ldi r27, 0x00 ; 0 78: eb e3 ldi r30, 0x3B ; 59 7a: f0 e0 ldi r31, 0x00 ; 0 7c: 90 81 ld r25, Z 7e: 8f e7 ldi r24, 0x7F ; 127 80: 89 23 and r24, r25 82: 8c 93 st X, r24 //WAIT wait(); 84: 01 d0 rcall .+2 ; 0x88 } 86: ee cf rjmp .-36 ; 0x64 00000088 : //--- } void wait(void) { 88: cf 93 push r28 8a: df 93 push r29 8c: cd b7 in r28, 0x3d ; 61 8e: de b7 in r29, 0x3e ; 62 90: 24 97 sbiw r28, 0x04 ; 4 92: 0f b6 in r0, 0x3f ; 63 94: f8 94 cli 96: de bf out 0x3e, r29 ; 62 98: 0f be out 0x3f, r0 ; 63 9a: cd bf out 0x3d, r28 ; 61 for(uint32_t i=0;i<100000;i++){ 9c: 19 82 std Y+1, r1 ; 0x01 9e: 1a 82 std Y+2, r1 ; 0x02 a0: 1b 82 std Y+3, r1 ; 0x03 a2: 1c 82 std Y+4, r1 ; 0x04 a4: 0b c0 rjmp .+22 ; 0xbc a6: 89 81 ldd r24, Y+1 ; 0x01 a8: 9a 81 ldd r25, Y+2 ; 0x02 aa: ab 81 ldd r26, Y+3 ; 0x03 ac: bc 81 ldd r27, Y+4 ; 0x04 ae: 01 96 adiw r24, 0x01 ; 1 b0: a1 1d adc r26, r1 b2: b1 1d adc r27, r1 b4: 89 83 std Y+1, r24 ; 0x01 b6: 9a 83 std Y+2, r25 ; 0x02 b8: ab 83 std Y+3, r26 ; 0x03 ba: bc 83 std Y+4, r27 ; 0x04 bc: 89 81 ldd r24, Y+1 ; 0x01 be: 9a 81 ldd r25, Y+2 ; 0x02 c0: ab 81 ldd r26, Y+3 ; 0x03 c2: bc 81 ldd r27, Y+4 ; 0x04 c4: 80 3a cpi r24, 0xA0 ; 160 c6: 26 e8 ldi r18, 0x86 ; 134 c8: 92 07 cpc r25, r18 ca: 21 e0 ldi r18, 0x01 ; 1 cc: a2 07 cpc r26, r18 ce: 20 e0 ldi r18, 0x00 ; 0 d0: b2 07 cpc r27, r18 d2: 48 f3 brcs .-46 ; 0xa6 d4: 24 96 adiw r28, 0x04 ; 4 d6: 0f b6 in r0, 0x3f ; 63 d8: f8 94 cli da: de bf out 0x3e, r29 ; 62 dc: 0f be out 0x3f, r0 ; 63 de: cd bf out 0x3d, r28 ; 61 e0: df 91 pop r29 e2: cf 91 pop r28 e4: 08 95 ret 000000e6 <_exit>: e6: ff cf rjmp .-2 ; 0xe6 <_exit>