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

📄 myusart.lss

📁 atmega128单片机的串口通讯程序
💻 LSS
📖 第 1 页 / 共 5 页
字号:
		while(__ticks)
		{
			// wait 1/10 ms
			_delay_loop_2(((F_CPU) / 4e3) / 10);
			__ticks --;
     6c6:	de 01       	movw	r26, r28
     6c8:	af 56       	subi	r26, 0x6F	; 111
     6ca:	bf 4f       	sbci	r27, 0xFF	; 255
     6cc:	fe 01       	movw	r30, r28
     6ce:	ef 56       	subi	r30, 0x6F	; 111
     6d0:	ff 4f       	sbci	r31, 0xFF	; 255
     6d2:	80 81       	ld	r24, Z
     6d4:	91 81       	ldd	r25, Z+1	; 0x01
     6d6:	01 97       	sbiw	r24, 0x01	; 1
     6d8:	11 96       	adiw	r26, 0x01	; 1
     6da:	9c 93       	st	X, r25
     6dc:	8e 93       	st	-X, r24
		__ticks = 1;
	else if (__tmp > 65535)
	{
		//	__ticks = requested delay in 1/10 ms
		__ticks = (uint16_t) (__ms * 10.0);
		while(__ticks)
     6de:	fe 01       	movw	r30, r28
     6e0:	ef 56       	subi	r30, 0x6F	; 111
     6e2:	ff 4f       	sbci	r31, 0xFF	; 255
     6e4:	80 81       	ld	r24, Z
     6e6:	91 81       	ldd	r25, Z+1	; 0x01
     6e8:	00 97       	sbiw	r24, 0x00	; 0
     6ea:	d1 f6       	brne	.-76     	; 0x6a0 <info_display+0x53e>
     6ec:	27 c0       	rjmp	.+78     	; 0x73c <info_display+0x5da>
			__ticks --;
		}
		return;
	}
	else
		__ticks = (uint16_t)__tmp;
     6ee:	8e 01       	movw	r16, r28
     6f0:	0f 56       	subi	r16, 0x6F	; 111
     6f2:	1f 4f       	sbci	r17, 0xFF	; 255
     6f4:	fe 01       	movw	r30, r28
     6f6:	ed 56       	subi	r30, 0x6D	; 109
     6f8:	ff 4f       	sbci	r31, 0xFF	; 255
     6fa:	60 81       	ld	r22, Z
     6fc:	71 81       	ldd	r23, Z+1	; 0x01
     6fe:	82 81       	ldd	r24, Z+2	; 0x02
     700:	93 81       	ldd	r25, Z+3	; 0x03
     702:	0e 94 a4 0d 	call	0x1b48	; 0x1b48 <__fixunssfsi>
     706:	dc 01       	movw	r26, r24
     708:	cb 01       	movw	r24, r22
     70a:	f8 01       	movw	r30, r16
     70c:	91 83       	std	Z+1, r25	; 0x01
     70e:	80 83       	st	Z, r24
     710:	de 01       	movw	r26, r28
     712:	a3 57       	subi	r26, 0x73	; 115
     714:	bf 4f       	sbci	r27, 0xFF	; 255
     716:	fe 01       	movw	r30, r28
     718:	ef 56       	subi	r30, 0x6F	; 111
     71a:	ff 4f       	sbci	r31, 0xFF	; 255
     71c:	80 81       	ld	r24, Z
     71e:	91 81       	ldd	r25, Z+1	; 0x01
     720:	8d 93       	st	X+, r24
     722:	9c 93       	st	X, r25
     724:	fe 01       	movw	r30, r28
     726:	e3 57       	subi	r30, 0x73	; 115
     728:	ff 4f       	sbci	r31, 0xFF	; 255
     72a:	80 81       	ld	r24, Z
     72c:	91 81       	ldd	r25, Z+1	; 0x01
     72e:	01 97       	sbiw	r24, 0x01	; 1
     730:	f1 f7       	brne	.-4      	; 0x72e <info_display+0x5cc>
     732:	fe 01       	movw	r30, r28
     734:	e3 57       	subi	r30, 0x73	; 115
     736:	ff 4f       	sbci	r31, 0xFF	; 255
     738:	91 83       	std	Z+1, r25	; 0x01
     73a:	80 83       	st	Z, r24
	data_write(data_04,62);	_delay_ms(256);
     73c:	84 ea       	ldi	r24, 0xA4	; 164
     73e:	91 e0       	ldi	r25, 0x01	; 1
     740:	6e e3       	ldi	r22, 0x3E	; 62
     742:	0e 94 8d 00 	call	0x11a	; 0x11a <data_write>
     746:	fe 01       	movw	r30, r28
     748:	e7 57       	subi	r30, 0x77	; 119
     74a:	ff 4f       	sbci	r31, 0xFF	; 255
     74c:	80 e0       	ldi	r24, 0x00	; 0
     74e:	90 e0       	ldi	r25, 0x00	; 0
     750:	a0 e8       	ldi	r26, 0x80	; 128
     752:	b3 e4       	ldi	r27, 0x43	; 67
     754:	80 83       	st	Z, r24
     756:	91 83       	std	Z+1, r25	; 0x01
     758:	a2 83       	std	Z+2, r26	; 0x02
     75a:	b3 83       	std	Z+3, r27	; 0x03
 */
void
_delay_ms(double __ms)
{
	uint16_t __ticks;
	double __tmp = ((F_CPU) / 4e3) * __ms;
     75c:	8e 01       	movw	r16, r28
     75e:	0b 57       	subi	r16, 0x7B	; 123
     760:	1f 4f       	sbci	r17, 0xFF	; 255
     762:	fe 01       	movw	r30, r28
     764:	e7 57       	subi	r30, 0x77	; 119
     766:	ff 4f       	sbci	r31, 0xFF	; 255
     768:	20 e0       	ldi	r18, 0x00	; 0
     76a:	30 e0       	ldi	r19, 0x00	; 0
     76c:	4a e7       	ldi	r20, 0x7A	; 122
     76e:	55 e4       	ldi	r21, 0x45	; 69
     770:	60 81       	ld	r22, Z
     772:	71 81       	ldd	r23, Z+1	; 0x01
     774:	82 81       	ldd	r24, Z+2	; 0x02
     776:	93 81       	ldd	r25, Z+3	; 0x03
     778:	0e 94 7a 0f 	call	0x1ef4	; 0x1ef4 <__mulsf3>
     77c:	dc 01       	movw	r26, r24
     77e:	cb 01       	movw	r24, r22
     780:	f8 01       	movw	r30, r16
     782:	80 83       	st	Z, r24
     784:	91 83       	std	Z+1, r25	; 0x01
     786:	a2 83       	std	Z+2, r26	; 0x02
     788:	b3 83       	std	Z+3, r27	; 0x03
	if (__tmp < 1.0)
     78a:	fe 01       	movw	r30, r28
     78c:	eb 57       	subi	r30, 0x7B	; 123
     78e:	ff 4f       	sbci	r31, 0xFF	; 255
     790:	20 e0       	ldi	r18, 0x00	; 0
     792:	30 e0       	ldi	r19, 0x00	; 0
     794:	40 e8       	ldi	r20, 0x80	; 128
     796:	5f e3       	ldi	r21, 0x3F	; 63
     798:	60 81       	ld	r22, Z
     79a:	71 81       	ldd	r23, Z+1	; 0x01
     79c:	82 81       	ldd	r24, Z+2	; 0x02
     79e:	93 81       	ldd	r25, Z+3	; 0x03
     7a0:	0e 94 d4 10 	call	0x21a8	; 0x21a8 <__ltsf2>
     7a4:	88 23       	and	r24, r24
     7a6:	44 f4       	brge	.+16     	; 0x7b8 <info_display+0x656>
		__ticks = 1;
     7a8:	fe 01       	movw	r30, r28
     7aa:	ed 57       	subi	r30, 0x7D	; 125
     7ac:	ff 4f       	sbci	r31, 0xFF	; 255
     7ae:	81 e0       	ldi	r24, 0x01	; 1
     7b0:	90 e0       	ldi	r25, 0x00	; 0
     7b2:	91 83       	std	Z+1, r25	; 0x01
     7b4:	80 83       	st	Z, r24
     7b6:	64 c0       	rjmp	.+200    	; 0x880 <info_display+0x71e>
	else if (__tmp > 65535)
     7b8:	fe 01       	movw	r30, r28
     7ba:	eb 57       	subi	r30, 0x7B	; 123
     7bc:	ff 4f       	sbci	r31, 0xFF	; 255
     7be:	20 e0       	ldi	r18, 0x00	; 0
     7c0:	3f ef       	ldi	r19, 0xFF	; 255
     7c2:	4f e7       	ldi	r20, 0x7F	; 127
     7c4:	57 e4       	ldi	r21, 0x47	; 71
     7c6:	60 81       	ld	r22, Z
     7c8:	71 81       	ldd	r23, Z+1	; 0x01
     7ca:	82 81       	ldd	r24, Z+2	; 0x02
     7cc:	93 81       	ldd	r25, Z+3	; 0x03
     7ce:	0e 94 74 10 	call	0x20e8	; 0x20e8 <__gtsf2>
     7d2:	18 16       	cp	r1, r24
     7d4:	0c f0       	brlt	.+2      	; 0x7d8 <info_display+0x676>
     7d6:	43 c0       	rjmp	.+134    	; 0x85e <info_display+0x6fc>
	{
		//	__ticks = requested delay in 1/10 ms
		__ticks = (uint16_t) (__ms * 10.0);
     7d8:	fe 01       	movw	r30, r28
     7da:	e7 57       	subi	r30, 0x77	; 119
     7dc:	ff 4f       	sbci	r31, 0xFF	; 255
     7de:	20 e0       	ldi	r18, 0x00	; 0
     7e0:	30 e0       	ldi	r19, 0x00	; 0
     7e2:	40 e2       	ldi	r20, 0x20	; 32
     7e4:	51 e4       	ldi	r21, 0x41	; 65
     7e6:	60 81       	ld	r22, Z
     7e8:	71 81       	ldd	r23, Z+1	; 0x01
     7ea:	82 81       	ldd	r24, Z+2	; 0x02
     7ec:	93 81       	ldd	r25, Z+3	; 0x03
     7ee:	0e 94 7a 0f 	call	0x1ef4	; 0x1ef4 <__mulsf3>
     7f2:	dc 01       	movw	r26, r24
     7f4:	cb 01       	movw	r24, r22
     7f6:	8e 01       	movw	r16, r28
     7f8:	0d 57       	subi	r16, 0x7D	; 125
     7fa:	1f 4f       	sbci	r17, 0xFF	; 255
     7fc:	bc 01       	movw	r22, r24
     7fe:	cd 01       	movw	r24, r26
     800:	0e 94 a4 0d 	call	0x1b48	; 0x1b48 <__fixunssfsi>
     804:	dc 01       	movw	r26, r24
     806:	cb 01       	movw	r24, r22
     808:	f8 01       	movw	r30, r16
     80a:	91 83       	std	Z+1, r25	; 0x01
     80c:	80 83       	st	Z, r24
     80e:	1f c0       	rjmp	.+62     	; 0x84e <info_display+0x6ec>
     810:	fe 01       	movw	r30, r28
     812:	ef 57       	subi	r30, 0x7F	; 127
     814:	ff 4f       	sbci	r31, 0xFF	; 255
     816:	80 e9       	ldi	r24, 0x90	; 144
     818:	91 e0       	ldi	r25, 0x01	; 1
     81a:	91 83       	std	Z+1, r25	; 0x01
     81c:	80 83       	st	Z, r24
     81e:	fe 01       	movw	r30, r28
     820:	ef 57       	subi	r30, 0x7F	; 127
     822:	ff 4f       	sbci	r31, 0xFF	; 255
     824:	80 81       	ld	r24, Z
     826:	91 81       	ldd	r25, Z+1	; 0x01
     828:	01 97       	sbiw	r24, 0x01	; 1
     82a:	f1 f7       	brne	.-4      	; 0x828 <info_display+0x6c6>
     82c:	fe 01       	movw	r30, r28
     82e:	ef 57       	subi	r30, 0x7F	; 127
     830:	ff 4f       	sbci	r31, 0xFF	; 255
     832:	91 83       	std	Z+1, r25	; 0x01
     834:	80 83       	st	Z, r24
		while(__ticks)
		{
			// wait 1/10 ms
			_delay_loop_2(((F_CPU) / 4e3) / 10);
			__ticks --;
     836:	de 01       	movw	r26, r28
     838:	ad 57       	subi	r26, 0x7D	; 125
     83a:	bf 4f       	sbci	r27, 0xFF	; 255
     83c:	fe 01       	movw	r30, r28
     83e:	ed 57       	subi	r30, 0x7D	; 125
     840:	ff 4f       	sbci	r31, 0xFF	; 255
     842:	80 81       	ld	r24, Z
     844:	91 81       	ldd	r25, Z+1	; 0x01
     846:	01 97       	sbiw	r24, 0x01	; 1
     848:	11 96       	adiw	r26, 0x01	; 1
     84a:	9c 93       	st	X, r25
     84c:	8e 93       	st	-X, r24
		__ticks = 1;
	else if (__tmp > 65535)
	{
		//	__ticks = requested delay in 1/10 ms
		__ticks = (uint16_t) (__ms * 10.0);
		while(__ticks)
     84e:	fe 01       	movw	r30, r28
     850:	ed 57       	subi	r30, 0x7D	; 125
     852:	ff 4f       	sbci	r31, 0xFF	; 255
     854:	80 81       	ld	r24, Z
     856:	91 81       	ldd	r25, Z+1	; 0x01
     858:	00 97       	sbiw	r24, 0x00	; 0
     85a:	d1 f6       	brne	.-76     	; 0x810 <info_display+0x6ae>
     85c:	27 c0       	rjmp	.+78     	; 0x8ac <info_display+0x74a>
			__ticks --;
		}
		return;
	}
	else
		__ticks = (uint16_t)__tmp;
     85e:	8e 01       	movw	r16, r28
     860:	0d 57       	subi	r16, 0x7D	; 125
     862:	1f 4f       	sbci	r17, 0xFF	; 255
     864:	fe 01       	movw	r30, r28
     866:	eb 57       	subi	r30, 0x7B	; 123
     868:	ff 4f       	sbci	r31, 0xFF	; 255
     86a:	60 81       	ld	r22, Z
     86c:	71 81       	ldd	r23, Z+1	; 0x01
     86e:	82 81       	ldd	r24, Z+2	; 0x02
     870:	93 81       	ldd	r25, Z+3	; 0x03
     872:	0e 94 a4 0d 	call	0x1b48	; 0x1b48 <__fixunssfsi>
     876:	dc 01       	movw	r26, r24
     878:	cb 01       	movw	r24, r22
     87a:	f8 01       	movw	r30, r16
     87c:	91 83       	std	Z+1, r25	; 0x01
     87e:	80 83       	st	Z, r24
     880:	de 01       	movw	r26, r28
     882:	a1 58       	subi	r26, 0x81	; 129
     884:	bf 4f       	sbci	r27, 0xFF	; 255
     886:	fe 01       	movw	r30, r28
     888:	ed 57       	subi	r30, 0x7D	; 125
     88a:	ff 4f       	sbci	r31, 0xFF	; 255
     88c:	80 81       	ld	r24, Z
     88e:	91 81       	ldd	r25, Z+1	; 0x01
     890:	8d 93       	st	X+, r24
     892:	9c 93       	st	X, r25
     894:	fe 01       	movw	r30, r28
     896:	e1 58       	subi	r30, 0x81	; 129
     898:	ff 4f       	sbci	r31, 0xFF	; 255
     89a:	80 81       	ld	r24, Z
     89c:	91 81       	ldd	r25, Z+1	; 0x01
     89e:	01 97       	sbiw	r24, 0x01	; 1
     8a0:	f1 f7       	brne	.-4      	; 0x89e <info_display+0x73c>
     8a2:	fe 01       	movw	r30, r28
     8a4:	e1 58       	subi	r30, 0x81	; 129
     8a6:	ff 4f       	sbci	r31, 0xFF	; 255
     8a8:	91 83       	std	Z+1, r25	; 0x01
     8aa:	80 83       	st	Z, r24
	data_write(data_05,26);	_delay_ms(256);
     8ac:	8f ed       	ldi	r24, 0xDF	; 223
     8ae:	91 e0       	ldi	r25, 0x01	; 1
     8b0:	6a e1       	ldi	r22, 0x1A	; 26
     8b2:	0e 94 8d 00 	call	0x11a	; 0x11a <data_write>
     8b6:	fe 01       	movw	r30, r28
     8b8:	e5 58       	subi	r30, 0x85	; 133
     8ba:	ff 4f       	sbci	r31, 0xFF	; 255
     8bc:	80 e0       	ldi	r24, 0x00	; 0
     8be:	90 e0       	ldi	r25, 0x00	; 0
     8c0:	a0 e8       	ldi	r26, 0x80	; 128
     8c2:	b3 e4       	ldi	r27, 0x43	; 67
     8c4:	80 83       	st	Z, r24
     8c6:	91 83       	std	Z+1, r25	; 0x01
     8c8:	a2 83       	std	Z+2, r26	; 0x02
     8ca:	b3 83       	std	Z+3, r27	; 0x03
 */
void
_delay_ms(double __ms)
{
	uint16_t __ticks;
	double __tmp = ((F_CPU) / 4e3) * __ms;
     8cc:	8e 01       	movw	r16, r28
     8ce:	09 58       	subi	r16, 0x89	; 137
     8d0:	1f 4f       	sbci	r17, 0xFF	; 255
     8d2:	fe 01       	movw	r30, r28
     8d4:	e5 58       	subi	r30, 0x85	; 133
     8d6:	ff 4f       	sbci	r31, 0xFF	; 255
     8d8:	20 e0       	ldi	r18, 0x00	; 0
     8da:	30 e0       	ldi	r19, 0x00	; 0
     8dc:	4a e7       	ldi	r20, 0x7A	; 122
     8de:	55 e4       	ldi	r21, 0x45	; 69
     8e0:	60 81       	ld	r22, Z
     8e2:	71 81       	ldd	r23, Z+1	; 0x01
     8e4:	82 81       	ldd	r24, Z+2	; 0x02
     8e6:	93 81       	ldd	r25, Z+3	; 0x03
     8e8:	0e 94 7a 0f 	call	0x1ef4	; 0x1ef4 <__mulsf3>
     8ec:	dc 01       	movw	r26, r24
     8ee:	cb 01       	movw	r24, r22
     8f0:	f8 01       	movw	r30, r16
     8f2:	80 83       	st	Z, r24
     8f4:	91 83       	std	Z+1, r25	; 0x01
     8f6:	a2 83       	std	Z+2, r26	; 0x02
     8f8:	b3 83       	std	Z+3, r27	; 0x03
	if (__tmp < 1.0)
     8fa:	fe 01       	movw	r30, r28
     8fc:	e9 58       	subi	r30, 0x89	; 137
     8fe:	ff 4f       	sbci	r31, 0xFF	; 255
     900:	20 e0       	ldi	r18, 0x00	; 0

⌨️ 快捷键说明

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