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

📄 main.lst

📁 avr常用功能程序中包含了pwm、adc、中断、定时、i2c等各程序可供开发者直接使用
💻 LST
字号:
   1               		.file	"main.c"
   2               		.arch atmega8
   3               	__SREG__ = 0x3f
   4               	__SP_H__ = 0x3e
   5               	__SP_L__ = 0x3d
   6               	__tmp_reg__ = 0
   7               	__zero_reg__ = 1
   8               		.global __do_copy_data
   9               		.global __do_clear_bss
  11               		.text
  12               	.Ltext0:
  55               	.global	delay
  57               	delay:
   1:main.c        **** 
   2:main.c        **** #include <avr/io.h>
   3:main.c        **** //#include <avr/delay.h>
   4:main.c        **** //宏定义
   5:main.c        **** #define uchar unsigned char
   6:main.c        **** #define uint unsigned int
   7:main.c        **** void delay(int x)
{	int xx=100;
	while(x-->0)
	while(xx-->0);
}
   8:main.c        **** 
  59               	.LM1:
  60               	/* prologue: frame size=4 */
  61 0000 CF93      		push r28
  62 0002 DF93      		push r29
  63 0004 CDB7      		in r28,__SP_L__
  64 0006 DEB7      		in r29,__SP_H__
  65 0008 2497      		sbiw r28,4
  66 000a 0FB6      		in __tmp_reg__,__SREG__
  67 000c F894      		cli
  68 000e DEBF      		out __SP_H__,r29
  69 0010 0FBE      		out __SREG__,__tmp_reg__
  70 0012 CDBF      		out __SP_L__,r28
  71               	/* prologue end (size=10) */
  72 0014 8983      		std Y+1,r24
  73 0016 9A83      		std Y+2,r25
  74 0018 84E6      		ldi r24,lo8(100)
  75 001a 90E0      		ldi r25,hi8(100)
  76 001c 8B83      		std Y+3,r24
  77 001e 9C83      		std Y+4,r25
  78               	.L2:
   9:main.c        **** //SPI初始化
  80               	.LM2:
  81 0020 8981      		ldd r24,Y+1
  82 0022 9A81      		ldd r25,Y+2
  83 0024 9C01      		movw r18,r24
  84 0026 0197      		sbiw r24,1
  85 0028 8983      		std Y+1,r24
  86 002a 9A83      		std Y+2,r25
  87 002c 1216      		cp __zero_reg__,r18
  88 002e 1306      		cpc __zero_reg__,r19
  89 0030 64F4      		brge .L1
  90               	.L4:
  10:main.c        **** void spi_init(void)
  92               	.LM3:
  93 0032 FE01      		movw r30,r28
  94 0034 3396      		adiw r30,3
  95 0036 8081      		ld r24,Z
  96 0038 9181      		ldd r25,Z+1
  97 003a 9C01      		movw r18,r24
  98 003c 0197      		sbiw r24,1
  99 003e 8083      		st Z,r24
 100 0040 9183      		std Z+1,r25
 101 0042 1216      		cp __zero_reg__,r18
 102 0044 1306      		cpc __zero_reg__,r19
 103 0046 64F7      		brge .L2
 104 0048 F4CF      		rjmp .L4
 105               	.L1:
 106               	/* epilogue: frame size=4 */
 107 004a 2496      		adiw r28,4
 108 004c 0FB6      		in __tmp_reg__,__SREG__
 109 004e F894      		cli
 110 0050 DEBF      		out __SP_H__,r29
 111 0052 0FBE      		out __SREG__,__tmp_reg__
 112 0054 CDBF      		out __SP_L__,r28
 113 0056 DF91      		pop r29
 114 0058 CF91      		pop r28
 115 005a 0895      		ret
 116               	/* epilogue end (size=9) */
 117               	/* function delay size 46 (27) */
 122               	.Lscope0:
 124               	.global	spi_init
 126               	spi_init:
  11:main.c        **** {
  12:main.c        **** 	//OSCCAL=0x9d;                        // 8M系统内部时钟校准    
  13:main.c        **** 	DDRB|=0Xf8;
  14:main.c        **** 	SPSR =_BV(SPI2X);                 // 设置SPI时钟倍速
  15:main.c        ****     SPCR =_BV(SPE) |_BV(MSTR);		// 使能SPI接口,主机模式,4M时钟	0X50
 128               	.LM4:
 129               	/* prologue: frame size=0 */
 130 005c CF93      		push r28
 131 005e DF93      		push r29
 132 0060 CDB7      		in r28,__SP_L__
 133 0062 DEB7      		in r29,__SP_H__
 134               	/* prologue end (size=4) */
  16:main.c        **** }
  17:main.c        **** 
 136               	.LM5:
 137 0064 8091 3700 		lds r24,55
 138 0068 886F      		ori r24,lo8(-8)
 139 006a 8093 3700 		sts 55,r24
  18:main.c        **** 
 141               	.LM6:
 142 006e 81E0      		ldi r24,lo8(1)
 143 0070 8093 2E00 		sts 46,r24
  19:main.c        **** int main()
 145               	.LM7:
 146 0074 80E5      		ldi r24,lo8(80)
 147 0076 8093 2D00 		sts 45,r24
 148               	/* epilogue: frame size=0 */
 149 007a DF91      		pop r29
 150 007c CF91      		pop r28
 151 007e 0895      		ret
 152               	/* epilogue end (size=3) */
 153               	/* function spi_init size 18 (11) */
 155               	.Lscope1:
 157               	.global	main
 159               	main:
  20:main.c        **** {
	spi_init();
	DDRC=0XFF;
	PORTC=0XFF;
	uchar jtd1,jtd2,jtd_row,init_jtd1=0xfe,init_jtd2=0xff;	
	i
  21:main.c        **** 	SPDR=0xff;
	while((SPSR&0x80)==0);  		//等待数据传送完毕,置一
	SPDR=0xff;
	while((SPSR&0x80)==0); 
  22:main.c        **** 
  23:main.c        **** }
  24:main.c        **** /**/...
 161               	.LM8:
 162               	/* prologue: frame size=7 */
 163 0080 C0E0      		ldi r28,lo8(__stack - 7)
 164 0082 D0E0      		ldi r29,hi8(__stack - 7)
 165 0084 DEBF      		out __SP_H__,r29
 166 0086 CDBF      		out __SP_L__,r28
 167               	/* prologue end (size=4) */
 169               	.LM9:
 170 0088 E9DF      		rcall spi_init
 172               	.LM10:
 173 008a 8FEF      		ldi r24,lo8(-1)
 174 008c 8093 3400 		sts 52,r24
 176               	.LM11:
 177 0090 8FEF      		ldi r24,lo8(-1)
 178 0092 8093 3500 		sts 53,r24
 180               	.LM12:
 181 0096 8EEF      		ldi r24,lo8(-2)
 182 0098 8C83      		std Y+4,r24
 183 009a 8FEF      		ldi r24,lo8(-1)
 184 009c 8D83      		std Y+5,r24
 186               	.LM13:
 187 009e 1E82      		std Y+6,__zero_reg__
 188 00a0 1F82      		std Y+7,__zero_reg__
 189               	.L8:
 191               	.LM14:
 192 00a2 8FEF      		ldi r24,lo8(-1)
 193 00a4 8093 2F00 		sts 47,r24
 194               	.L10:
 196               	.LM15:
 197 00a8 8091 2E00 		lds r24,46
 198 00ac 8823      		tst r24
 199 00ae 0CF0      		brlt .L11
 200 00b0 FBCF      		rjmp .L10
 201               	.L11:
 203               	.LM16:
 204 00b2 8FEF      		ldi r24,lo8(-1)
 205 00b4 8093 2F00 		sts 47,r24
 206               	.L12:
 208               	.LM17:
 209 00b8 8091 2E00 		lds r24,46
 210 00bc 8823      		tst r24
 211 00be 0CF0      		brlt .L13
 212 00c0 FBCF      		rjmp .L12
 213               	.L13:
 215               	.LM18:
 216 00c2 8981      		ldd r24,Y+1
 217 00c4 8093 2F00 		sts 47,r24
 218               	.L14:
 220               	.LM19:
 221 00c8 8091 2E00 		lds r24,46
 222 00cc 8823      		tst r24
 223 00ce 0CF0      		brlt .L15
 224 00d0 FBCF      		rjmp .L14
 225               	.L15:
 227               	.LM20:
 228 00d2 8A81      		ldd r24,Y+2
 229 00d4 8093 2F00 		sts 47,r24
 230               	.L16:
 232               	.LM21:
 233 00d8 8091 2E00 		lds r24,46
 234 00dc 8823      		tst r24
 235 00de 0CF0      		brlt .L17
 236 00e0 FBCF      		rjmp .L16
 237               	.L17:
 239               	.LM22:
 240 00e2 8091 3800 		lds r24,56
 241 00e6 8F7B      		andi r24,lo8(-65)
 242 00e8 8093 3800 		sts 56,r24
 244               	.LM23:
 245 00ec 8091 3800 		lds r24,56
 246 00f0 8064      		ori r24,lo8(64)
 247 00f2 8093 3800 		sts 56,r24
 249               	.LM24:
 250 00f6 8091 3800 		lds r24,56
 251 00fa 8F7B      		andi r24,lo8(-65)
 252 00fc 8093 3800 		sts 56,r24
 254               	.LM25:
 255 0100 84E1      		ldi r24,lo8(20)
 256 0102 90E0      		ldi r25,hi8(20)
 257 0104 7DDF      		rcall delay
 259               	.LM26:
 260 0106 8B81      		ldd r24,Y+3
 261 0108 8F5F      		subi r24,lo8(-(1))
 262 010a 8B83      		std Y+3,r24
 264               	.LM27:
 265 010c 8981      		ldd r24,Y+1
 266 010e 9927      		clr r25
 267 0110 880F      		lsl r24
 268 0112 991F      		rol r25
 269 0114 8160      		ori r24,lo8(1)
 270 0116 8983      		std Y+1,r24
 272               	.LM28:
 273 0118 8A81      		ldd r24,Y+2
 274 011a 9927      		clr r25
 275 011c 880F      		lsl r24
 276 011e 991F      		rol r25
 277 0120 8160      		ori r24,lo8(1)
 278 0122 8A83      		std Y+2,r24
 280               	.LM29:
 281 0124 8B81      		ldd r24,Y+3
 282 0126 8430      		cpi r24,lo8(4)
 283 0128 50F0      		brlo .L18
 285               	.LM30:
 286 012a 1B82      		std Y+3,__zero_reg__
 288               	.LM31:
 289 012c 8C81      		ldd r24,Y+4
 290 012e 8983      		std Y+1,r24
 292               	.LM32:
 293 0130 8D81      		ldd r24,Y+5
 294 0132 8A83      		std Y+2,r24
 296               	.LM33:
 297 0134 8E81      		ldd r24,Y+6
 298 0136 9F81      		ldd r25,Y+7
 299 0138 0196      		adiw r24,1
 300 013a 8E83      		std Y+6,r24
 301 013c 9F83      		std Y+7,r25
 302               	.L18:
 304               	.LM34:
 305 013e 8E81      		ldd r24,Y+6
 306 0140 9F81      		ldd r25,Y+7
 307 0142 883C      		cpi r24,200
 308 0144 9105      		cpc r25,__zero_reg__
 309 0146 21F4      		brne .L19
 311               	.LM35:
 312 0148 8FEF      		ldi r24,lo8(-1)
 313 014a 8C83      		std Y+4,r24
 315               	.LM36:
 316 014c 8EEF      		ldi r24,lo8(-2)
 317 014e 8D83      		std Y+5,r24
 318               	.L19:
 320               	.LM37:
 321 0150 8E81      		ldd r24,Y+6
 322 0152 9F81      		ldd r25,Y+7
 323 0154 21E0      		ldi r18,hi8(400)
 324 0156 8039      		cpi r24,lo8(400)
 325 0158 9207      		cpc r25,r18
 326 015a 21F4      		brne .L20
 328               	.LM38:
 329 015c 8FEF      		ldi r24,lo8(-1)
 330 015e 8C83      		std Y+4,r24
 332               	.LM39:
 333 0160 8FEE      		ldi r24,lo8(-17)
 334 0162 8D83      		std Y+5,r24
 335               	.L20:
 337               	.LM40:
 338 0164 8E81      		ldd r24,Y+6
 339 0166 9F81      		ldd r25,Y+7
 340 0168 22E0      		ldi r18,hi8(600)
 341 016a 8835      		cpi r24,lo8(600)
 342 016c 9207      		cpc r25,r18
 343 016e 09F0      		breq .+2
 344 0170 98CF      		rjmp .L8
 346               	.LM41:
 347 0172 8EEF      		ldi r24,lo8(-2)
 348 0174 8C83      		std Y+4,r24
 350               	.LM42:
 351 0176 8FEF      		ldi r24,lo8(-1)
 352 0178 8D83      		std Y+5,r24
 354               	.LM43:
 355 017a 1E82      		std Y+6,__zero_reg__
 356 017c 1F82      		std Y+7,__zero_reg__
 357 017e 91CF      		rjmp .L8
 358               	/* epilogue: frame size=7 */
 359               	/* epilogue: noreturn */
 360               	/* epilogue end (size=0) */
 361               	/* function main size 128 (124) */
 371               	.Lscope2:
 372               		.text
 374               	Letext:
 375               	/* File "main.c": code  192 = 0x00c0 ( 162), prologues  18, epilogues  12 */
DEFINED SYMBOLS
                            *ABS*:00000000 main.c
                            *ABS*:0000003f __SREG__
                            *ABS*:0000003e __SP_H__
                            *ABS*:0000003d __SP_L__
                            *ABS*:00000000 __tmp_reg__
                            *ABS*:00000001 __zero_reg__
C:\DOCUME~1\wxdxh\LOCALS~1\Temp/ccYXaaaa.s:57     .text:00000000 delay
C:\DOCUME~1\wxdxh\LOCALS~1\Temp/ccYXaaaa.s:126    .text:0000005c spi_init
C:\DOCUME~1\wxdxh\LOCALS~1\Temp/ccYXaaaa.s:159    .text:00000080 main
C:\DOCUME~1\wxdxh\LOCALS~1\Temp/ccYXaaaa.s:374    .text:00000180 Letext

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__stack

⌨️ 快捷键说明

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