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

📄 main.lss

📁 这是一个单片机键盘响应程序
💻 LSS
📖 第 1 页 / 共 2 页
字号:

main.elf:     file format elf32-avr

Sections:
Idx Name          Size      VMA       LMA       File off  Algn
  0 .text         00000288  00000000  00000000  00000094  2**0
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
  1 .data         00000016  00800060  00000288  0000031c  2**0
                  CONTENTS, ALLOC, LOAD, DATA
  2 .bss          00000001  00800076  00800076  00000332  2**0
                  ALLOC
  3 .noinit       00000000  00800077  00800077  00000332  2**0
                  CONTENTS
  4 .eeprom       00000000  00810000  00810000  00000332  2**0
                  CONTENTS
  5 .stab         00000570  00000000  00000000  00000334  2**2
                  CONTENTS, READONLY, DEBUGGING
  6 .stabstr      00000645  00000000  00000000  000008a4  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 45 00 	jmp	0x8a
  24:	0c 94 fe 00 	jmp	0x1fc
  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:	e8 e8       	ldi	r30, 0x88	; 136
  68:	f2 e0       	ldi	r31, 0x02	; 2
  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:	a6 37       	cpi	r26, 0x76	; 118
  72:	b1 07       	cpc	r27, r17
  74:	d9 f7       	brne	.-10     	; 0x6c

00000076 <__do_clear_bss>:
  76:	10 e0       	ldi	r17, 0x00	; 0
  78:	a6 e7       	ldi	r26, 0x76	; 118
  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:	a7 37       	cpi	r26, 0x77	; 119
  82:	b1 07       	cpc	r27, r17
  84:	e1 f7       	brne	.-8      	; 0x7e
  86:	0c 94 2e 01 	jmp	0x25c

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

0000008e <_Z8Keyboardv>:
int Keyboard(void)
{static uint8_t     ScanCode=0xF7,TempNum=16,LastNum=16,CurrentNum=16,Times=0;
	   switch(ScanCode)   // 扫描信号
  8e:	80 91 70 00 	lds	r24, 0x0070
  92:	99 27       	eor	r25, r25
  94:	8b 3f       	cpi	r24, 0xFB	; 251
  96:	91 05       	cpc	r25, r1
  98:	69 f0       	breq	.+26     	; 0xb4
  9a:	8c 3f       	cpi	r24, 0xFC	; 252
  9c:	91 05       	cpc	r25, r1
  9e:	24 f4       	brge	.+8      	; 0xa8
  a0:	87 3f       	cpi	r24, 0xF7	; 247
  a2:	91 05       	cpc	r25, r1
  a4:	29 f0       	breq	.+10     	; 0xb0
  a6:	0a c0       	rjmp	.+20     	; 0xbc
  a8:	8d 3f       	cpi	r24, 0xFD	; 253
  aa:	91 05       	cpc	r25, r1
  ac:	29 f0       	breq	.+10     	; 0xb8
  ae:	06 c0       	rjmp	.+12     	; 0xbc
	   	{
	   	  case 0xF7:ScanCode=0xFB; break;   //扫描信号:0111→1011
  b0:	8b ef       	ldi	r24, 0xFB	; 251
  b2:	05 c0       	rjmp	.+10     	; 0xbe
	      case 0xFB:ScanCode=0xFD; break;  // 1011→1101
  b4:	8d ef       	ldi	r24, 0xFD	; 253
  b6:	03 c0       	rjmp	.+6      	; 0xbe
	      case 0xFD:ScanCode=0xFE; break;  // 1101→1110
  b8:	8e ef       	ldi	r24, 0xFE	; 254
  ba:	01 c0       	rjmp	.+2      	; 0xbe
	      case 0xFE:ScanCode=0xF7; break;  // 1110→0111
	      default: ScanCode=0xF7;break;
  bc:	87 ef       	ldi	r24, 0xF7	; 247
  be:	80 93 70 00 	sts	0x0070, r24
	   	}
	
	   /*在main()函数里需将DDRC设成0x0F,即PC7~PC4为输入,PC3~PC0为输出。
	    下面PORTC=ScanCode意味着,将PC7~PC4设为带上拉功能的输入,
	    而PC3~PC0输出扫描信号。*/
	   PORTC=ScanCode; 
  c2:	80 91 70 00 	lds	r24, 0x0070
  c6:	85 bb       	out	0x15, r24	; 21
	  	switch(PINC)
  c8:	83 b3       	in	r24, 0x13	; 19
  ca:	99 27       	eor	r25, r25
  cc:	8e 3b       	cpi	r24, 0xBE	; 190
  ce:	91 05       	cpc	r25, r1
  d0:	09 f4       	brne	.+2      	; 0xd4
  d2:	6b c0       	rjmp	.+214    	; 0x1aa
  d4:	8f 3b       	cpi	r24, 0xBF	; 191
  d6:	91 05       	cpc	r25, r1
  d8:	34 f5       	brge	.+76     	; 0x126
  da:	8e 37       	cpi	r24, 0x7E	; 126
  dc:	91 05       	cpc	r25, r1
  de:	09 f4       	brne	.+2      	; 0xe2
  e0:	66 c0       	rjmp	.+204    	; 0x1ae
  e2:	8f 37       	cpi	r24, 0x7F	; 127
  e4:	91 05       	cpc	r25, r1
  e6:	8c f4       	brge	.+34     	; 0x10a
  e8:	8b 37       	cpi	r24, 0x7B	; 123
  ea:	91 05       	cpc	r25, r1
  ec:	09 f4       	brne	.+2      	; 0xf0
  ee:	4f c0       	rjmp	.+158    	; 0x18e
  f0:	8c 37       	cpi	r24, 0x7C	; 124
  f2:	91 05       	cpc	r25, r1
  f4:	2c f4       	brge	.+10     	; 0x100
  f6:	87 37       	cpi	r24, 0x77	; 119
  f8:	91 05       	cpc	r25, r1
  fa:	09 f4       	brne	.+2      	; 0xfe
  fc:	40 c0       	rjmp	.+128    	; 0x17e
  fe:	59 c0       	rjmp	.+178    	; 0x1b2
 100:	8d 37       	cpi	r24, 0x7D	; 125
 102:	91 05       	cpc	r25, r1
 104:	09 f4       	brne	.+2      	; 0x108
 106:	4b c0       	rjmp	.+150    	; 0x19e
 108:	54 c0       	rjmp	.+168    	; 0x1b2
 10a:	8b 3b       	cpi	r24, 0xBB	; 187
 10c:	91 05       	cpc	r25, r1
 10e:	e9 f1       	breq	.+122    	; 0x18a
 110:	8c 3b       	cpi	r24, 0xBC	; 188
 112:	91 05       	cpc	r25, r1
 114:	24 f4       	brge	.+8      	; 0x11e
 116:	87 3b       	cpi	r24, 0xB7	; 183
 118:	91 05       	cpc	r25, r1
 11a:	79 f1       	breq	.+94     	; 0x17a
 11c:	4a c0       	rjmp	.+148    	; 0x1b2
 11e:	8d 3b       	cpi	r24, 0xBD	; 189
 120:	91 05       	cpc	r25, r1
 122:	d9 f1       	breq	.+118    	; 0x19a
 124:	46 c0       	rjmp	.+140    	; 0x1b2
 126:	8e 3d       	cpi	r24, 0xDE	; 222
 128:	91 05       	cpc	r25, r1
 12a:	e9 f1       	breq	.+122    	; 0x1a6
 12c:	8f 3d       	cpi	r24, 0xDF	; 223
 12e:	91 05       	cpc	r25, r1
 130:	74 f4       	brge	.+28     	; 0x14e
 132:	8b 3d       	cpi	r24, 0xDB	; 219
 134:	91 05       	cpc	r25, r1
 136:	39 f1       	breq	.+78     	; 0x186
 138:	8c 3d       	cpi	r24, 0xDC	; 220
 13a:	91 05       	cpc	r25, r1
 13c:	24 f4       	brge	.+8      	; 0x146
 13e:	87 3d       	cpi	r24, 0xD7	; 215
 140:	91 05       	cpc	r25, r1
 142:	c9 f0       	breq	.+50     	; 0x176
 144:	36 c0       	rjmp	.+108    	; 0x1b2
 146:	8d 3d       	cpi	r24, 0xDD	; 221
 148:	91 05       	cpc	r25, r1
 14a:	29 f1       	breq	.+74     	; 0x196
 14c:	32 c0       	rjmp	.+100    	; 0x1b2
 14e:	8b 3e       	cpi	r24, 0xEB	; 235
 150:	91 05       	cpc	r25, r1
 152:	b9 f0       	breq	.+46     	; 0x182
 154:	8c 3e       	cpi	r24, 0xEC	; 236
 156:	91 05       	cpc	r25, r1
 158:	24 f4       	brge	.+8      	; 0x162
 15a:	87 3e       	cpi	r24, 0xE7	; 231
 15c:	91 05       	cpc	r25, r1
 15e:	41 f0       	breq	.+16     	; 0x170
 160:	28 c0       	rjmp	.+80     	; 0x1b2
 162:	8d 3e       	cpi	r24, 0xED	; 237
 164:	91 05       	cpc	r25, r1
 166:	a9 f0       	breq	.+42     	; 0x192
 168:	8e 3e       	cpi	r24, 0xEE	; 238
 16a:	91 05       	cpc	r25, r1
 16c:	d1 f0       	breq	.+52     	; 0x1a2

⌨️ 快捷键说明

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