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

📄 coder.lss

📁 光电编码器源代码
💻 LSS
📖 第 1 页 / 共 3 页
字号:
 3ca:	b9 0a       	sbc	r11, r25
 3cc:	ca 0a       	sbc	r12, r26
 3ce:	db 0a       	sbc	r13, r27
 3d0:	90 ea       	ldi	r25, 0xA0	; 160
 3d2:	e9 2e       	mov	r14, r25
 3d4:	96 e8       	ldi	r25, 0x86	; 134
 3d6:	f9 2e       	mov	r15, r25
 3d8:	91 e0       	ldi	r25, 0x01	; 1
 3da:	09 2f       	mov	r16, r25
 3dc:	11 2d       	mov	r17, r1
 3de:	c6 01       	movw	r24, r12
 3e0:	b5 01       	movw	r22, r10
 3e2:	a8 01       	movw	r20, r16
 3e4:	97 01       	movw	r18, r14
 3e6:	0e 94 dd 02 	call	0x5ba <__udivmodsi4>
    temp_buf[3] = (temp-temp_buf[0]*10000000-temp_buf[1]*1000000-temp_buf[2]*100000)/10000;
 3ea:	22 2e       	mov	r2, r18
 3ec:	82 2f       	mov	r24, r18
 3ee:	99 27       	eor	r25, r25
 3f0:	aa 27       	eor	r26, r26
 3f2:	bb 27       	eor	r27, r27
 3f4:	bc 01       	movw	r22, r24
 3f6:	cd 01       	movw	r24, r26
 3f8:	a8 01       	movw	r20, r16
 3fa:	97 01       	movw	r18, r14
 3fc:	0e 94 be 02 	call	0x57c <__mulsi3>
 400:	dc 01       	movw	r26, r24
 402:	cb 01       	movw	r24, r22
 404:	a8 1a       	sub	r10, r24
 406:	b9 0a       	sbc	r11, r25
 408:	ca 0a       	sbc	r12, r26
 40a:	db 0a       	sbc	r13, r27
 40c:	80 e1       	ldi	r24, 0x10	; 16
 40e:	e8 2e       	mov	r14, r24
 410:	87 e2       	ldi	r24, 0x27	; 39
 412:	f8 2e       	mov	r15, r24
 414:	01 2d       	mov	r16, r1
 416:	11 2d       	mov	r17, r1
 418:	c6 01       	movw	r24, r12
 41a:	b5 01       	movw	r22, r10
 41c:	a8 01       	movw	r20, r16
 41e:	97 01       	movw	r18, r14
 420:	0e 94 dd 02 	call	0x5ba <__udivmodsi4>
 424:	2d 87       	std	Y+13, r18	; 0x0d
 426:	3e 87       	std	Y+14, r19	; 0x0e
 428:	4f 87       	std	Y+15, r20	; 0x0f
 42a:	58 8b       	std	Y+16, r21	; 0x10
    temp = temp/10000;
 42c:	c4 01       	movw	r24, r8
 42e:	b3 01       	movw	r22, r6
 430:	a8 01       	movw	r20, r16
 432:	97 01       	movw	r18, r14
 434:	0e 94 dd 02 	call	0x5ba <__udivmodsi4>
    temp = show_data - temp*10000;
 438:	ca 01       	movw	r24, r20
 43a:	b9 01       	movw	r22, r18
 43c:	a8 01       	movw	r20, r16
 43e:	97 01       	movw	r18, r14
 440:	0e 94 be 02 	call	0x57c <__mulsi3>
 444:	dc 01       	movw	r26, r24
 446:	cb 01       	movw	r24, r22
 448:	64 01       	movw	r12, r8
 44a:	53 01       	movw	r10, r6
 44c:	a8 1a       	sub	r10, r24
 44e:	b9 0a       	sbc	r11, r25
 450:	ca 0a       	sbc	r12, r26
 452:	db 0a       	sbc	r13, r27
    temp_buf[4] = temp/1000;      //取出temp的低四位
 454:	c6 01       	movw	r24, r12
 456:	b5 01       	movw	r22, r10
 458:	28 ee       	ldi	r18, 0xE8	; 232
 45a:	33 e0       	ldi	r19, 0x03	; 3
 45c:	40 e0       	ldi	r20, 0x00	; 0
 45e:	50 e0       	ldi	r21, 0x00	; 0
 460:	0e 94 dd 02 	call	0x5ba <__udivmodsi4>
	temp_buf[5] = (temp-temp_buf[4]*1000)/100;
 464:	62 2e       	mov	r6, r18
 466:	77 24       	eor	r7, r7
 468:	88 ee       	ldi	r24, 0xE8	; 232
 46a:	93 e0       	ldi	r25, 0x03	; 3
 46c:	68 9e       	mul	r6, r24
 46e:	20 01       	movw	r4, r0
 470:	69 9e       	mul	r6, r25
 472:	50 0c       	add	r5, r0
 474:	78 9e       	mul	r7, r24
 476:	50 0c       	add	r5, r0
 478:	11 24       	eor	r1, r1
 47a:	c2 01       	movw	r24, r4
 47c:	aa 27       	eor	r26, r26
 47e:	97 fd       	sbrc	r25, 7
 480:	a0 95       	com	r26
 482:	ba 2f       	mov	r27, r26
 484:	86 01       	movw	r16, r12
 486:	75 01       	movw	r14, r10
 488:	e8 1a       	sub	r14, r24
 48a:	f9 0a       	sbc	r15, r25
 48c:	0a 0b       	sbc	r16, r26
 48e:	1b 0b       	sbc	r17, r27
 490:	c8 01       	movw	r24, r16
 492:	b7 01       	movw	r22, r14
 494:	24 e6       	ldi	r18, 0x64	; 100
 496:	30 e0       	ldi	r19, 0x00	; 0
 498:	40 e0       	ldi	r20, 0x00	; 0
 49a:	50 e0       	ldi	r21, 0x00	; 0
 49c:	0e 94 dd 02 	call	0x5ba <__udivmodsi4>
	temp_buf[6] = (temp-temp_buf[4]*1000-temp_buf[5]*100)/10;
 4a0:	32 2e       	mov	r3, r18
 4a2:	84 e6       	ldi	r24, 0x64	; 100
 4a4:	28 9f       	mul	r18, r24
 4a6:	40 01       	movw	r8, r0
 4a8:	11 24       	eor	r1, r1
 4aa:	c4 01       	movw	r24, r8
 4ac:	aa 27       	eor	r26, r26
 4ae:	97 fd       	sbrc	r25, 7
 4b0:	a0 95       	com	r26
 4b2:	ba 2f       	mov	r27, r26
 4b4:	e8 1a       	sub	r14, r24
 4b6:	f9 0a       	sbc	r15, r25
 4b8:	0a 0b       	sbc	r16, r26
 4ba:	1b 0b       	sbc	r17, r27
 4bc:	c8 01       	movw	r24, r16
 4be:	b7 01       	movw	r22, r14
 4c0:	2a e0       	ldi	r18, 0x0A	; 10
 4c2:	30 e0       	ldi	r19, 0x00	; 0
 4c4:	40 e0       	ldi	r20, 0x00	; 0
 4c6:	50 e0       	ldi	r21, 0x00	; 0
 4c8:	0e 94 dd 02 	call	0x5ba <__udivmodsi4>
 4cc:	da 01       	movw	r26, r20
 4ce:	c9 01       	movw	r24, r18
	temp_buf[7] = (temp-temp_buf[4]*1000-temp_buf[5]*100-temp_buf[6]*10);
 4d0:	2a 2d       	mov	r18, r10
 4d2:	24 19       	sub	r18, r4
 4d4:	28 19       	sub	r18, r8
 4d6:	38 2f       	mov	r19, r24
 4d8:	8a e0       	ldi	r24, 0x0A	; 10
 4da:	38 9f       	mul	r19, r24
 4dc:	c0 01       	movw	r24, r0
 4de:	11 24       	eor	r1, r1
 4e0:	28 1b       	sub	r18, r24
    Q = temp_buf[4];
    B = temp_buf[5];
    S = temp_buf[6];
    G = temp_buf[7];
    temp_buf[4] = ledseg[temp_buf[0]];
 4e2:	a0 e6       	ldi	r26, 0x60	; 96
 4e4:	b0 e0       	ldi	r27, 0x00	; 0
 4e6:	fd 01       	movw	r30, r26
 4e8:	8b 85       	ldd	r24, Y+11	; 0x0b
 4ea:	e8 0f       	add	r30, r24
 4ec:	f1 1d       	adc	r31, r1
 4ee:	80 81       	ld	r24, Z
 4f0:	8d 83       	std	Y+5, r24	; 0x05
    temp_buf[5] = ledseg[temp_buf[1]];
 4f2:	fd 01       	movw	r30, r26
 4f4:	8c 85       	ldd	r24, Y+12	; 0x0c
 4f6:	e8 0f       	add	r30, r24
 4f8:	f1 1d       	adc	r31, r1
 4fa:	80 81       	ld	r24, Z
 4fc:	8e 83       	std	Y+6, r24	; 0x06
    temp_buf[6] = ledseg[temp_buf[2]];
 4fe:	fd 01       	movw	r30, r26
 500:	e2 0d       	add	r30, r2
 502:	f1 1d       	adc	r31, r1
 504:	80 81       	ld	r24, Z
 506:	8f 83       	std	Y+7, r24	; 0x07
    temp_buf[7] = ledseg[temp_buf[3]];
 508:	8d 85       	ldd	r24, Y+13	; 0x0d
 50a:	fd 01       	movw	r30, r26
 50c:	e8 0f       	add	r30, r24
 50e:	f1 1d       	adc	r31, r1
 510:	80 81       	ld	r24, Z
 512:	88 87       	std	Y+8, r24	; 0x08
    temp_buf[0] = ledseg[Q];
 514:	6a 0e       	add	r6, r26
 516:	7b 1e       	adc	r7, r27
 518:	f3 01       	movw	r30, r6
 51a:	80 81       	ld	r24, Z
 51c:	89 83       	std	Y+1, r24	; 0x01
    temp_buf[1] = ledseg[B];
 51e:	fd 01       	movw	r30, r26
 520:	e3 0d       	add	r30, r3
 522:	f1 1d       	adc	r31, r1
 524:	80 81       	ld	r24, Z
 526:	8a 83       	std	Y+2, r24	; 0x02
    temp_buf[2] = ledseg[S];
 528:	fd 01       	movw	r30, r26
 52a:	e3 0f       	add	r30, r19
 52c:	f1 1d       	adc	r31, r1
 52e:	80 81       	ld	r24, Z
 530:	8b 83       	std	Y+3, r24	; 0x03
    temp_buf[3] = ledseg[G];
 532:	a2 0f       	add	r26, r18
 534:	b1 1d       	adc	r27, r1
 536:	8c 91       	ld	r24, X
 538:	8c 83       	std	Y+4, r24	; 0x04
    //LED1_OFF();
	Isendstr(zlg7290,0x10, temp_buf,8);      
 53a:	28 e0       	ldi	r18, 0x08	; 8
 53c:	ae 01       	movw	r20, r28
 53e:	4f 5f       	subi	r20, 0xFF	; 255
 540:	5f 4f       	sbci	r21, 0xFF	; 255
 542:	60 e1       	ldi	r22, 0x10	; 16
 544:	80 e7       	ldi	r24, 0x70	; 112
 546:	0e 94 67 01 	call	0x2ce <Isendstr>
 54a:	60 96       	adiw	r28, 0x10	; 16
 54c:	0f b6       	in	r0, 0x3f	; 63
 54e:	f8 94       	cli
 550:	de bf       	out	0x3e, r29	; 62
 552:	0f be       	out	0x3f, r0	; 63
 554:	cd bf       	out	0x3d, r28	; 61
 556:	df 91       	pop	r29
 558:	cf 91       	pop	r28
 55a:	1f 91       	pop	r17
 55c:	0f 91       	pop	r16
 55e:	ff 90       	pop	r15
 560:	ef 90       	pop	r14
 562:	df 90       	pop	r13
 564:	cf 90       	pop	r12
 566:	bf 90       	pop	r11
 568:	af 90       	pop	r10
 56a:	9f 90       	pop	r9
 56c:	8f 90       	pop	r8
 56e:	7f 90       	pop	r7
 570:	6f 90       	pop	r6
 572:	5f 90       	pop	r5
 574:	4f 90       	pop	r4
 576:	3f 90       	pop	r3
 578:	2f 90       	pop	r2
 57a:	08 95       	ret

0000057c <__mulsi3>:
 57c:	62 9f       	mul	r22, r18
 57e:	d0 01       	movw	r26, r0
 580:	73 9f       	mul	r23, r19
 582:	f0 01       	movw	r30, r0
 584:	82 9f       	mul	r24, r18
 586:	e0 0d       	add	r30, r0
 588:	f1 1d       	adc	r31, r1
 58a:	64 9f       	mul	r22, r20
 58c:	e0 0d       	add	r30, r0
 58e:	f1 1d       	adc	r31, r1
 590:	92 9f       	mul	r25, r18
 592:	f0 0d       	add	r31, r0
 594:	83 9f       	mul	r24, r19
 596:	f0 0d       	add	r31, r0
 598:	74 9f       	mul	r23, r20
 59a:	f0 0d       	add	r31, r0
 59c:	65 9f       	mul	r22, r21
 59e:	f0 0d       	add	r31, r0
 5a0:	99 27       	eor	r25, r25
 5a2:	72 9f       	mul	r23, r18
 5a4:	b0 0d       	add	r27, r0
 5a6:	e1 1d       	adc	r30, r1
 5a8:	f9 1f       	adc	r31, r25
 5aa:	63 9f       	mul	r22, r19
 5ac:	b0 0d       	add	r27, r0
 5ae:	e1 1d       	adc	r30, r1
 5b0:	f9 1f       	adc	r31, r25
 5b2:	bd 01       	movw	r22, r26
 5b4:	cf 01       	movw	r24, r30
 5b6:	11 24       	eor	r1, r1
 5b8:	08 95       	ret

000005ba <__udivmodsi4>:
 5ba:	a1 e2       	ldi	r26, 0x21	; 33
 5bc:	1a 2e       	mov	r1, r26
 5be:	aa 1b       	sub	r26, r26
 5c0:	bb 1b       	sub	r27, r27
 5c2:	fd 01       	movw	r30, r26
 5c4:	0d c0       	rjmp	.+26     	; 0x5e0 <__udivmodsi4_ep>

000005c6 <__udivmodsi4_loop>:
 5c6:	aa 1f       	adc	r26, r26
 5c8:	bb 1f       	adc	r27, r27
 5ca:	ee 1f       	adc	r30, r30
 5cc:	ff 1f       	adc	r31, r31
 5ce:	a2 17       	cp	r26, r18
 5d0:	b3 07       	cpc	r27, r19
 5d2:	e4 07       	cpc	r30, r20
 5d4:	f5 07       	cpc	r31, r21
 5d6:	20 f0       	brcs	.+8      	; 0x5e0 <__udivmodsi4_ep>
 5d8:	a2 1b       	sub	r26, r18
 5da:	b3 0b       	sbc	r27, r19
 5dc:	e4 0b       	sbc	r30, r20
 5de:	f5 0b       	sbc	r31, r21

000005e0 <__udivmodsi4_ep>:
 5e0:	66 1f       	adc	r22, r22
 5e2:	77 1f       	adc	r23, r23
 5e4:	88 1f       	adc	r24, r24
 5e6:	99 1f       	adc	r25, r25
 5e8:	1a 94       	dec	r1
 5ea:	69 f7       	brne	.-38     	; 0x5c6 <__udivmodsi4_loop>
 5ec:	60 95       	com	r22
 5ee:	70 95       	com	r23
 5f0:	80 95       	com	r24
 5f2:	90 95       	com	r25
 5f4:	9b 01       	movw	r18, r22
 5f6:	ac 01       	movw	r20, r24
 5f8:	bd 01       	movw	r22, r26
 5fa:	cf 01       	movw	r24, r30
 5fc:	08 95       	ret

⌨️ 快捷键说明

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