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

📄 main.lss

📁 avr的I/O、串口、定时器/计数器、外部中断、LCD等的例程
💻 LSS
字号:

main.elf:     file format elf32-avr

Sections:
Idx Name          Size      VMA       LMA       File off  Algn
  0 .text         000000fa  00000000  00000000  00000094  2**0
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
  1 .data         00000000  00800060  000000fa  0000018e  2**0
                  CONTENTS, ALLOC, LOAD, DATA
  2 .bss          00000001  00800060  00800060  0000018e  2**0
                  ALLOC
  3 .noinit       00000000  00800061  00800061  0000018e  2**0
                  CONTENTS
  4 .eeprom       00000000  00810000  00810000  0000018e  2**0
                  CONTENTS
  5 .debug_aranges 00000014  00000000  00000000  0000018e  2**0
                  CONTENTS, READONLY, DEBUGGING
  6 .debug_pubnames 0000002a  00000000  00000000  000001a2  2**0
                  CONTENTS, READONLY, DEBUGGING
  7 .debug_info   000000a5  00000000  00000000  000001cc  2**0
                  CONTENTS, READONLY, DEBUGGING
  8 .debug_abbrev 00000074  00000000  00000000  00000271  2**0
                  CONTENTS, READONLY, DEBUGGING
  9 .debug_line   000000fb  00000000  00000000  000002e5  2**0
                  CONTENTS, READONLY, DEBUGGING
 10 .debug_str    0000006c  00000000  00000000  000003e0  2**0
                  CONTENTS, READONLY, DEBUGGING
Disassembly of section .text:

00000000 <__vectors>:
   0:	0c 94 2a 00 	jmp	0x54
   4:	0c 94 45 00 	jmp	0x8a
   8:	0c 94 45 00 	jmp	0x8a
   c:	0c 94 45 00 	jmp	0x8a
  10:	0c 94 45 00 	jmp	0x8a
  14:	0c 94 45 00 	jmp	0x8a
  18:	0c 94 45 00 	jmp	0x8a
  1c:	0c 94 45 00 	jmp	0x8a
  20:	0c 94 47 00 	jmp	0x8e
  24:	0c 94 45 00 	jmp	0x8a
  28:	0c 94 45 00 	jmp	0x8a
  2c:	0c 94 45 00 	jmp	0x8a
  30:	0c 94 45 00 	jmp	0x8a
  34:	0c 94 45 00 	jmp	0x8a
  38:	0c 94 45 00 	jmp	0x8a
  3c:	0c 94 45 00 	jmp	0x8a
  40:	0c 94 45 00 	jmp	0x8a
  44:	0c 94 45 00 	jmp	0x8a
  48:	0c 94 45 00 	jmp	0x8a
  4c:	0c 94 45 00 	jmp	0x8a
  50:	0c 94 45 00 	jmp	0x8a

00000054 <__ctors_end>:
  54:	11 24       	eor	r1, r1
  56:	1f be       	out	0x3f, r1	; 63
  58:	cf e5       	ldi	r28, 0x5F	; 95
  5a:	d4 e0       	ldi	r29, 0x04	; 4
  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 ef       	ldi	r30, 0xFA	; 250
  68:	f0 e0       	ldi	r31, 0x00	; 0
  6a:	02 c0       	rjmp	.+4      	; 0x70

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

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

0000007e <.do_clear_bss_loop>:
  7e:	1d 92       	st	X+, r1

00000080 <.do_clear_bss_start>:
  80:	a1 36       	cpi	r26, 0x61	; 97
  82:	b1 07       	cpc	r27, r17
  84:	e1 f7       	brne	.-8      	; 0x7e
  86:	0c 94 66 00 	jmp	0xcc

0000008a <__bad_interrupt>:
  8a:	0c 94 00 00 	jmp	0x0

0000008e <__vector_8>:
static uchar g_bCount=0; 
static uchar abc=0; 

SIGNAL(SIG_OVERFLOW1)
{ 
  8e:	1f 92       	push	r1
  90:	0f 92       	push	r0
  92:	0f b6       	in	r0, 0x3f	; 63
  94:	0f 92       	push	r0
  96:	11 24       	eor	r1, r1
  98:	8f 93       	push	r24
  9a:	9f 93       	push	r25
   	TCNT1 = 0x85ee;
  9c:	8e ee       	ldi	r24, 0xEE	; 238
  9e:	95 e8       	ldi	r25, 0x85	; 133
  a0:	9d bd       	out	0x2d, r25	; 45
  a2:	8c bd       	out	0x2c, r24	; 44
   //if(++g_bCount >16) 
   //{ 
      if(abc==0) 
  a4:	80 91 60 00 	lds	r24, 0x0060
  a8:	88 23       	and	r24, r24
  aa:	31 f4       	brne	.+12     	; 0xb8
      {
		PORTA = 0XFF;
  ac:	8f ef       	ldi	r24, 0xFF	; 255
  ae:	8b bb       	out	0x1b, r24	; 27
		abc=1;
  b0:	81 e0       	ldi	r24, 0x01	; 1
  b2:	80 93 60 00 	sts	0x0060, r24
  b6:	03 c0       	rjmp	.+6      	; 0xbe
		} 
      else 
      {
		PORTA = 0;
  b8:	1b ba       	out	0x1b, r1	; 27
		abc=0;
  ba:	10 92 60 00 	sts	0x0060, r1
  be:	9f 91       	pop	r25
  c0:	8f 91       	pop	r24
  c2:	0f 90       	pop	r0
  c4:	0f be       	out	0x3f, r0	; 63
  c6:	0f 90       	pop	r0
  c8:	1f 90       	pop	r1
  ca:	18 95       	reti

000000cc <main>:
		} 
   //g_bCount = 0; 
   //} 
} 

int main(void) 
{    
  cc:	cf e5       	ldi	r28, 0x5F	; 95
  ce:	d4 e0       	ldi	r29, 0x04	; 4
  d0:	de bf       	out	0x3e, r29	; 62
  d2:	cd bf       	out	0x3d, r28	; 61
   DDRA = 0XFF; 
  d4:	8f ef       	ldi	r24, 0xFF	; 255
  d6:	8a bb       	out	0x1a, r24	; 26
   PORTA = 0; 
  d8:	1b ba       	out	0x1b, r1	; 27
   /*//TCNT0=0; // T/C0 开始值 
   TCNT0=256-(1000000/128);
   //TCNT0=10000/128;
   TCCR0=_BV(CS02)|_BV(CS00); // 预分频 ck/1024 ,计数允许 
   TIMSK=_BV(TOIE0); //T/C0 中断允许 
   sei(); //总中断标志置位 */
   //TIMSK=0x80;//开放T1溢出中断
   OCR1A = 0x7a12;
  da:	82 e1       	ldi	r24, 0x12	; 18
  dc:	9a e7       	ldi	r25, 0x7A	; 122
  de:	9b bd       	out	0x2b, r25	; 43
  e0:	8a bd       	out	0x2a, r24	; 42
   OCR1B = 0x7a12;
  e2:	99 bd       	out	0x29, r25	; 41
  e4:	88 bd       	out	0x28, r24	; 40
   TCCR1A=0x00; //普通模式
  e6:	1f bc       	out	0x2f, r1	; 47
   TCCR1B=0x04; //256分频
  e8:	24 e0       	ldi	r18, 0x04	; 4
  ea:	2e bd       	out	0x2e, r18	; 46
   TCNT1=0x85ee;
  ec:	8e ee       	ldi	r24, 0xEE	; 238
  ee:	95 e8       	ldi	r25, 0x85	; 133
  f0:	9d bd       	out	0x2d, r25	; 45
  f2:	8c bd       	out	0x2c, r24	; 44
   TIMSK = 0x04;
  f4:	29 bf       	out	0x39, r18	; 57
   sei();
  f6:	78 94       	sei
   while(1) 
  f8:	ff cf       	rjmp	.-2      	; 0xf8

⌨️ 快捷键说明

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