📄 main.lss
字号:
main.elf: file format elf32-avr
Sections:
Idx Name Size VMA LMA File off Algn
0 .text 00000a6a 00000000 00000000 00000074 2**1
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .data 00000006 00800060 00000a6a 00000ade 2**0
CONTENTS, ALLOC, LOAD, DATA
2 .bss 00000004 00800066 00000a70 00000ae4 2**0
ALLOC
3 .debug_aranges 00000040 00000000 00000000 00000ae4 2**0
CONTENTS, READONLY, DEBUGGING
4 .debug_pubnames 0000009a 00000000 00000000 00000b24 2**0
CONTENTS, READONLY, DEBUGGING
5 .debug_info 0000065c 00000000 00000000 00000bbe 2**0
CONTENTS, READONLY, DEBUGGING
6 .debug_abbrev 00000299 00000000 00000000 0000121a 2**0
CONTENTS, READONLY, DEBUGGING
7 .debug_line 00000568 00000000 00000000 000014b3 2**0
CONTENTS, READONLY, DEBUGGING
8 .debug_frame 00000080 00000000 00000000 00001a1c 2**2
CONTENTS, READONLY, DEBUGGING
9 .debug_str 00000194 00000000 00000000 00001a9c 2**0
CONTENTS, READONLY, DEBUGGING
10 .debug_loc 000002f5 00000000 00000000 00001c30 2**0
CONTENTS, READONLY, DEBUGGING
11 .debug_ranges 00000048 00000000 00000000 00001f25 2**0
CONTENTS, READONLY, DEBUGGING
Disassembly of section .text:
00000000 <__vectors>:
0: 0c 94 ea 02 jmp 0x5d4 ; 0x5d4 <__ctors_end>
4: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
8: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
c: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
10: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
14: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
18: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
1c: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
20: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
24: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
28: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
2c: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
30: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
34: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
38: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
3c: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
40: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
44: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
48: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
4c: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
50: 0c 94 07 03 jmp 0x60e ; 0x60e <__bad_interrupt>
00000054 <word_mode>:
54: 00 00 00 20 30 10 10 10 10 10 18 08 08 f8 fc 0c ... 0...........
64: 04 04 06 06 06 06 83 83 02 00 00 00 00 00 00 00 ................
74: 00 00 00 08 08 08 08 08 0c 0c 0c 0c 04 ff ff 04 ................
84: 06 06 06 02 02 02 03 83 83 c0 c0 c0 80 80 00 00 ................
94: 00 0c 0c 04 04 04 06 06 06 02 02 02 02 ff ff 03 ................
a4: 03 01 01 01 01 01 01 01 00 00 00 e0 e0 00 00 00 ................
...
c0: 00 07 0f 08 08 08 08 08 08 08 08 08 08 08 0c 0f ................
d0: 0f 06 00 00 00 80 80 80 80 80 80 ff ff 81 c0 e0 ................
e0: e0 80 00 80 80 80 80 80 ff ff 81 80 80 c0 e0 e0 ................
f0: c0 80 00 00 00 00 00 00 c0 f0 7e ff ff 18 30 f0 ..........~...0.
100: e0 00 00 00 80 e0 fc 1f ff ff 3f f8 c0 00 00 00 ..........?.....
110: 00 00 00 00 20 30 1c 0f 03 01 00 ff ff 00 00 80 .... 0..........
120: c0 70 38 1e 07 01 00 00 ff ff 00 00 03 0f 1e 3c .p8............<
130: 38 30 20 00 00 00 00 00 00 00 00 1f 1f 00 00 00 80 .............
...
148: 1f 1f 00 00 00 00 00 00 00 00 00 00 00 02 02 82 ................
158: 82 02 02 02 02 ff ff 06 00 00 00 ff ff 82 82 82 ................
168: 82 82 82 82 82 ff ff 02 00 00 00 00 00 80 e0 ff ................
178: bf 81 81 81 c1 c7 87 00 00 f8 f8 13 13 10 10 10 ................
188: ff ff 10 10 10 11 f9 f8 10 00 00 00 00 00 00 01 ................
198: 01 00 00 80 ff ff 00 00 00 1f 1f 04 04 04 04 04 ................
1a8: ff ff 04 04 24 64 cf cf 80 00 00 00 00 02 06 04 ....$d..........
1b8: 0c 0c 0e 07 03 00 00 04 06 06 06 06 02 02 02 02 ................
1c8: 03 03 03 03 01 01 01 03 0f 0f 00 00 ............
000001d4 <picture_mode>:
...
260: 80 f0 fc fc fc fc fc fc f0 80 0c 7c fc fc fc f8 ...........|....
270: e0 00 00 00 00 00 00 e0 fc fc fc fc 3c 00 80 f0 ............<...
280: fc fc fc fc 7c 7c 7c fc fc fc f8 f0 c0 00 00 00 ....|||.........
...
2b0: 00 00 80 80 80 80 80 80 80 80 80 80 80 80 80 80 ................
2c0: 80 80 80 80 80 80 80 80 80 80 00 00 00 00 00 00 ................
...
2dc: 00 00 e0 fc ff ff ff ff 0f 07 3f ff ff ff fc e0 ..........?.....
2ec: 81 0f 7f ff ff ff f8 c0 c0 fc ff ff ff 7f 0f 01 ................
2fc: e0 fc ff ff ff ff ff f1 f8 f8 fc ff 7f 7f 3f 1f ..............?.
30c: 03 00 00 00 00 00 00 00 80 f8 fc 38 00 00 00 00 ...........8....
...
32c: 00 00 c0 f0 f8 fb 03 ff ff f7 fb fb 3b fb fb 3b ............;..;
33c: fb fb 03 fb fb 9b 9b 9b 9b 03 fb fb 03 03 00 00 ................
...
358: 00 00 00 80 f0 fe ff ff ff 1f 1f 1f 1f 1f 1f 1f ................
368: 1f 3f ff ff ff fc e0 03 1f 7f ff ff ff ff ff 1f .?..............
378: 03 c0 f8 ff ff ff ff 1f 03 01 0f ff ff ff ff fc ................
388: c0 00 00 80 c0 c0 c0 c0 e0 c0 c0 c0 81 9f f0 c0 ................
398: c0 c0 80 80 80 80 c0 e0 60 e0 e0 c0 80 00 00 00 ........`.......
3a8: 00 00 00 30 3e 3f 3f 31 3f 3f 30 3f 3f 3f 3f 3f ...0>??1??0?????
3b8: 30 3f 3f 30 3f 3f 30 3f 3f 39 39 39 39 30 3f 3f 0??0??0??99990??
3c8: 30 30 30 00 00 00 00 00 00 00 00 00 00 00 00 00 000.............
3d8: 00 00 00 00 01 01 01 01 00 00 00 00 00 00 00 00 ................
3e8: 00 00 00 01 01 01 01 00 00 00 03 1f 3f 07 00 00 ............?...
3f8: 00 01 01 01 01 01 00 00 00 00 00 00 01 01 01 01 ................
408: 01 00 00 01 03 01 01 00 00 00 00 00 01 0f ff ef ................
418: cf ff fd fd ff ff ff ff ff ff f9 f9 1f 0f 1c 7c ...............|
428: c0 c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
...
45c: 00 00 00 40 40 40 c0 e0 20 e0 e0 20 60 40 00 00 ...@@@.. .. `@..
46c: 00 80 e0 60 a0 e0 c0 c0 40 40 c0 c0 00 80 80 c0 ...`....@@......
47c: e0 a0 80 80 e0 e0 80 80 80 00 00 00 00 00 00 00 ................
48c: 00 00 00 00 00 00 00 1e f7 e7 73 3f bf ff ff ff ..........s?....
49c: ff ff ff ff ff ff 7f 1f 00 00 00 00 00 00 00 00 ................
...
4dc: 00 00 00 11 91 99 ff ff 4d 6f 3f 79 cd e5 e1 00 ........Mo?y....
4ec: 02 ff ff 00 ff ff 00 00 80 80 ff ff 00 ff ff 48 ...............H
4fc: 48 ff ff 07 9d 98 80 ff 7f 00 00 00 00 00 00 00 H...............
...
514: 01 13 1f 1e 0f fd f9 00 01 01 01 01 00 00 00 00 ................
...
000005d4 <__ctors_end>:
5d4: 11 24 eor r1, r1
5d6: 1f be out 0x3f, r1 ; 63
5d8: cf e5 ldi r28, 0x5F ; 95
5da: d8 e0 ldi r29, 0x08 ; 8
5dc: de bf out 0x3e, r29 ; 62
5de: cd bf out 0x3d, r28 ; 61
000005e0 <__do_copy_data>:
5e0: 10 e0 ldi r17, 0x00 ; 0
5e2: a0 e6 ldi r26, 0x60 ; 96
5e4: b0 e0 ldi r27, 0x00 ; 0
5e6: ea e6 ldi r30, 0x6A ; 106
5e8: fa e0 ldi r31, 0x0A ; 10
5ea: 02 c0 rjmp .+4 ; 0x5f0 <.do_copy_data_start>
000005ec <.do_copy_data_loop>:
5ec: 05 90 lpm r0, Z+
5ee: 0d 92 st X+, r0
000005f0 <.do_copy_data_start>:
5f0: a6 36 cpi r26, 0x66 ; 102
5f2: b1 07 cpc r27, r17
5f4: d9 f7 brne .-10 ; 0x5ec <.do_copy_data_loop>
000005f6 <__do_clear_bss>:
5f6: 10 e0 ldi r17, 0x00 ; 0
5f8: a6 e6 ldi r26, 0x66 ; 102
5fa: b0 e0 ldi r27, 0x00 ; 0
5fc: 01 c0 rjmp .+2 ; 0x600 <.do_clear_bss_start>
000005fe <.do_clear_bss_loop>:
5fe: 1d 92 st X+, r1
00000600 <.do_clear_bss_start>:
600: aa 36 cpi r26, 0x6A ; 106
602: b1 07 cpc r27, r17
604: e1 f7 brne .-8 ; 0x5fe <.do_clear_bss_loop>
606: 0e 94 09 03 call 0x612 ; 0x612 <main>
60a: 0c 94 33 05 jmp 0xa66 ; 0xa66 <_exit>
0000060e <__bad_interrupt>:
60e: 0c 94 00 00 jmp 0 ; 0x0 <__vectors>
00000612 <main>:
#include "config.h"
#include "lcd.h"
#include "word.h"
int main(void)
{
612: ff 92 push r15
614: 0f 93 push r16
616: 1f 93 push r17
618: cf 93 push r28
61a: df 93 push r29
milliseconds can be achieved.
*/
void
_delay_loop_2(uint16_t __count)
{
__asm__ volatile (
61c: 80 e3 ldi r24, 0x30 ; 48
61e: 95 e7 ldi r25, 0x75 ; 117
620: fc 01 movw r30, r24
622: 31 97 sbiw r30, 0x01 ; 1
624: f1 f7 brne .-4 ; 0x622 <main+0x10>
unsigned char i;
unsigned char *p;
_delay_ms(10);
_delay_ms(10);
IO_init();
626: 01 97 sbiw r24, 0x01 ; 1
628: f1 f7 brne .-4 ; 0x626 <main+0x14>
62a: 9f ef ldi r25, 0xFF ; 255
62c: 95 bb out 0x15, r25 ; 21
62e: 8f ed ldi r24, 0xDF ; 223
630: 82 bb out 0x12, r24 ; 18
632: 94 bb out 0x14, r25 ; 20
634: 91 bb out 0x11, r25 ; 17
clr_LCD_RST;
636: 92 98 cbi 0x12, 2 ; 18
638: 88 eb ldi r24, 0xB8 ; 184
63a: 9b e0 ldi r25, 0x0B ; 11
63c: 01 97 sbiw r24, 0x01 ; 1
63e: f1 f7 brne .-4 ; 0x63c <main+0x2a>
_delay_ms(1);
set_LCD_RST;
640: 92 9a sbi 0x12, 2 ; 18
p = (unsigned char *) malloc(64);
642: 80 e4 ldi r24, 0x40 ; 64
644: 90 e0 ldi r25, 0x00 ; 0
646: 0e 94 31 04 call 0x862 ; 0x862 <malloc>
64a: 09 2f mov r16, r25
64c: 28 2f mov r18, r24
64e: 39 2f mov r19, r25
650: f8 2e mov r15, r24
652: c9 01 movw r24, r18
654: fc 01 movw r30, r24
for (i=0; i<64 ; i++ ) p[i] = 0xaa;
656: 2a ea ldi r18, 0xAA ; 170
658: 80 5c subi r24, 0xC0 ; 192
65a: 9f 4f sbci r25, 0xFF ; 255
65c: 21 93 st Z+, r18
65e: e8 17 cp r30, r24
660: f9 07 cpc r31, r25
662: e1 f7 brne .-8 ; 0x65c <main+0x4a>
lcd_write_cmd(LCD_DIS_ON);
664: 8f e3 ldi r24, 0x3F ; 63
666: 0e 94 c0 03 call 0x780 ; 0x780 <lcd_write_cmd>
SELECT_ALL;
66a: 94 9a sbi 0x12, 4 ; 18
66c: 93 9a sbi 0x12, 3 ; 18
66e: 10 e0 ldi r17, 0x00 ; 0
for (i=0; i<8 ;i++ )
lcd_write_data(i,0,p,64);
670: 20 e4 ldi r18, 0x40 ; 64
672: 4f 2d mov r20, r15
674: 50 2f mov r21, r16
676: 60 e0 ldi r22, 0x00 ; 0
678: 81 2f mov r24, r17
67a: 0e 94 d2 03 call 0x7a4 ; 0x7a4 <lcd_write_data>
lcd_write_cmd(LCD_DIS_ON);
SELECT_ALL;
for (i=0; i<8 ;i++ )
67e: 1f 5f subi r17, 0xFF ; 255
680: 18 30 cpi r17, 0x08 ; 8
682: b1 f7 brne .-20 ; 0x670 <main+0x5e>
684: 20 e0 ldi r18, 0x00 ; 0
686: 48 ec ldi r20, 0xC8 ; 200
688: 5f ea ldi r21, 0xAF ; 175
68a: ca 01 movw r24, r20
68c: 01 97 sbiw r24, 0x01 ; 1
68e: f1 f7 brne .-4 ; 0x68c <main+0x7a>
lcd_write_data(i,0,p,64);
for (i=0; i<100 ;i++ ) _delay_ms(15);
690: 2f 5f subi r18, 0xFF ; 255
692: 24 36 cpi r18, 0x64 ; 100
694: d1 f7 brne .-12 ; 0x68a <main+0x78>
free(p);
696: 8f 2d mov r24, r15
698: 90 2f mov r25, r16
69a: 0e 94 db 04 call 0x9b6 ; 0x9b6 <free>
SELECT_LEFT;
69e: 94 9a sbi 0x12, 4 ; 18
6a0: 93 98 cbi 0x12, 3 ; 18
6a2: c4 e5 ldi r28, 0x54 ; 84
6a4: d0 e0 ldi r29, 0x00 ; 0
6a6: 10 e0 ldi r17, 0x00 ; 0
for (i=0 ; i<4 ; i++)
{
//lcd_write_data(i,0,&word_mode[0][i*32],32);
//lcd_write_data(i,32,&word_mode[1][i*32],32);
write(i,0,&word_mode[0][i*32],32);
6a8: 20 e2 ldi r18, 0x20 ; 32
6aa: 30 e0 ldi r19, 0x00 ; 0
6ac: ae 01 movw r20, r28
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -