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

📄 avrxfifo.lst

📁 AVR典型实例.rar
💻 LST
字号:
   1               		.file	"AvrXFifo.c"
   2               		.arch atmega16
   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
  17               	.Ltext0:
  18               	.global	AvrXPeekFifo
  20               	AvrXPeekFifo:
  21               	.LFB7:
  22               	.LM1:
  23               	/* prologue: frame size=0 */
  24               	/* prologue end (size=0) */
  25               	.LVL0:
  26 0000 FC01      		movw r30,r24
  27               	.LM2:
  28 0002 9581      		ldd r25,Z+5
  29 0004 8481      		ldd r24,Z+4
  30               	.LVL1:
  31 0006 8917      		cp r24,r25
  32 0008 01F4      		brne .L2
  33               	.LM3:
  34 000a 8FEF      		ldi r24,lo8(-1)
  35 000c 9FEF      		ldi r25,hi8(-1)
  36 000e 0895      		ret
  37               	.L2:
  38               	.LM4:
  39 0010 E90F      		add r30,r25
  40 0012 F11D      		adc r31,__zero_reg__
  41 0014 8781      		ldd r24,Z+7
  42 0016 9927      		clr r25
  43               	.LM5:
  44 0018 0895      		ret
  45               	/* epilogue: frame size=0 */
  46               	/* epilogue: noreturn */
  47               	/* epilogue end (size=0) */
  48               	/* function AvrXPeekFifo size 13 (13) */
  49               	.LFE7:
  51               	.global	AvrXStatFifo
  53               	AvrXStatFifo:
  54               	.LFB8:
  55               	.LM6:
  56               	/* prologue: frame size=0 */
  57               	/* prologue end (size=0) */
  58               	.LVL2:
  59 001a FC01      		movw r30,r24
  60               	.LM7:
  61 001c 8FB7      		in r24,95-0x20
  62               	.LVL3:
  63               	.LM8:
  64               	/* #APP */
  65 001e F894      		cli
  66               	.LM9:
  67               	/* #NOAPP */
  68 0020 9481      		ldd r25,Z+4
  69 0022 292F      		mov r18,r25
  70 0024 3327      		clr r19
  71               	.LVL4:
  72 0026 9581      		ldd r25,Z+5
  73 0028 291B      		sub r18,r25
  74 002a 3109      		sbc r19,__zero_reg__
  75               	.LM10:
  76 002c 8FBF      		out 95-0x20,r24
  77               	.LM11:
  78 002e 37FF      		sbrs r19,7
  79 0030 00C0      		rjmp .L7
  80               	.LM12:
  81 0032 8681      		ldd r24,Z+6
  82               	.LVL5:
  83 0034 280F      		add r18,r24
  84 0036 311D      		adc r19,__zero_reg__
  85               	.LVL6:
  86               	.L7:
  87               	.LM13:
  88 0038 C901      		movw r24,r18
  89               	.LVL7:
  90               	/* epilogue: frame size=0 */
  91 003a 0895      		ret
  92               	/* epilogue end (size=1) */
  93               	/* function AvrXStatFifo size 18 (17) */
  94               	.LFE8:
  96               	.global	AvrXFlushFifo
  98               	AvrXFlushFifo:
  99               	.LFB6:
 100               	.LM14:
 101               	/* prologue: frame size=0 */
 102 003c 0F93      		push r16
 103 003e 1F93      		push r17
 104               	/* prologue end (size=2) */
 105               	.LVL8:
 106 0040 8C01      		movw r16,r24
 107               	.LM15:
 108 0042 FC01      		movw r30,r24
 109 0044 1482      		std Z+4,__zero_reg__
 110               	.LM16:
 111 0046 1582      		std Z+5,__zero_reg__
 112               	.LVL9:
 113               	.LM17:
 114 0048 0296      		adiw r24,2
 115 004a 0E94 0000 		call AvrXResetSemaphore
 116               	.LM18:
 117 004e C801      		movw r24,r16
 118 0050 0E94 0000 		call AvrXResetSemaphore
 119               	/* epilogue: frame size=0 */
 120 0054 1F91      		pop r17
 121 0056 0F91      		pop r16
 122 0058 0895      		ret
 123               	/* epilogue end (size=3) */
 124               	/* function AvrXFlushFifo size 15 (10) */
 125               	.LFE6:
 127               	.global	AvrXPullFifo
 129               	AvrXPullFifo:
 130               	.LFB3:
 131               	.LM19:
 132               	/* prologue: frame size=0 */
 133 005a 1F93      		push r17
 134               	/* prologue end (size=1) */
 135               	.LVL10:
 136 005c DC01      		movw r26,r24
 137               	.LM20:
 138 005e FC01      		movw r30,r24
 139 0060 9581      		ldd r25,Z+5
 140 0062 8481      		ldd r24,Z+4
 141               	.LVL11:
 142 0064 8917      		cp r24,r25
 143 0066 01F4      		brne .L13
 144               	.LM21:
 145 0068 8FEF      		ldi r24,lo8(-1)
 146 006a 9FEF      		ldi r25,hi8(-1)
 147 006c 00C0      		rjmp .L15
 148               	.L13:
 149               	.LM22:
 150 006e FD01      		movw r30,r26
 151 0070 E90F      		add r30,r25
 152 0072 F11D      		adc r31,__zero_reg__
 153 0074 1781      		ldd r17,Z+7
 154               	.LM23:
 155 0076 9F5F      		subi r25,lo8(-(1))
 156               	.LVL12:
 157               	.LM24:
 158 0078 FD01      		movw r30,r26
 159 007a 8681      		ldd r24,Z+6
 160 007c 9817      		cp r25,r24
 161 007e 00F0      		brlo .L16
 162 0080 90E0      		ldi r25,lo8(0)
 163               	.L16:
 164               	.LM25:
 165 0082 FD01      		movw r30,r26
 166 0084 9583      		std Z+5,r25
 167               	.LM26:
 168 0086 CD01      		movw r24,r26
 169 0088 0296      		adiw r24,2
 170 008a 0E94 0000 		call AvrXSetSemaphore
 171               	.LVL13:
 172               	.LM27:
 173 008e 812F      		mov r24,r17
 174 0090 9927      		clr r25
 175               	.LVL14:
 176               	.L15:
 177               	/* epilogue: frame size=0 */
 178 0092 1F91      		pop r17
 179 0094 0895      		ret
 180               	/* epilogue end (size=2) */
 181               	/* function AvrXPullFifo size 30 (27) */
 182               	.LFE3:
 184               	.global	AvrXWaitPullFifo
 186               	AvrXWaitPullFifo:
 187               	.LFB5:
 188               	.LM28:
 189               	/* prologue: frame size=0 */
 190 0096 CF93      		push r28
 191 0098 DF93      		push r29
 192               	/* prologue end (size=2) */
 193               	.LVL15:
 194 009a EC01      		movw r28,r24
 195 009c 00C0      		rjmp .L20
 196               	.LVL16:
 197               	.L21:
 198               	.LM29:
 199 009e CE01      		movw r24,r28
 200               	.LVL17:
 201 00a0 0E94 0000 		call AvrXWaitSemaphore
 202               	.LVL18:
 203               	.L20:
 204               	.LM30:
 205 00a4 CE01      		movw r24,r28
 206 00a6 0E94 0000 		call AvrXPullFifo
 207               	.LVL19:
 208 00aa 2FEF      		ldi r18,hi8(-1)
 209 00ac 8F3F      		cpi r24,lo8(-1)
 210 00ae 9207      		cpc r25,r18
 211 00b0 01F0      		breq .L21
 212               	/* epilogue: frame size=0 */
 213 00b2 DF91      		pop r29
 214 00b4 CF91      		pop r28
 215 00b6 0895      		ret
 216               	/* epilogue end (size=3) */
 217               	/* function AvrXWaitPullFifo size 17 (12) */
 218               	.LFE5:
 220               	.global	AvrXPutFifo
 222               	AvrXPutFifo:
 223               	.LFB2:
 224               	.LM31:
 225               	/* prologue: frame size=0 */
 226               	/* prologue end (size=0) */
 227               	.LVL20:
 228 00b8 DC01      		movw r26,r24
 229               	.LM32:
 230 00ba FC01      		movw r30,r24
 231 00bc 2481      		ldd r18,Z+4
 232 00be 922F      		mov r25,r18
 233               	.LVL21:
 234 00c0 9F5F      		subi r25,lo8(-(1))
 235               	.LM33:
 236 00c2 8681      		ldd r24,Z+6
 237               	.LVL22:
 238 00c4 9817      		cp r25,r24
 239 00c6 00F0      		brlo .L25
 240               	.LM34:
 241 00c8 90E0      		ldi r25,lo8(0)
 242               	.L25:
 243               	.LM35:
 244 00ca FD01      		movw r30,r26
 245 00cc 8581      		ldd r24,Z+5
 246 00ce 9817      		cp r25,r24
 247 00d0 01F4      		brne .L27
 248 00d2 8FEF      		ldi r24,lo8(-1)
 249 00d4 9FEF      		ldi r25,hi8(-1)
 250 00d6 0895      		ret
 251               	.L27:
 252               	.LM36:
 253 00d8 FD01      		movw r30,r26
 254 00da E20F      		add r30,r18
 255 00dc F11D      		adc r31,__zero_reg__
 256 00de 6783      		std Z+7,r22
 257               	.LM37:
 258 00e0 FD01      		movw r30,r26
 259 00e2 9483      		std Z+4,r25
 260               	.LM38:
 261 00e4 CD01      		movw r24,r26
 262 00e6 0E94 0000 		call AvrXSetSemaphore
 263               	.LVL23:
 264 00ea 80E0      		ldi r24,lo8(0)
 265 00ec 90E0      		ldi r25,hi8(0)
 266               	.LM39:
 267 00ee 0895      		ret
 268               	/* epilogue: frame size=0 */
 269               	/* epilogue: noreturn */
 270               	/* epilogue end (size=0) */
 271               	/* function AvrXPutFifo size 28 (28) */
 272               	.LFE2:
 274               	.global	AvrXWaitPutFifo
 276               	AvrXWaitPutFifo:
 277               	.LFB4:
 278               	.LM40:
 279               	/* prologue: frame size=0 */
 280 00f0 1F93      		push r17
 281 00f2 CF93      		push r28
 282 00f4 DF93      		push r29
 283               	/* prologue end (size=3) */
 284               	.LVL24:
 285 00f6 EC01      		movw r28,r24
 286 00f8 162F      		mov r17,r22
 287 00fa 00C0      		rjmp .L32
 288               	.LVL25:
 289               	.L33:
 290               	.LM41:
 291 00fc CE01      		movw r24,r28
 292 00fe 0296      		adiw r24,2
 293 0100 0E94 0000 		call AvrXWaitSemaphore
 294               	.LVL26:
 295               	.L32:
 296               	.LM42:
 297 0104 612F      		mov r22,r17
 298 0106 CE01      		movw r24,r28
 299 0108 0E94 0000 		call AvrXPutFifo
 300 010c 8F5F      		subi r24,lo8(-1)
 301 010e 9F4F      		sbci r25,hi8(-1)
 302 0110 01F0      		breq .L33
 303               	/* epilogue: frame size=0 */
 304 0112 DF91      		pop r29
 305 0114 CF91      		pop r28
 306 0116 1F91      		pop r17
 307 0118 0895      		ret
 308               	/* epilogue end (size=4) */
 309               	/* function AvrXWaitPutFifo size 22 (15) */
 310               	.LFE4:
 384               	.Letext0:
DEFINED SYMBOLS
                            *ABS*:00000000 AvrXFifo.c
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccAF5Fll.s:3      *ABS*:0000003f __SREG__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccAF5Fll.s:4      *ABS*:0000003e __SP_H__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccAF5Fll.s:5      *ABS*:0000003d __SP_L__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccAF5Fll.s:6      *ABS*:00000000 __tmp_reg__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccAF5Fll.s:7      *ABS*:00000001 __zero_reg__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccAF5Fll.s:20     .text:00000000 AvrXPeekFifo
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccAF5Fll.s:53     .text:0000001a AvrXStatFifo
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccAF5Fll.s:98     .text:0000003c AvrXFlushFifo
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccAF5Fll.s:129    .text:0000005a AvrXPullFifo
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccAF5Fll.s:186    .text:00000096 AvrXWaitPullFifo
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccAF5Fll.s:222    .text:000000b8 AvrXPutFifo
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccAF5Fll.s:276    .text:000000f0 AvrXWaitPutFifo

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
AvrXResetSemaphore
AvrXSetSemaphore
AvrXWaitSemaphore

⌨️ 快捷键说明

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