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

📄 nangle.lss

📁 南格(AVR)操作系统 for keil
💻 LSS
📖 第 1 页 / 共 3 页
字号:
 464:	9e b7       	in	r25, 0x3e	; 62

00000466 <sks1>:
 466:	80 93 84 02 	sts	0x0284, r24
 46a:	90 93 85 02 	sts	0x0285, r25
 46e:	09 94       	ijmp

00000470 <AvrXRunTask>:
 470:	01 d0       	rcall	.+2      	; 0x474 <AvrXInitTask>
 472:	23 c0       	rjmp	.+70     	; 0x4ba <AvrXResume>

00000474 <AvrXInitTask>:
 474:	e8 2f       	mov	r30, r24
 476:	f9 2f       	mov	r31, r25
 478:	1d d0       	rcall	.+58     	; 0x4b4 <lpm_inc>
 47a:	a0 2d       	mov	r26, r0
 47c:	1b d0       	rcall	.+54     	; 0x4b4 <lpm_inc>
 47e:	b0 2d       	mov	r27, r0
 480:	19 d0       	rcall	.+50     	; 0x4b4 <lpm_inc>
 482:	0c 92       	st	X, r0
 484:	17 d0       	rcall	.+46     	; 0x4b4 <lpm_inc>
 486:	0e 92       	st	-X, r0
 488:	40 e0       	ldi	r20, 0x00	; 0
 48a:	40 e0       	ldi	r20, 0x00	; 0
 48c:	51 e2       	ldi	r21, 0x21	; 33

0000048e <PushRegisters>:
 48e:	4e 93       	st	-X, r20
 490:	5a 95       	dec	r21
 492:	e9 f7       	brne	.-6      	; 0x48e <PushRegisters>
 494:	11 97       	sbiw	r26, 0x01	; 1
 496:	0e d0       	rcall	.+28     	; 0x4b4 <lpm_inc>
 498:	80 2d       	mov	r24, r0
 49a:	0c d0       	rcall	.+24     	; 0x4b4 <lpm_inc>
 49c:	90 2d       	mov	r25, r0
 49e:	0a d0       	rcall	.+20     	; 0x4b4 <lpm_inc>
 4a0:	e8 2f       	mov	r30, r24
 4a2:	f9 2f       	mov	r31, r25
 4a4:	a4 83       	std	Z+4, r26	; 0x04
 4a6:	b5 83       	std	Z+5, r27	; 0x05
 4a8:	03 82       	std	Z+3, r0	; 0x03
 4aa:	a0 e6       	ldi	r26, 0x60	; 96
 4ac:	a2 83       	std	Z+2, r26	; 0x02
 4ae:	41 83       	std	Z+1, r20	; 0x01
 4b0:	40 83       	st	Z, r20
 4b2:	08 95       	ret

000004b4 <lpm_inc>:
 4b4:	c8 95       	lpm
 4b6:	31 96       	adiw	r30, 0x01	; 1
 4b8:	08 95       	ret

000004ba <AvrXResume>:
 4ba:	f8 94       	cli
 4bc:	48 df       	rcall	.-368    	; 0x34e <IntProlog>
 4be:	78 94       	sei
 4c0:	e8 2f       	mov	r30, r24
 4c2:	f9 2f       	mov	r31, r25
 4c4:	22 81       	ldd	r18, Z+2	; 0x02
 4c6:	2f 7d       	andi	r18, 0xDF	; 223
 4c8:	22 83       	std	Z+2, r18	; 0x02
 4ca:	26 ff       	sbrs	r18, 6
 4cc:	03 c0       	rjmp	.+6      	; 0x4d4 <ar00>
 4ce:	2f 7b       	andi	r18, 0xBF	; 191
 4d0:	22 83       	std	Z+2, r18	; 0x02
 4d2:	01 d0       	rcall	.+2      	; 0x4d6 <_QueuePid>

000004d4 <ar00>:
 4d4:	8a cf       	rjmp	.-236    	; 0x3ea <_Epilog>

000004d6 <_QueuePid>:
 4d6:	e8 2f       	mov	r30, r24
 4d8:	f9 2f       	mov	r31, r25
 4da:	3f ef       	ldi	r19, 0xFF	; 255
 4dc:	22 81       	ldd	r18, Z+2	; 0x02
 4de:	20 73       	andi	r18, 0x30	; 48
 4e0:	e1 f4       	brne	.+56     	; 0x51a <_qpSUSPEND>
 4e2:	cf 93       	push	r28
 4e4:	df 93       	push	r29
 4e6:	43 81       	ldd	r20, Z+3	; 0x03
 4e8:	c0 e8       	ldi	r28, 0x80	; 128
 4ea:	d2 e0       	ldi	r29, 0x02	; 2
 4ec:	2f b7       	in	r18, 0x3f	; 63
 4ee:	f8 94       	cli

000004f0 <_qp00>:
 4f0:	33 95       	inc	r19
 4f2:	ec 2f       	mov	r30, r28
 4f4:	fd 2f       	mov	r31, r29
 4f6:	c0 81       	ld	r28, Z
 4f8:	d1 81       	ldd	r29, Z+1	; 0x01
 4fa:	20 96       	adiw	r28, 0x00	; 0
 4fc:	19 f0       	breq	.+6      	; 0x504 <_qp01>
 4fe:	5b 81       	ldd	r21, Y+3	; 0x03
 500:	45 17       	cp	r20, r21
 502:	b0 f7       	brcc	.-20     	; 0x4f0 <_qp00>

00000504 <_qp01>:
 504:	91 83       	std	Z+1, r25	; 0x01
 506:	80 83       	st	Z, r24
 508:	f9 2f       	mov	r31, r25
 50a:	e8 2f       	mov	r30, r24
 50c:	d1 83       	std	Z+1, r29	; 0x01
 50e:	c0 83       	st	Z, r28
 510:	df 91       	pop	r29
 512:	cf 91       	pop	r28
 514:	83 2f       	mov	r24, r19
 516:	2f bf       	out	0x3f, r18	; 63
 518:	08 95       	ret

0000051a <_qpSUSPEND>:
 51a:	83 2f       	mov	r24, r19
 51c:	20 64       	ori	r18, 0x40	; 64
 51e:	22 83       	std	Z+2, r18	; 0x02
 520:	08 95       	ret

00000522 <AvrXDelay>:
 522:	01 d0       	rcall	.+2      	; 0x526 <AvrXStartTimer>
 524:	70 c0       	rjmp	.+224    	; 0x606 <AvrXWaitMessageAck>

00000526 <AvrXStartTimer>:
 526:	60 50       	subi	r22, 0x00	; 0
 528:	70 40       	sbci	r23, 0x00	; 0
 52a:	09 f4       	brne	.+2      	; 0x52e <CountNotZero>
 52c:	83 c0       	rjmp	.+262    	; 0x634 <AvrXAckMessage>

0000052e <CountNotZero>:
 52e:	f8 94       	cli
 530:	0e df       	rcall	.-484    	; 0x34e <IntProlog>
 532:	78 94       	sei
 534:	d9 d0       	rcall	.+434    	; 0x6e8 <AvrXIntResetObjectSemaphore>
 536:	e8 e8       	ldi	r30, 0x88	; 136
 538:	f2 e0       	ldi	r31, 0x02	; 2
 53a:	f8 94       	cli
 53c:	20 91 8a 02 	lds	r18, 0x028A
 540:	2a 95       	dec	r18
 542:	20 93 8a 02 	sts	0x028A, r18
 546:	78 94       	sei

00000548 <ast00>:
 548:	ce 2f       	mov	r28, r30
 54a:	df 2f       	mov	r29, r31
 54c:	e8 81       	ld	r30, Y
 54e:	f9 81       	ldd	r31, Y+1	; 0x01
 550:	30 96       	adiw	r30, 0x00	; 0
 552:	59 f0       	breq	.+22     	; 0x56a <ast01>
 554:	24 81       	ldd	r18, Z+4	; 0x04
 556:	35 81       	ldd	r19, Z+5	; 0x05
 558:	62 1b       	sub	r22, r18
 55a:	73 0b       	sbc	r23, r19
 55c:	a8 f7       	brcc	.-22     	; 0x548 <ast00>
 55e:	62 0f       	add	r22, r18
 560:	73 1f       	adc	r23, r19
 562:	26 1b       	sub	r18, r22
 564:	37 0b       	sbc	r19, r23
 566:	24 83       	std	Z+4, r18	; 0x04
 568:	35 83       	std	Z+5, r19	; 0x05

0000056a <ast01>:
 56a:	99 83       	std	Y+1, r25	; 0x01
 56c:	88 83       	st	Y, r24
 56e:	d9 2f       	mov	r29, r25
 570:	c8 2f       	mov	r28, r24
 572:	f9 83       	std	Y+1, r31	; 0x01
 574:	e8 83       	st	Y, r30
 576:	6c 83       	std	Y+4, r22	; 0x04
 578:	7d 83       	std	Y+5, r23	; 0x05
 57a:	3c d0       	rcall	.+120    	; 0x5f4 <TimerHandler>
 57c:	36 cf       	rjmp	.-404    	; 0x3ea <_Epilog>

0000057e <AvrXTimerHandler>:
 57e:	f8 94       	cli
 580:	20 91 8a 02 	lds	r18, 0x028A
 584:	21 50       	subi	r18, 0x01	; 1
 586:	20 93 8a 02 	sts	0x028A, r18
 58a:	78 94       	sei
 58c:	08 f0       	brcs	.+2      	; 0x590 <ati00>
 58e:	08 95       	ret

00000590 <ati00>:
 590:	cf 93       	push	r28
 592:	df 93       	push	r29
 594:	af 93       	push	r26
 596:	bf 93       	push	r27
 598:	d0 91 89 02 	lds	r29, 0x0289
 59c:	c0 91 88 02 	lds	r28, 0x0288
 5a0:	20 96       	adiw	r28, 0x00	; 0
 5a2:	21 f1       	breq	.+72     	; 0x5ec <ati02>
 5a4:	fd 81       	ldd	r31, Y+5	; 0x05
 5a6:	ec 81       	ldd	r30, Y+4	; 0x04
 5a8:	31 97       	sbiw	r30, 0x01	; 1
 5aa:	fd 83       	std	Y+5, r31	; 0x05
 5ac:	ec 83       	std	Y+4, r30	; 0x04

000005ae <ati01>:
 5ae:	ef 2b       	or	r30, r31
 5b0:	e9 f4       	brne	.+58     	; 0x5ec <ati02>
 5b2:	a8 81       	ld	r26, Y
 5b4:	b9 81       	ldd	r27, Y+1	; 0x01
 5b6:	b0 93 89 02 	sts	0x0289, r27
 5ba:	a0 93 88 02 	sts	0x0288, r26
 5be:	f9 83       	std	Y+1, r31	; 0x01
 5c0:	e8 83       	st	Y, r30
 5c2:	8a 81       	ldd	r24, Y+2	; 0x02
 5c4:	9b 81       	ldd	r25, Y+3	; 0x03
 5c6:	82 50       	subi	r24, 0x02	; 2
 5c8:	90 40       	sbci	r25, 0x00	; 0
 5ca:	31 f4       	brne	.+12     	; 0x5d8 <ati04>
 5cc:	8e 81       	ldd	r24, Y+6	; 0x06
 5ce:	9f 81       	ldd	r25, Y+7	; 0x07
 5d0:	7d 2f       	mov	r23, r29
 5d2:	6c 2f       	mov	r22, r28
 5d4:	9f d0       	rcall	.+318    	; 0x714 <AvrXIntSendMessage>
 5d6:	03 c0       	rjmp	.+6      	; 0x5de <ati03>

000005d8 <ati04>:
 5d8:	8c 2f       	mov	r24, r28
 5da:	9d 2f       	mov	r25, r29
 5dc:	38 d0       	rcall	.+112    	; 0x64e <AvrXIntSetObjectSemaphore>

000005de <ati03>:
 5de:	10 96       	adiw	r26, 0x00	; 0
 5e0:	29 f0       	breq	.+10     	; 0x5ec <ati02>
 5e2:	ca 2f       	mov	r28, r26
 5e4:	db 2f       	mov	r29, r27
 5e6:	fd 81       	ldd	r31, Y+5	; 0x05
 5e8:	ec 81       	ldd	r30, Y+4	; 0x04
 5ea:	e1 cf       	rjmp	.-62     	; 0x5ae <ati01>

000005ec <ati02>:
 5ec:	bf 91       	pop	r27
 5ee:	af 91       	pop	r26
 5f0:	df 91       	pop	r29
 5f2:	cf 91       	pop	r28

000005f4 <TimerHandler>:
 5f4:	f8 94       	cli
 5f6:	20 91 8a 02 	lds	r18, 0x028A
 5fa:	23 95       	inc	r18
 5fc:	20 93 8a 02 	sts	0x028A, r18
 600:	78 94       	sei
 602:	31 f6       	brne	.-116    	; 0x590 <ati00>
 604:	08 95       	ret

00000606 <AvrXWaitMessageAck>:
 606:	8e 5f       	subi	r24, 0xFE	; 254
 608:	9f 4f       	sbci	r25, 0xFF	; 255

0000060a <AvrXWaitSemaphore>:
 60a:	e8 2f       	mov	r30, r24
 60c:	f9 2f       	mov	r31, r25
 60e:	f8 94       	cli
 610:	20 81       	ld	r18, Z
 612:	31 81       	ldd	r19, Z+1	; 0x01
 614:	21 50       	subi	r18, 0x01	; 1
 616:	30 40       	sbci	r19, 0x00	; 0
 618:	19 f4       	brne	.+6      	; 0x620 <aws01>
 61a:	20 83       	st	Z, r18
 61c:	31 83       	std	Z+1, r19	; 0x01
 61e:	18 95       	reti

00000620 <aws01>:
 620:	96 de       	rcall	.-724    	; 0x34e <IntProlog>
 622:	e0 e8       	ldi	r30, 0x80	; 128
 624:	f2 e0       	ldi	r31, 0x02	; 2
 626:	73 81       	ldd	r23, Z+3	; 0x03
 628:	62 81       	ldd	r22, Z+2	; 0x02
 62a:	3c d0       	rcall	.+120    	; 0x6a4 <_RemoveObject>
 62c:	e8 2f       	mov	r30, r24
 62e:	f9 2f       	mov	r31, r25
 630:	2b d0       	rcall	.+86     	; 0x688 <_AppendObject>
 632:	db ce       	rjmp	.-586    	; 0x3ea <_Epilog>

00000634 <AvrXAckMessage>:
 634:	8e 5f       	subi	r24, 0xFE	; 254
 636:	9f 4f       	sbci	r25, 0xFF	; 255

00000638 <AvrXSetSemaphore>:
 638:	0c d0       	rcall	.+24     	; 0x652 <AvrXIntSetSemaphore>
 63a:	90 91 86 02 	lds	r25, 0x0286
 63e:	93 95       	inc	r25
 640:	89 2b       	or	r24, r25
 642:	09 f0       	breq	.+2      	; 0x646 <axss0>
 644:	08 95       	ret

00000646 <axss0>:
 646:	f8 94       	cli
 648:	82 de       	rcall	.-764    	; 0x34e <IntProlog>
 64a:	78 94       	sei
 64c:	ce ce       	rjmp	.-612    	; 0x3ea <_Epilog>

0000064e <AvrXIntSetObjectSemaphore>:
 64e:	8e 5f       	subi	r24, 0xFE	; 254
 650:	9f 4f       	sbci	r25, 0xFF	; 255

00000652 <AvrXIntSetSemaphore>:
 652:	e8 2f       	mov	r30, r24
 654:	f9 2f       	mov	r31, r25
 656:	81 e0       	ldi	r24, 0x01	; 1
 658:	90 e0       	ldi	r25, 0x00	; 0
 65a:	2f b7       	in	r18, 0x3f	; 63
 65c:	f8 94       	cli
 65e:	71 81       	ldd	r23, Z+1	; 0x01
 660:	60 81       	ld	r22, Z
 662:	86 17       	cp	r24, r22
 664:	97 07       	cpc	r25, r23
 666:	28 f0       	brcs	.+10     	; 0x672 <aiss00>
 668:	80 83       	st	Z, r24
 66a:	91 83       	std	Z+1, r25	; 0x01

0000066c <BogusSemaphore>:
 66c:	8f ef       	ldi	r24, 0xFF	; 255
 66e:	2f bf       	out	0x3f, r18	; 63
 670:	08 95       	ret

00000672 <aiss00>:
 672:	8f e5       	ldi	r24, 0x5F	; 95
 674:	86 17       	cp	r24, r22
 676:	97 07       	cpc	r25, r23
 678:	c8 f7       	brcc	.-14     	; 0x66c <BogusSemaphore>
 67a:	23 d0       	rcall	.+70     	; 0x6c2 <_RemoveObjectAt>
 67c:	2f bf       	out	0x3f, r18	; 63
 67e:	86 2f       	mov	r24, r22
 680:	97 2f       	mov	r25, r23
 682:	29 cf       	rjmp	.-430    	; 0x4d6 <_QueuePid>

00000684 <_ao00>:
 684:	e2 2f       	mov	r30, r18
 686:	f3 2f       	mov	r31, r19

00000688 <_AppendObject>:
 688:	20 81       	ld	r18, Z
 68a:	31 81       	ldd	r19, Z+1	; 0x01
 68c:	20 50       	subi	r18, 0x00	; 0
 68e:	30 40       	sbci	r19, 0x00	; 0
 690:	c9 f7       	brne	.-14     	; 0x684 <_ao00>
 692:	71 83       	std	Z+1, r23	; 0x01
 694:	60 83       	st	Z, r22
 696:	f7 2f       	mov	r31, r23
 698:	e6 2f       	mov	r30, r22
 69a:	31 83       	std	Z+1, r19	; 0x01
 69c:	20 83       	st	Z, r18
 69e:	08 95       	ret

000006a0 <_ro00>:
 6a0:	f3 2f       	mov	r31, r19
 6a2:	e2 2f       	mov	r30, r18

000006a4 <_RemoveObject>:
 6a4:	20 81       	ld	r18, Z
 6a6:	31 81       	ldd	r19, Z+1	; 0x01
 6a8:	62 17       	cp	r22, r18
 6aa:	73 07       	cpc	r23, r19
 6ac:	51 f0       	breq	.+20     	; 0x6c2 <_RemoveObjectAt>
 6ae:	20 50       	subi	r18, 0x00	; 0
 6b0:	30 40       	sbci	r19, 0x00	; 0
 6b2:	b1 f7       	brne	.-20     	; 0x6a0 <_ro00>
 6b4:	08 95       	ret

000006b6 <_RemoveFirstObject>:
 6b6:	60 81       	ld	r22, Z
 6b8:	71 81       	ldd	r23, Z+1	; 0x01
 6ba:	60 50       	subi	r22, 0x00	; 0
 6bc:	70 40       	sbci	r23, 0x00	; 0
 6be:	09 f4       	brne	.+2      	; 0x6c2 <_RemoveObjectAt>
 6c0:	08 95       	ret

000006c2 <_RemoveObjectAt>:
 6c2:	4c 2f       	mov	r20, r28
 6c4:	5d 2f       	mov	r21, r29
 6c6:	c6 2f       	mov	r28, r22
 6c8:	d7 2f       	mov	r29, r23
 6ca:	79 81       	ldd	r23, Y+1	; 0x01
 6cc:	68 81       	ld	r22, Y
 6ce:	71 83       	std	Z+1, r23	; 0x01
 6d0:	60 83       	st	Z, r22
 6d2:	e6 2f       	mov	r30, r22
 6d4:	f7 2f       	mov	r31, r23
 6d6:	66 27       	eor	r22, r22
 6d8:	68 83       	st	Y, r22
 6da:	69 83       	std	Y+1, r22	; 0x01
 6dc:	7d 2f       	mov	r23, r29
 6de:	6c 2f       	mov	r22, r28
 6e0:	c4 2f       	mov	r28, r20
 6e2:	d5 2f       	mov	r29, r21
 6e4:	98 94       	clz
 6e6:	08 95       	ret

000006e8 <AvrXIntResetObjectSemaphore>:
 6e8:	e8 2f       	mov	r30, r24
 6ea:	f9 2f       	mov	r31, r25
 6ec:	32 96       	adiw	r30, 0x02	; 2
 6ee:	02 c0       	rjmp	.+4      	; 0x6f4 <ars00>

000006f0 <AvrXIntResetSemaphore>:
 6f0:	f9 2f       	mov	r31, r25
 6f2:	e8 2f       	mov	r30, r24

000006f4 <ars00>:
 6f4:	f8 94       	cli
 6f6:	40 81       	ld	r20, Z
 6f8:	51 81       	ldd	r21, Z+1	; 0x01
 6fa:	41 50       	subi	r20, 0x01	; 1
 6fc:	50 40       	sbci	r21, 0x00	; 0
 6fe:	11 f0       	breq	.+4      	; 0x704 <ars01>
 700:	4f 5f       	subi	r20, 0xFF	; 255
 702:	5f 4f       	sbci	r21, 0xFF	; 255

00000704 <ars01>:
 704:	51 83       	std	Z+1, r21	; 0x01
 706:	40 83       	st	Z, r20
 708:	18 95       	reti

0000070a <AvrXSendMessage>:
 70a:	f8 94       	cli
 70c:	20 de       	rcall	.-960    	; 0x34e <IntProlog>
 70e:	78 94       	sei
 710:	01 d0       	rcall	.+2      	; 0x714 <AvrXIntSendMessage>
 712:	6b ce       	rjmp	.-810    	; 0x3ea <_Epilog>

00000714 <AvrXIntSendMessage>:
 714:	f9 2f       	mov	r31, r25
 716:	e8 2f       	mov	r30, r24
 718:	b7 df       	rcall	.-146    	; 0x688 <_AppendObject>
 71a:	99 cf       	rjmp	.-206    	; 0x64e <AvrXIntSetObjectSemaphore>

0000071c <AvrXWaitMessage>:
 71c:	e8 2f       	mov	r30, r24
 71e:	f9 2f       	mov	r31, r25
 720:	f8 94       	cli
 722:	c9 df       	rcall	.-110    	; 0x6b6 <_RemoveFirstObject>
 724:	78 94       	sei
 726:	21 f4       	brne	.+8      	; 0x730 <_rm01>
 728:	6e df       	rcall	.-292    	; 0x606 <AvrXWaitMessageAck>
 72a:	82 50       	subi	r24, 0x02	; 2
 72c:	90 40       	sbci	r25, 0x00	; 0
 72e:	f6 cf       	rjmp	.-20     	; 0x71c <AvrXWaitMessage>

00000730 <_rm01>:
 730:	db df       	rcall	.-74     	; 0x6e8 <AvrXIntResetObjectSemaphore>
 732:	86 2f       	mov	r24, r22
 734:	97 2f       	mov	r25, r23
 736:	08 95       	ret

⌨️ 快捷键说明

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