⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.lss

📁 Simple program to control stepper motor using AVR atmega32 Microcontroller
💻 LSS
字号:

main.elf:     file format elf32-avr

Sections:
Idx Name          Size      VMA       LMA       File off  Algn
  0 .text         0000010a  00000000  00000000  00000054  2**1
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
  1 .debug_aranges 00000020  00000000  00000000  0000015e  2**0
                  CONTENTS, READONLY, DEBUGGING
  2 .debug_pubnames 0000002a  00000000  00000000  0000017e  2**0
                  CONTENTS, READONLY, DEBUGGING
  3 .debug_info   000000b1  00000000  00000000  000001a8  2**0
                  CONTENTS, READONLY, DEBUGGING
  4 .debug_abbrev 0000006c  00000000  00000000  00000259  2**0
                  CONTENTS, READONLY, DEBUGGING
  5 .debug_line   000000db  00000000  00000000  000002c5  2**0
                  CONTENTS, READONLY, DEBUGGING
  6 .debug_frame  00000040  00000000  00000000  000003a0  2**2
                  CONTENTS, READONLY, DEBUGGING
  7 .debug_str    0000008c  00000000  00000000  000003e0  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:	ea e0       	ldi	r30, 0x0A	; 10
  68:	f1 e0       	ldi	r31, 0x01	; 1
  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 7c 00 	call	0xf8	; 0xf8 <main>
  8a:	0c 94 83 00 	jmp	0x106	; 0x106 <_exit>

0000008e <__bad_interrupt>:
  8e:	0c 94 00 00 	jmp	0	; 0x0 <__vectors>

00000092 <cw>:



void cw(void)
{
PORTB=PORTB&0x0f;
  92:	88 b3       	in	r24, 0x18	; 24
  94:	8f 70       	andi	r24, 0x0F	; 15
  96:	88 bb       	out	0x18, r24	; 24
switch (PORTB)
  98:	88 b3       	in	r24, 0x18	; 24
  9a:	82 30       	cpi	r24, 0x02	; 2
  9c:	69 f0       	breq	.+26     	; 0xb8 <cw+0x26>
  9e:	83 30       	cpi	r24, 0x03	; 3
  a0:	18 f4       	brcc	.+6      	; 0xa8 <cw+0x16>
  a2:	81 30       	cpi	r24, 0x01	; 1
  a4:	71 f4       	brne	.+28     	; 0xc2 <cw+0x30>
  a6:	0b c0       	rjmp	.+22     	; 0xbe <cw+0x2c>
  a8:	84 30       	cpi	r24, 0x04	; 4
  aa:	21 f0       	breq	.+8      	; 0xb4 <cw+0x22>
  ac:	88 30       	cpi	r24, 0x08	; 8
  ae:	49 f4       	brne	.+18     	; 0xc2 <cw+0x30>
{
     case 8:
     PORTB=1;
  b0:	81 e0       	ldi	r24, 0x01	; 1
  b2:	03 c0       	rjmp	.+6      	; 0xba <cw+0x28>
     break;

     case 4:
	 PORTB=8;
  b4:	88 e0       	ldi	r24, 0x08	; 8
  b6:	01 c0       	rjmp	.+2      	; 0xba <cw+0x28>
	 break;
	 
	 case 2:
	 PORTB=4;
  b8:	84 e0       	ldi	r24, 0x04	; 4
  ba:	88 bb       	out	0x18, r24	; 24
  bc:	08 95       	ret
	 break;
	 
	 case 1:
	 PORTB=2;
  be:	82 e0       	ldi	r24, 0x02	; 2
  c0:	88 bb       	out	0x18, r24	; 24
  c2:	08 95       	ret

000000c4 <ccw>:
}



void ccw(void){
PORTB=PORTB&0x0f;
  c4:	88 b3       	in	r24, 0x18	; 24
  c6:	8f 70       	andi	r24, 0x0F	; 15
  c8:	88 bb       	out	0x18, r24	; 24
switch (PORTB)
  ca:	88 b3       	in	r24, 0x18	; 24
  cc:	82 30       	cpi	r24, 0x02	; 2
  ce:	89 f0       	breq	.+34     	; 0xf2 <ccw+0x2e>
  d0:	83 30       	cpi	r24, 0x03	; 3
  d2:	18 f4       	brcc	.+6      	; 0xda <ccw+0x16>
  d4:	81 30       	cpi	r24, 0x01	; 1
  d6:	79 f4       	brne	.+30     	; 0xf6 <ccw+0x32>
  d8:	05 c0       	rjmp	.+10     	; 0xe4 <ccw+0x20>
  da:	84 30       	cpi	r24, 0x04	; 4
  dc:	39 f0       	breq	.+14     	; 0xec <ccw+0x28>
  de:	88 30       	cpi	r24, 0x08	; 8
  e0:	51 f4       	brne	.+20     	; 0xf6 <ccw+0x32>
  e2:	02 c0       	rjmp	.+4      	; 0xe8 <ccw+0x24>
{
     case 1:
     PORTB=8;
  e4:	88 e0       	ldi	r24, 0x08	; 8
  e6:	03 c0       	rjmp	.+6      	; 0xee <ccw+0x2a>
     break;

     case 8:
	 PORTB=4;
  e8:	84 e0       	ldi	r24, 0x04	; 4
  ea:	01 c0       	rjmp	.+2      	; 0xee <ccw+0x2a>
	 break;
	 
	 case 4:
	 PORTB=2;
  ec:	82 e0       	ldi	r24, 0x02	; 2
  ee:	88 bb       	out	0x18, r24	; 24
  f0:	08 95       	ret
	 break;
	 
	 case 2:
	 PORTB=1;
  f2:	81 e0       	ldi	r24, 0x01	; 1
  f4:	88 bb       	out	0x18, r24	; 24
  f6:	08 95       	ret

000000f8 <main>:

     // variables decliration 
    
	int i;
	
	DDRB=0xFF;
  f8:	8f ef       	ldi	r24, 0xFF	; 255
  fa:	87 bb       	out	0x17, r24	; 23
	PORTB=1;
  fc:	81 e0       	ldi	r24, 0x01	; 1
  fe:	88 bb       	out	0x18, r24	; 24
	
  
	while (1){

	cw();
 100:	0e 94 49 00 	call	0x92	; 0x92 <cw>
 104:	fd cf       	rjmp	.-6      	; 0x100 <main+0x8>

00000106 <_exit>:
 106:	f8 94       	cli

00000108 <__stop_program>:
 108:	ff cf       	rjmp	.-2      	; 0x108 <__stop_program>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -