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

📄 main.lst

📁 旋转16个LED灯控制程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
   1               		.file	"main.c"
   2               		.arch attiny2313
   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	clean
  19               	.global	clean
  20               		.section .bss
  23               	clean:
  24 0000 00        		.skip 1,0
  25               	.global	pixelNum
  26               	.global	pixelNum
  29               	pixelNum:
  30 0001 00        		.skip 1,0
  31               	.global	charNum
  32               	.global	charNum
  35               	charNum:
  36 0002 00        		.skip 1,0
  37               	.global	botChar
  38               	.global	botChar
  41               	botChar:
  42 0003 0000      		.skip 2,0
  43               	.global	topChar
  44               	.global	topChar
  47               	topChar:
  48 0005 0000      		.skip 2,0
  49               	.global	stopcomputertx
  50               	.global	stopcomputertx
  53               	stopcomputertx:
  54 0007 00        		.skip 1,0
  55               	.global	botLine
  56               		.data
  59               	botLine:
  60 0000 2020 2020 		.string	"    my tools!   "
  60      6D79 2074 
  60      6F6F 6C73 
  60      2120 2020 
  60      00
  61               	.global	topLine
  64               	topLine:
  65 0011 2020 2020 		.string	"    Hands off   "
  65      4861 6E64 
  65      7320 6F66 
  65      6620 2020 
  65      00
  66               		.text
  67               	.global	__vector_6
  69               	__vector_6:
  70               	.LFB2:
  71               	.LM1:
  72               	/* prologue: frame size=0 */
  73 0000 1F92      		push __zero_reg__
  74 0002 0F92      		push __tmp_reg__
  75 0004 0FB6      		in __tmp_reg__,__SREG__
  76 0006 0F92      		push __tmp_reg__
  77 0008 1124      		clr __zero_reg__
  78 000a 2F93      		push r18
  79 000c 8F93      		push r24
  80 000e 9F93      		push r25
  81               	/* prologue end (size=8) */
  82               	.LM2:
  83 0010 C09A      		sbi 56-0x20,0
  84               	.LM3:
  85 0012 8091 0000 		lds r24,hall_debounce
  86 0016 8F3F      		cpi r24,lo8(-1)
  87 0018 29F0      		breq .L2
  88               	.LM4:
  89 001a 8091 0000 		lds r24,hall_debounce
  90 001e 8F5F      		subi r24,lo8(-(1))
  91 0020 8093 0000 		sts hall_debounce,r24
  92               	.L2:
  93               	.LM5:
  94 0024 8091 0000 		lds r24,sensor_timer
  95 0028 9091 0000 		lds r25,(sensor_timer)+1
  96 002c 8F5F      		subi r24,lo8(-1)
  97 002e 9F4F      		sbci r25,hi8(-1)
  98 0030 49F0      		breq .L3
  99               	.LM6:
 100 0032 8091 0000 		lds r24,sensor_timer
 101 0036 9091 0000 		lds r25,(sensor_timer)+1
 102 003a 0196      		adiw r24,1
 103 003c 9093 0000 		sts (sensor_timer)+1,r25
 104 0040 8093 0000 		sts sensor_timer,r24
 105               	.L3:
 106               	.LM7:
 107 0044 C098      		cbi 56-0x20,0
 108               	/* epilogue: frame size=0 */
 109 0046 9F91      		pop r25
 110 0048 8F91      		pop r24
 111 004a 2F91      		pop r18
 112 004c 0F90      		pop __tmp_reg__
 113 004e 0FBE      		out __SREG__,__tmp_reg__
 114 0050 0F90      		pop __tmp_reg__
 115 0052 1F90      		pop __zero_reg__
 116 0054 1895      		reti
 117               	/* epilogue end (size=8) */
 118               	/* function __vector_6 size 44 (28) */
 119               	.LFE2:
 121               	.global	delay_ms
 123               	delay_ms:
 124               	.LFB7:
 125               	.LM8:
 126               	/* prologue: frame size=0 */
 127               	/* prologue end (size=0) */
 128               	.LM9:
 129 0056 20ED      		ldi r18,lo8(2000)
 130 0058 37E0      		ldi r19,hi8(2000)
 131               	.LM10:
 132               	/* #APP */
 133               		
 134               	L_dl137:
 135 005a E22F      		mov r30, r18
 136 005c F32F      		mov r31, r19
 137               	L_dl237:
 138 005e 3197      		sbiw r30, 1
 139 0060 F1F7      		brne L_dl237
 140 0062 A895      		wdr
 141 0064 8A95      		dec r24
 142 0066 C9F7      		brne L_dl137
 143               		
 144               	/* #NOAPP */
 145               	/* epilogue: frame size=0 */
 146 0068 0895      		ret
 147               	/* epilogue end (size=1) */
 148               	/* function delay_ms size 25 (24) */
 149               	.LFE7:
 151               	.global	__vector_1
 153               	__vector_1:
 154               	.LFB4:
 155               	.LM11:
 156               	/* prologue: frame size=0 */
 157 006a 1F92      		push __zero_reg__
 158 006c 0F92      		push __tmp_reg__
 159 006e 0FB6      		in __tmp_reg__,__SREG__
 160 0070 0F92      		push __tmp_reg__
 161 0072 1124      		clr __zero_reg__
 162 0074 2F93      		push r18
 163 0076 3F93      		push r19
 164 0078 4F93      		push r20
 165 007a 5F93      		push r21
 166 007c 6F93      		push r22
 167 007e 7F93      		push r23
 168 0080 8F93      		push r24
 169 0082 9F93      		push r25
 170 0084 AF93      		push r26
 171 0086 BF93      		push r27
 172 0088 CF93      		push r28
 173 008a DF93      		push r29
 174 008c EF93      		push r30
 175 008e FF93      		push r31
 176               	/* prologue end (size=19) */
 177               	.LM12:
 178 0090 C29A      		sbi 56-0x20,2
 179               	.LM13:
 180 0092 C0E0      		ldi r28,lo8(0)
 181 0094 D0E0      		ldi r29,hi8(0)
 182               	.LM14:
 183 0096 8299      		sbic 48-0x20,2
 184 0098 05C0      		rjmp .L15
 185               	.L8:
 186               	.LM15:
 187 009a 2196      		adiw r28,1
 188               	.LM16:
 189 009c 81E0      		ldi r24,lo8(1)
 190 009e DBDF      		rcall delay_ms
 191 00a0 829B      		sbis 48-0x20,2
 192 00a2 FBCF      		rjmp .L8
 193               	.L15:
 194               	.LM17:
 195 00a4 C536      		cpi r28,101
 196 00a6 D105      		cpc r29,__zero_reg__
 197 00a8 60F0      		brlo .L9
 198               	.LM18:
 199 00aa C45F      		subi r28,lo8(500)
 200 00ac D140      		sbci r29,hi8(500)
 201 00ae 18F4      		brsh .L10
 202               	.LM19:
 203 00b0 88E0      		ldi r24,lo8(8)
 204 00b2 81BD      		out 65-0x20,r24
 205               	.L11:
 206               	.LM20:
 207 00b4 FFCF      		rjmp .L11
 208               	.L10:
 209               	.LM21:
 210 00b6 8FEF      		ldi r24,lo8(-1)
 211 00b8 9FEF      		ldi r25,hi8(-1)
 212 00ba 9093 0000 		sts (sensor_timer)+1,r25
 213 00be 8093 0000 		sts sensor_timer,r24
 214               	.L9:
 215               	.LM22:
 216 00c2 C298      		cbi 56-0x20,2
 217               	/* epilogue: frame size=0 */
 218 00c4 FF91      		pop r31
 219 00c6 EF91      		pop r30
 220 00c8 DF91      		pop r29
 221 00ca CF91      		pop r28
 222 00cc BF91      		pop r27
 223 00ce AF91      		pop r26
 224 00d0 9F91      		pop r25
 225 00d2 8F91      		pop r24
 226 00d4 7F91      		pop r23
 227 00d6 6F91      		pop r22
 228 00d8 5F91      		pop r21
 229 00da 4F91      		pop r20
 230 00dc 3F91      		pop r19
 231 00de 2F91      		pop r18
 232 00e0 0F90      		pop __tmp_reg__
 233 00e2 0FBE      		out __SREG__,__tmp_reg__
 234 00e4 0F90      		pop __tmp_reg__
 235 00e6 1F90      		pop __zero_reg__
 236 00e8 1895      		reti
 237               	/* epilogue end (size=19) */
 238               	/* function __vector_1 size 65 (27) */
 239               	.LFE4:
 241               	.global	ioinit
 243               	ioinit:
 244               	.LFB6:
 245               	.LM23:
 246               	/* prologue: frame size=0 */
 247               	/* prologue end (size=0) */
 248               	.LM24:
 249 00ea 83E7      		ldi r24,lo8(115)
 250 00ec 81BB      		out 49-0x20,r24
 251               	.LM25:
 252 00ee 8FED      		ldi r24,lo8(-33)
 253 00f0 87BB      		out 55-0x20,r24
 254               	.LM26:
 255 00f2 80E1      		ldi r24,lo8(16)
 256 00f4 88BB      		out 56-0x20,r24
 257               	.LM27:
 258 00f6 8CE4      		ldi r24,lo8(76)
 259 00f8 82BB      		out 50-0x20,r24
 260               	.LM28:
 261 00fa 98E0      		ldi r25,lo8(8)
 262 00fc 95BF      		out 85-0x20,r25
 263               	.LM29:
 264 00fe 80EC      		ldi r24,lo8(-64)
 265 0100 8BBF      		out 91-0x20,r24
 266               	.LM30:
 267 0102 10BE      		out 80-0x20,__zero_reg__
 268               	.LM31:
 269 0104 84E0      		ldi r24,lo8(4)
 270 0106 83BF      		out 83-0x20,r24
 271               	.LM32:
 272 0108 89B7      		in r24,89-0x20
 273 010a 8260      		ori r24,lo8(2)
 274 010c 89BF      		out 89-0x20,r24
 275               	.LM33:
 276 010e 1FBC      		out 79-0x20,__zero_reg__
 277               	.LM34:
 278 0110 9EBD      		out 78-0x20,r25
 279               	.LM35:
 280 0112 1092 0000 		sts hall_debounce,__zero_reg__
 281               	.LM36:
 282 0116 1092 0000 		sts (sensor_timer)+1,__zero_reg__
 283 011a 1092 0000 		sts sensor_timer,__zero_reg__
 284               	/* epilogue: frame size=0 */
 285 011e 0895      		ret
 286               	/* epilogue end (size=1) */
 287               	/* function ioinit size 27 (26) */
 288               	.LFE6:
 290               	.global	spi_transfer
 292               	spi_transfer:
 293               	.LFB14:
 294               	.LM37:
 295               	/* prologue: frame size=0 */
 296               	/* prologue end (size=0) */
 297               	.LM38:
 298 0120 8FB9      		out 47-0x20,r24
 299               	.LM39:
 300 0122 80E4      		ldi r24,lo8(64)
 301 0124 8EB9      		out 46-0x20,r24
 302               	.LM40:
 303 0126 7699      		sbic 46-0x20,6
 304 0128 04C0      		rjmp .L22
 305 012a 8BE1      		ldi r24,lo8(27)
 306               	.L20:
 307               	.LM41:
 308 012c 8DB9      		out 45-0x20,r24
 309 012e 769B      		sbis 46-0x20,6
 310 0130 FDCF      		rjmp .L20
 311               	.L22:
 312               	.LM42:
 313 0132 8FB1      		in r24,47-0x20
 314               	.LM43:
 315 0134 9927      		clr r25
 316               	/* epilogue: frame size=0 */
 317 0136 0895      		ret
 318               	/* epilogue end (size=1) */
 319               	/* function spi_transfer size 12 (11) */
 320               	.LFE14:
 322               	.global	clock_leds
 324               	clock_leds:
 325               	.LFB8:
 326               	.LM44:
 327               	/* prologue: frame size=0 */
 328               	/* prologue end (size=0) */
 329               	.LM45:
 330 0138 8091 0000 		lds r24,fleds+2
 331 013c F1DF      		rcall spi_transfer
 332               	.LM46:
 333 013e 8091 0000 		lds r24,fleds+3
 334 0142 EEDF      		rcall spi_transfer
 335               	.LM47:
 336 0144 8091 0000 		lds r24,fleds
 337 0148 EBDF      		rcall spi_transfer
 338               	.LM48:
 339 014a 8091 0000 		lds r24,fleds+1
 340 014e E8DF      		rcall spi_transfer
 341               	.LM49:
 342 0150 949A      		sbi 50-0x20,4
 343               	.LM50:
 344               	/* #APP */
 345 0152 0000      		nop
 346 0154 0000      		nop
 347 0156 0000      		nop
 348 0158 0000      		nop
 349               	.LM51:
 350               	/* #NOAPP */
 351 015a 9498      		cbi 50-0x20,4
 352               	/* epilogue: frame size=0 */
 353 015c 0895      		ret
 354               	/* epilogue end (size=1) */
 355               	/* function clock_leds size 23 (22) */
 356               	.LFE8:
 358               	.global	set_led
 360               	set_led:
 361               	.LFB9:
 362               	.LM52:
 363               	/* prologue: frame size=0 */
 364               	/* prologue end (size=0) */
 365 015e 282F      		mov r18,r24
 366               	.LM53:
 367 0160 8FEF      		ldi r24,lo8(-1)
 368 0162 8093 0000 		sts fleds+3,r24
 369 0166 8093 0000 		sts fleds+2,r24
 370 016a 8093 0000 		sts fleds+1,r24
 371 016e 8093 0000 		sts fleds,r24
 372               	.LM54:
 373 0172 822F      		mov r24,r18
 374 0174 8695      		lsr r24
 375 0176 8695      		lsr r24
 376 0178 8695      		lsr r24
 377 017a E82F      		mov r30,r24
 378 017c FF27      		clr r31
 379 017e E050      		subi r30,lo8(-(fleds))
 380 0180 F040      		sbci r31,hi8(-(fleds))
 381 0182 2770      		andi r18,lo8(7)
 382 0184 81E0      		ldi r24,lo8(1)
 383 0186 90E0      		ldi r25,hi8(1)
 384 0188 02C0      		rjmp 2f
 385 018a 880F      	1:	lsl r24
 386 018c 991F      		rol r25
 387 018e 2A95      	2:	dec r18
 388 0190 E2F7      		brpl 1b
 389 0192 8095      		com r24
 390 0194 8083      		st Z,r24
 391               	.LM55:
 392 0196 D0DF      		rcall clock_leds
 393               	/* epilogue: frame size=0 */
 394 0198 0895      		ret
 395               	/* epilogue end (size=1) */
 396               	/* function set_led size 31 (30) */
 397               	.LFE9:
 399               	.global	__vector_2
 401               	__vector_2:
 402               	.LFB5:
 403               	.LM56:
 404               	/* prologue: frame size=0 */
 405 019a 1F92      		push __zero_reg__
 406 019c 0F92      		push __tmp_reg__
 407 019e 0FB6      		in __tmp_reg__,__SREG__
 408 01a0 0F92      		push __tmp_reg__
 409 01a2 1124      		clr __zero_reg__
 410 01a4 2F93      		push r18
 411 01a6 3F93      		push r19
 412 01a8 4F93      		push r20
 413 01aa 5F93      		push r21
 414 01ac 6F93      		push r22
 415 01ae 7F93      		push r23
 416 01b0 8F93      		push r24
 417 01b2 9F93      		push r25
 418 01b4 AF93      		push r26
 419 01b6 BF93      		push r27
 420 01b8 EF93      		push r30
 421 01ba FF93      		push r31
 422               	/* prologue end (size=17) */
 423               	.LM57:
 424 01bc C39A      		sbi 56-0x20,3
 425               	.LM58:
 426 01be 8091 0000 		lds r24,hall_debounce
 427 01c2 8530      		cpi r24,lo8(5)
 428 01c4 B0F1      		brlo .L26
 429               	.LM59:
 430 01c6 81E0      		ldi r24,lo8(1)
 431 01c8 8093 0000 		sts stopcomputertx,r24
 432               	.LM60:
 433 01cc 1DBC      		out (76)+1-0x20,__zero_reg__
 434 01ce 1CBC      		out 76-0x20,__zero_reg__
 435               	.LM61:
 436 01d0 8091 0000 		lds r24,sensor_timer
 437 01d4 9091 0000 		lds r25,(sensor_timer)+1

⌨️ 快捷键说明

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