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

📄 test.lss

📁 將AVRmega48的Timer、ADC、IO等初始參數寫成各種副程式
💻 LSS
字号:

test.elf:     file format elf32-avr

Sections:
Idx Name          Size      VMA       LMA       File off  Algn
  0 .data         00000010  00800100  000000f8  0000016c  2**0
                  CONTENTS, ALLOC, LOAD, DATA
  1 .text         000000f8  00000000  00000000  00000074  2**1
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
  2 .debug_aranges 00000020  00000000  00000000  0000017c  2**0
                  CONTENTS, READONLY, DEBUGGING
  3 .debug_pubnames 0000009d  00000000  00000000  0000019c  2**0
                  CONTENTS, READONLY, DEBUGGING
  4 .debug_info   00000190  00000000  00000000  00000239  2**0
                  CONTENTS, READONLY, DEBUGGING
  5 .debug_abbrev 000000f0  00000000  00000000  000003c9  2**0
                  CONTENTS, READONLY, DEBUGGING
  6 .debug_line   000000fe  00000000  00000000  000004b9  2**0
                  CONTENTS, READONLY, DEBUGGING
  7 .debug_frame  000000a0  00000000  00000000  000005b8  2**2
                  CONTENTS, READONLY, DEBUGGING
  8 .debug_str    000000e2  00000000  00000000  00000658  2**0
                  CONTENTS, READONLY, DEBUGGING
  9 .debug_loc    00000036  00000000  00000000  0000073a  2**0
                  CONTENTS, READONLY, DEBUGGING
Disassembly of section .text:

00000000 <__vectors>:
   0:	19 c0       	rjmp	.+50     	; 0x34 <__ctors_end>
   2:	33 c0       	rjmp	.+102    	; 0x6a <__bad_interrupt>
   4:	32 c0       	rjmp	.+100    	; 0x6a <__bad_interrupt>
   6:	31 c0       	rjmp	.+98     	; 0x6a <__bad_interrupt>
   8:	30 c0       	rjmp	.+96     	; 0x6a <__bad_interrupt>
   a:	2f c0       	rjmp	.+94     	; 0x6a <__bad_interrupt>
   c:	2e c0       	rjmp	.+92     	; 0x6a <__bad_interrupt>
   e:	2d c0       	rjmp	.+90     	; 0x6a <__bad_interrupt>
  10:	2c c0       	rjmp	.+88     	; 0x6a <__bad_interrupt>
  12:	2b c0       	rjmp	.+86     	; 0x6a <__bad_interrupt>
  14:	2a c0       	rjmp	.+84     	; 0x6a <__bad_interrupt>
  16:	29 c0       	rjmp	.+82     	; 0x6a <__bad_interrupt>
  18:	28 c0       	rjmp	.+80     	; 0x6a <__bad_interrupt>
  1a:	27 c0       	rjmp	.+78     	; 0x6a <__bad_interrupt>
  1c:	26 c0       	rjmp	.+76     	; 0x6a <__bad_interrupt>
  1e:	25 c0       	rjmp	.+74     	; 0x6a <__bad_interrupt>
  20:	24 c0       	rjmp	.+72     	; 0x6a <__bad_interrupt>
  22:	23 c0       	rjmp	.+70     	; 0x6a <__bad_interrupt>
  24:	22 c0       	rjmp	.+68     	; 0x6a <__bad_interrupt>
  26:	21 c0       	rjmp	.+66     	; 0x6a <__bad_interrupt>
  28:	20 c0       	rjmp	.+64     	; 0x6a <__bad_interrupt>
  2a:	2f c0       	rjmp	.+94     	; 0x8a <__vector_21>
  2c:	1e c0       	rjmp	.+60     	; 0x6a <__bad_interrupt>
  2e:	1d c0       	rjmp	.+58     	; 0x6a <__bad_interrupt>
  30:	1c c0       	rjmp	.+56     	; 0x6a <__bad_interrupt>
  32:	1b c0       	rjmp	.+54     	; 0x6a <__bad_interrupt>

00000034 <__ctors_end>:
  34:	11 24       	eor	r1, r1
  36:	1f be       	out	0x3f, r1	; 63
  38:	cf ef       	ldi	r28, 0xFF	; 255
  3a:	d2 e0       	ldi	r29, 0x02	; 2
  3c:	de bf       	out	0x3e, r29	; 62
  3e:	cd bf       	out	0x3d, r28	; 61

00000040 <__do_copy_data>:
  40:	11 e0       	ldi	r17, 0x01	; 1
  42:	a0 e0       	ldi	r26, 0x00	; 0
  44:	b1 e0       	ldi	r27, 0x01	; 1
  46:	e8 ef       	ldi	r30, 0xF8	; 248
  48:	f0 e0       	ldi	r31, 0x00	; 0
  4a:	02 c0       	rjmp	.+4      	; 0x50 <.do_copy_data_start>

0000004c <.do_copy_data_loop>:
  4c:	05 90       	lpm	r0, Z+
  4e:	0d 92       	st	X+, r0

00000050 <.do_copy_data_start>:
  50:	a0 31       	cpi	r26, 0x10	; 16
  52:	b1 07       	cpc	r27, r17
  54:	d9 f7       	brne	.-10     	; 0x4c <.do_copy_data_loop>

00000056 <__do_clear_bss>:
  56:	11 e0       	ldi	r17, 0x01	; 1
  58:	a0 e1       	ldi	r26, 0x10	; 16
  5a:	b1 e0       	ldi	r27, 0x01	; 1
  5c:	01 c0       	rjmp	.+2      	; 0x60 <.do_clear_bss_start>

0000005e <.do_clear_bss_loop>:
  5e:	1d 92       	st	X+, r1

00000060 <.do_clear_bss_start>:
  60:	a0 31       	cpi	r26, 0x10	; 16
  62:	b1 07       	cpc	r27, r17
  64:	e1 f7       	brne	.-8      	; 0x5e <.do_clear_bss_loop>
  66:	1c d0       	rcall	.+56     	; 0xa0 <main>
  68:	45 c0       	rjmp	.+138    	; 0xf4 <_exit>

0000006a <__bad_interrupt>:
  6a:	ca cf       	rjmp	.-108    	; 0x0 <__vectors>

0000006c <init_ext_interrupt>:
	void init_ADC();
	void init_timer();
#endif

void init_ext_interrupt(char int0_tm, char int1_tm)
{
  6c:	08 95       	ret

0000006e <Power_Reduction>:
		PCMSK2=0xff	//Enable pin to use for portD.
	#endif
}

void Power_Reduction()
{
  6e:	08 95       	ret

00000070 <sleep_mode>:
		}
	#endif
}

void sleep_mode()
{
  70:	08 95       	ret

00000072 <init_IO>:
		}
	#endif
}

void init_IO()
{
  72:	08 95       	ret

00000074 <Get_digital>:
		DDRD=0x00;
	#endif
}

unsigned char Get_digital(char ch)
{
  74:	29 b1       	in	r18, 0x09	; 9
  76:	30 e0       	ldi	r19, 0x00	; 0
  78:	02 c0       	rjmp	.+4      	; 0x7e <Get_digital+0xa>
  7a:	35 95       	asr	r19
  7c:	27 95       	ror	r18
  7e:	8a 95       	dec	r24
  80:	e2 f7       	brpl	.-8      	; 0x7a <Get_digital+0x6>
		if (port_temp&(1<<ch))
			return 1;
		else
			return 0;
	#endif
}
  82:	82 2f       	mov	r24, r18
  84:	81 70       	andi	r24, 0x01	; 1
  86:	08 95       	ret

00000088 <init_ADC>:

void init_ADC()
{
  88:	08 95       	ret

0000008a <__vector_21>:
	#endif
}
//Global variable set
//int adc_num;
ISR(ADC_vect)
{
  8a:	1f 92       	push	r1
  8c:	0f 92       	push	r0
  8e:	0f b6       	in	r0, 0x3f	; 63
  90:	0f 92       	push	r0
  92:	11 24       	eor	r1, r1
	#if 0
		adc_num=ACD&0x3ff;
	#endif
}
  94:	0f 90       	pop	r0
  96:	0f be       	out	0x3f, r0	; 63
  98:	0f 90       	pop	r0
  9a:	1f 90       	pop	r1
  9c:	18 95       	reti

0000009e <init_timer>:

void init_timer()
{
  9e:	08 95       	ret

000000a0 <main>:
		//GTCCR=0x00 - General Timer/Counter Control Register
	#endif
}

int main()
{
  a0:	df 93       	push	r29
  a2:	cf 93       	push	r28
  a4:	cd b7       	in	r28, 0x3d	; 61
  a6:	de b7       	in	r29, 0x3e	; 62
  a8:	60 97       	sbiw	r28, 0x10	; 16
  aa:	0f b6       	in	r0, 0x3f	; 63
  ac:	f8 94       	cli
  ae:	de bf       	out	0x3e, r29	; 62
  b0:	0f be       	out	0x3f, r0	; 63
  b2:	cd bf       	out	0x3d, r28	; 61
	int x,y[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
  b4:	de 01       	movw	r26, r28
  b6:	11 96       	adiw	r26, 0x01	; 1
  b8:	e0 e0       	ldi	r30, 0x00	; 0
  ba:	f1 e0       	ldi	r31, 0x01	; 1
  bc:	80 e1       	ldi	r24, 0x10	; 16
  be:	01 90       	ld	r0, Z+
  c0:	0d 92       	st	X+, r0
  c2:	81 50       	subi	r24, 0x01	; 1
  c4:	e1 f7       	brne	.-8      	; 0xbe <main+0x1e>
	x=0;
	DDRB=0xFF;
  c6:	8f ef       	ldi	r24, 0xFF	; 255
  c8:	84 b9       	out	0x04, r24	; 4
  ca:	20 e0       	ldi	r18, 0x00	; 0
  cc:	30 e0       	ldi	r19, 0x00	; 0
	while(1)
	{
		for(x=0;x<=7;x++)
		{
			PORTB=~y[x];
  ce:	ae 01       	movw	r20, r28
  d0:	4f 5f       	subi	r20, 0xFF	; 255
  d2:	5f 4f       	sbci	r21, 0xFF	; 255
  d4:	f9 01       	movw	r30, r18
  d6:	ee 0f       	add	r30, r30
  d8:	ff 1f       	adc	r31, r31
  da:	e4 0f       	add	r30, r20
  dc:	f5 1f       	adc	r31, r21
  de:	80 81       	ld	r24, Z
  e0:	80 95       	com	r24
  e2:	85 b9       	out	0x05, r24	; 5
	int x,y[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
	x=0;
	DDRB=0xFF;
	while(1)
	{
		for(x=0;x<=7;x++)
  e4:	2f 5f       	subi	r18, 0xFF	; 255
  e6:	3f 4f       	sbci	r19, 0xFF	; 255
  e8:	28 30       	cpi	r18, 0x08	; 8
  ea:	31 05       	cpc	r19, r1
  ec:	9c f3       	brlt	.-26     	; 0xd4 <main+0x34>
  ee:	20 e0       	ldi	r18, 0x00	; 0
  f0:	30 e0       	ldi	r19, 0x00	; 0
  f2:	f0 cf       	rjmp	.-32     	; 0xd4 <main+0x34>

000000f4 <_exit>:
  f4:	f8 94       	cli

000000f6 <__stop_program>:
  f6:	ff cf       	rjmp	.-2      	; 0xf6 <__stop_program>

⌨️ 快捷键说明

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