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

📄 adc.lss

📁 avr c 模拟数据采集的程序设计方法 本程序为模数转换的例程
💻 LSS
📖 第 1 页 / 共 3 页
字号:
    // UBRRL= 0x67    2400	
    UCSRB |= (1<<RXEN)|(1<<TXEN)|(1<<RXCIE);  //允许发送和接收,接收中断使能
 214:	8a b1       	in	r24, 0x0a	; 10
 216:	88 69       	ori	r24, 0x98	; 152
 218:	8a b9       	out	0x0a, r24	; 10
    UCSRC |= (1<<URSEL)|(1<<UCSZ1)|(1<<UCSZ0); //8位数据位+1位停止位
 21a:	80 b5       	in	r24, 0x20	; 32
 21c:	86 68       	ori	r24, 0x86	; 134
 21e:	80 bd       	out	0x20, r24	; 32
    UBRRH = (unsigned char)(ucBaudRate >> 8); 
 220:	83 2f       	mov	r24, r19
 222:	99 27       	eor	r25, r25
 224:	80 bd       	out	0x20, r24	; 32
    UBRRL = (unsigned char)(ucBaudRate & 0x7f);		
 226:	82 2f       	mov	r24, r18
 228:	8f 77       	andi	r24, 0x7F	; 127
 22a:	89 b9       	out	0x09, r24	; 9
	
	fdevopen(Uart_PutChar,Uart_GetChar,0);
 22c:	40 e0       	ldi	r20, 0x00	; 0
 22e:	50 e0       	ldi	r21, 0x00	; 0
 230:	6b e2       	ldi	r22, 0x2B	; 43
 232:	71 e0       	ldi	r23, 0x01	; 1
 234:	8e e1       	ldi	r24, 0x1E	; 30
 236:	91 e0       	ldi	r25, 0x01	; 1
 238:	21 d0       	rcall	.+66     	; 0x27c
 23a:	08 95       	ret

0000023c <Uart_PutChar>:
}
//输出一个字符
int Uart_PutChar(char c)
{
 23c:	cf 93       	push	r28
 23e:	c8 2f       	mov	r28, r24
	if(c=='\n')
 240:	8a 30       	cpi	r24, 0x0A	; 10
 242:	11 f4       	brne	.+4      	; 0x248
		Uart_PutChar('\r');
 244:	8d e0       	ldi	r24, 0x0D	; 13
 246:	fa df       	rcall	.-12     	; 0x23c
	loop_until_bit_is_set(UCSRA,UDRE);
 248:	5d 9b       	sbis	0x0b, 5	; 11
 24a:	fe cf       	rjmp	.-4      	; 0x248
	UDR = c;	
 24c:	cc b9       	out	0x0c, r28	; 12
	return 0;
}
 24e:	80 e0       	ldi	r24, 0x00	; 0
 250:	90 e0       	ldi	r25, 0x00	; 0
 252:	cf 91       	pop	r28
 254:	08 95       	ret

00000256 <Uart_GetChar>:
//输入一个字符
int  Uart_GetChar(void)
{
	loop_until_bit_is_set(UCSRA,RXC);
 256:	5f 9b       	sbis	0x0b, 7	; 11
 258:	fe cf       	rjmp	.-4      	; 0x256
	return UDR;
 25a:	8c b1       	in	r24, 0x0c	; 12
}
 25c:	99 27       	eor	r25, r25
 25e:	08 95       	ret

00000260 <Uart_PutStr>:
//输出一个字符串
void Uart_PutStr(unsigned char* szStr)
{
 260:	cf 93       	push	r28
 262:	df 93       	push	r29
 264:	ec 01       	movw	r28, r24
	while(*szStr != '\0')
	{
		Uart_PutChar(*szStr);
		szStr++;
 266:	88 81       	ld	r24, Y
 268:	88 23       	and	r24, r24
 26a:	29 f0       	breq	.+10     	; 0x276
 26c:	89 91       	ld	r24, Y+
 26e:	e6 df       	rcall	.-52     	; 0x23c
 270:	88 81       	ld	r24, Y
 272:	88 23       	and	r24, r24
 274:	d9 f7       	brne	.-10     	; 0x26c
 276:	df 91       	pop	r29
 278:	cf 91       	pop	r28
 27a:	08 95       	ret

0000027c <fdevopen>:
 27c:	0f 93       	push	r16
 27e:	1f 93       	push	r17
 280:	cf 93       	push	r28
 282:	df 93       	push	r29
 284:	8c 01       	movw	r16, r24
 286:	eb 01       	movw	r28, r22
 288:	00 97       	sbiw	r24, 0x00	; 0
 28a:	11 f4       	brne	.+4      	; 0x290
 28c:	67 2b       	or	r22, r23
 28e:	a9 f1       	breq	.+106    	; 0x2fa
 290:	6c e0       	ldi	r22, 0x0C	; 12
 292:	70 e0       	ldi	r23, 0x00	; 0
 294:	81 e0       	ldi	r24, 0x01	; 1
 296:	90 e0       	ldi	r25, 0x00	; 0
 298:	35 d0       	rcall	.+106    	; 0x304
 29a:	fc 01       	movw	r30, r24
 29c:	89 2b       	or	r24, r25
 29e:	61 f1       	breq	.+88     	; 0x2f8
 2a0:	20 97       	sbiw	r28, 0x00	; 0
 2a2:	71 f0       	breq	.+28     	; 0x2c0
 2a4:	c2 87       	std	Z+10, r28	; 0x0a
 2a6:	d3 87       	std	Z+11, r29	; 0x0b
 2a8:	81 e0       	ldi	r24, 0x01	; 1
 2aa:	83 83       	std	Z+3, r24	; 0x03
 2ac:	80 91 72 00 	lds	r24, 0x0072
 2b0:	90 91 73 00 	lds	r25, 0x0073
 2b4:	89 2b       	or	r24, r25
 2b6:	21 f4       	brne	.+8      	; 0x2c0
 2b8:	f0 93 73 00 	sts	0x0073, r31
 2bc:	e0 93 72 00 	sts	0x0072, r30
 2c0:	01 15       	cp	r16, r1
 2c2:	11 05       	cpc	r17, r1
 2c4:	c9 f0       	breq	.+50     	; 0x2f8
 2c6:	00 87       	std	Z+8, r16	; 0x08
 2c8:	11 87       	std	Z+9, r17	; 0x09
 2ca:	83 81       	ldd	r24, Z+3	; 0x03
 2cc:	82 60       	ori	r24, 0x02	; 2
 2ce:	83 83       	std	Z+3, r24	; 0x03
 2d0:	80 91 74 00 	lds	r24, 0x0074
 2d4:	90 91 75 00 	lds	r25, 0x0075
 2d8:	89 2b       	or	r24, r25
 2da:	71 f4       	brne	.+28     	; 0x2f8
 2dc:	f0 93 75 00 	sts	0x0075, r31
 2e0:	e0 93 74 00 	sts	0x0074, r30
 2e4:	80 91 76 00 	lds	r24, 0x0076
 2e8:	90 91 77 00 	lds	r25, 0x0077
 2ec:	89 2b       	or	r24, r25
 2ee:	21 f4       	brne	.+8      	; 0x2f8
 2f0:	f0 93 77 00 	sts	0x0077, r31
 2f4:	e0 93 76 00 	sts	0x0076, r30
 2f8:	cf 01       	movw	r24, r30
 2fa:	df 91       	pop	r29
 2fc:	cf 91       	pop	r28
 2fe:	1f 91       	pop	r17
 300:	0f 91       	pop	r16
 302:	08 95       	ret

00000304 <calloc>:
 304:	0f 93       	push	r16
 306:	1f 93       	push	r17
 308:	cf 93       	push	r28
 30a:	df 93       	push	r29
 30c:	86 9f       	mul	r24, r22
 30e:	80 01       	movw	r16, r0
 310:	87 9f       	mul	r24, r23
 312:	10 0d       	add	r17, r0
 314:	96 9f       	mul	r25, r22
 316:	10 0d       	add	r17, r0
 318:	11 24       	eor	r1, r1
 31a:	c8 01       	movw	r24, r16
 31c:	0d d0       	rcall	.+26     	; 0x338
 31e:	ec 01       	movw	r28, r24
 320:	00 97       	sbiw	r24, 0x00	; 0
 322:	21 f0       	breq	.+8      	; 0x32c
 324:	a8 01       	movw	r20, r16
 326:	60 e0       	ldi	r22, 0x00	; 0
 328:	70 e0       	ldi	r23, 0x00	; 0
 32a:	fc d0       	rcall	.+504    	; 0x524
 32c:	ce 01       	movw	r24, r28
 32e:	df 91       	pop	r29
 330:	cf 91       	pop	r28
 332:	1f 91       	pop	r17
 334:	0f 91       	pop	r16
 336:	08 95       	ret

00000338 <malloc>:
 338:	cf 93       	push	r28
 33a:	df 93       	push	r29
 33c:	ac 01       	movw	r20, r24
 33e:	02 97       	sbiw	r24, 0x02	; 2
 340:	10 f4       	brcc	.+4      	; 0x346
 342:	42 e0       	ldi	r20, 0x02	; 2
 344:	50 e0       	ldi	r21, 0x00	; 0
 346:	20 e0       	ldi	r18, 0x00	; 0
 348:	30 e0       	ldi	r19, 0x00	; 0
 34a:	a0 91 7a 00 	lds	r26, 0x007A
 34e:	b0 91 7b 00 	lds	r27, 0x007B
 352:	bd 01       	movw	r22, r26
 354:	f9 01       	movw	r30, r18
 356:	10 97       	sbiw	r26, 0x00	; 0
 358:	09 f4       	brne	.+2      	; 0x35c
 35a:	4c c0       	rjmp	.+152    	; 0x3f4
 35c:	8d 91       	ld	r24, X+
 35e:	9c 91       	ld	r25, X
 360:	11 97       	sbiw	r26, 0x01	; 1
 362:	84 17       	cp	r24, r20
 364:	95 07       	cpc	r25, r21
 366:	31 f1       	breq	.+76     	; 0x3b4
 368:	48 17       	cp	r20, r24
 36a:	59 07       	cpc	r21, r25
 36c:	38 f4       	brcc	.+14     	; 0x37c
 36e:	21 15       	cp	r18, r1
 370:	31 05       	cpc	r19, r1
 372:	19 f0       	breq	.+6      	; 0x37a
 374:	82 17       	cp	r24, r18
 376:	93 07       	cpc	r25, r19
 378:	08 f4       	brcc	.+2      	; 0x37c
 37a:	9c 01       	movw	r18, r24
 37c:	fd 01       	movw	r30, r26
 37e:	a2 81       	ldd	r26, Z+2	; 0x02
 380:	b3 81       	ldd	r27, Z+3	; 0x03
 382:	10 97       	sbiw	r26, 0x00	; 0
 384:	59 f7       	brne	.-42     	; 0x35c
 386:	21 15       	cp	r18, r1
 388:	31 05       	cpc	r19, r1
 38a:	a1 f1       	breq	.+104    	; 0x3f4
 38c:	c9 01       	movw	r24, r18
 38e:	84 1b       	sub	r24, r20
 390:	95 0b       	sbc	r25, r21
 392:	04 97       	sbiw	r24, 0x04	; 4
 394:	08 f4       	brcc	.+2      	; 0x398
 396:	a9 01       	movw	r20, r18
 398:	db 01       	movw	r26, r22
 39a:	e0 e0       	ldi	r30, 0x00	; 0
 39c:	f0 e0       	ldi	r31, 0x00	; 0
 39e:	10 97       	sbiw	r26, 0x00	; 0
 3a0:	49 f1       	breq	.+82     	; 0x3f4
 3a2:	8d 91       	ld	r24, X+
 3a4:	9c 91       	ld	r25, X
 3a6:	11 97       	sbiw	r26, 0x01	; 1
 3a8:	82 17       	cp	r24, r18
 3aa:	93 07       	cpc	r25, r19
 3ac:	f9 f4       	brne	.+62     	; 0x3ec
 3ae:	42 17       	cp	r20, r18
 3b0:	53 07       	cpc	r21, r19
 3b2:	79 f4       	brne	.+30     	; 0x3d2
 3b4:	ed 01       	movw	r28, r26
 3b6:	2a 81       	ldd	r18, Y+2	; 0x02
 3b8:	3b 81       	ldd	r19, Y+3	; 0x03
 3ba:	cd 01       	movw	r24, r26
 3bc:	02 96       	adiw	r24, 0x02	; 2
 3be:	30 97       	sbiw	r30, 0x00	; 0
 3c0:	19 f0       	breq	.+6      	; 0x3c8
 3c2:	22 83       	std	Z+2, r18	; 0x02
 3c4:	33 83       	std	Z+3, r19	; 0x03
 3c6:	4f c0       	rjmp	.+158    	; 0x466
 3c8:	30 93 7b 00 	sts	0x007B, r19
 3cc:	20 93 7a 00 	sts	0x007A, r18
 3d0:	4a c0       	rjmp	.+148    	; 0x466
 3d2:	24 1b       	sub	r18, r20
 3d4:	35 0b       	sbc	r19, r21
 3d6:	fd 01       	movw	r30, r26
 3d8:	e2 0f       	add	r30, r18
 3da:	f3 1f       	adc	r31, r19
 3dc:	41 93       	st	Z+, r20
 3de:	51 93       	st	Z+, r21
 3e0:	22 50       	subi	r18, 0x02	; 2
 3e2:	30 40       	sbci	r19, 0x00	; 0
 3e4:	2d 93       	st	X+, r18
 3e6:	3c 93       	st	X, r19
 3e8:	cf 01       	movw	r24, r30
 3ea:	3d c0       	rjmp	.+122    	; 0x466
 3ec:	fd 01       	movw	r30, r26
 3ee:	a2 81       	ldd	r26, Z+2	; 0x02
 3f0:	b3 81       	ldd	r27, Z+3	; 0x03
 3f2:	d5 cf       	rjmp	.-86     	; 0x39e
 3f4:	80 91 78 00 	lds	r24, 0x0078
 3f8:	90 91 79 00 	lds	r25, 0x0079
 3fc:	89 2b       	or	r24, r25
 3fe:	41 f4       	brne	.+16     	; 0x410
 400:	80 91 6b 00 	lds	r24, 0x006B
 404:	90 91 6c 00 	lds	r25, 0x006C
 408:	90 93 79 00 	sts	0x0079, r25
 40c:	80 93 78 00 	sts	0x0078, r24
 410:	e0 91 69 00 	lds	r30, 0x0069
 414:	f0 91 6a 00 	lds	r31, 0x006A
 418:	30 97       	sbiw	r30, 0x00	; 0
 41a:	41 f4       	brne	.+16     	; 0x42c
 41c:	ed b7       	in	r30, 0x3d	; 61
 41e:	fe b7       	in	r31, 0x3e	; 62
 420:	80 91 6d 00 	lds	r24, 0x006D
 424:	90 91 6e 00 	lds	r25, 0x006E
 428:	e8 1b       	sub	r30, r24
 42a:	f9 0b       	sbc	r31, r25
 42c:	a0 91 78 00 	lds	r26, 0x0078
 430:	b0 91 79 00 	lds	r27, 0x0079
 434:	9f 01       	movw	r18, r30
 436:	2a 1b       	sub	r18, r26
 438:	3b 0b       	sbc	r19, r27
 43a:	24 17       	cp	r18, r20
 43c:	35 07       	cpc	r19, r21
 43e:	88 f0       	brcs	.+34     	; 0x462
 440:	ca 01       	movw	r24, r20
 442:	02 96       	adiw	r24, 0x02	; 2
 444:	28 17       	cp	r18, r24
 446:	39 07       	cpc	r19, r25
 448:	60 f0       	brcs	.+24     	; 0x462
 44a:	cd 01       	movw	r24, r26
 44c:	84 0f       	add	r24, r20
 44e:	95 1f       	adc	r25, r21
 450:	02 96       	adiw	r24, 0x02	; 2
 452:	90 93 79 00 	sts	0x0079, r25
 456:	80 93 78 00 	sts	0x0078, r24
 45a:	4d 93       	st	X+, r20
 45c:	5d 93       	st	X+, r21
 45e:	cd 01       	movw	r24, r26
 460:	02 c0       	rjmp	.+4      	; 0x466
 462:	80 e0       	ldi	r24, 0x00	; 0
 464:	90 e0       	ldi	r25, 0x00	; 0
 466:	df 91       	pop	r29
 468:	cf 91       	pop	r28
 46a:	08 95       	ret

0000046c <free>:
 46c:	cf 93       	push	r28
 46e:	df 93       	push	r29
 470:	00 97       	sbiw	r24, 0x00	; 0
 472:	09 f4       	brne	.+2      	; 0x476
 474:	54 c0       	rjmp	.+168    	; 0x51e
 476:	dc 01       	movw	r26, r24
 478:	12 97       	sbiw	r26, 0x02	; 2
 47a:	ed 01       	movw	r28, r26
 47c:	1a 82       	std	Y+2, r1	; 0x02
 47e:	1b 82       	std	Y+3, r1	; 0x03
 480:	80 91 7a 00 	lds	r24, 0x007A
 484:	90 91 7b 00 	lds	r25, 0x007B
 488:	00 97       	sbiw	r24, 0x00	; 0
 48a:	21 f1       	breq	.+72     	; 0x4d4
 48c:	fc 01       	movw	r30, r24
 48e:	40 e0       	ldi	r20, 0x00	; 0
 490:	50 e0       	ldi	r21, 0x00	; 0
 492:	ea 17       	cp	r30, r26
 494:	fb 07       	cpc	r31, r27
 496:	18 f1       	brcs	.+70     	; 0x4de
 498:	ed 01       	movw	r28, r26
 49a:	ea 83       	std	Y+2, r30	; 0x02
 49c:	fb 83       	std	Y+3, r31	; 0x03
 49e:	2d 91       	ld	r18, X+
 4a0:	3c 91       	ld	r19, X
 4a2:	11 97       	sbiw	r26, 0x01	; 1
 4a4:	c2 0f       	add	r28, r18
 4a6:	d3 1f       	adc	r29, r19
 4a8:	ce 01       	movw	r24, r28
 4aa:	02 96       	adiw	r24, 0x02	; 2
 4ac:	8e 17       	cp	r24, r30
 4ae:	9f 07       	cpc	r25, r31
 4b0:	71 f4       	brne	.+28     	; 0x4ce
 4b2:	8a 81       	ldd	r24, Y+2	; 0x02
 4b4:	9b 81       	ldd	r25, Y+3	; 0x03
 4b6:	28 0f       	add	r18, r24
 4b8:	39 1f       	adc	r19, r25
 4ba:	2e 5f       	subi	r18, 0xFE	; 254
 4bc:	3f 4f       	sbci	r19, 0xFF	; 255
 4be:	2d 93       	st	X+, r18
 4c0:	3c 93       	st	X, r19
 4c2:	11 97       	sbiw	r26, 0x01	; 1
 4c4:	82 81       	ldd	r24, Z+2	; 0x02
 4c6:	93 81       	ldd	r25, Z+3	; 0x03
 4c8:	fd 01       	movw	r30, r26
 4ca:	82 83       	std	Z+2, r24	; 0x02
 4cc:	93 83       	std	Z+3, r25	; 0x03
 4ce:	41 15       	cp	r20, r1
 4d0:	51 05       	cpc	r21, r1
 4d2:	59 f4       	brne	.+22     	; 0x4ea
 4d4:	b0 93 7b 00 	sts	0x007B, r27
 4d8:	a0 93 7a 00 	sts	0x007A, r26
 4dc:	20 c0       	rjmp	.+64     	; 0x51e
 4de:	af 01       	movw	r20, r30
 4e0:	02 80       	ldd	r0, Z+2	; 0x02
 4e2:	f3 81       	ldd	r31, Z+3	; 0x03
 4e4:	e0 2d       	mov	r30, r0
 4e6:	30 97       	sbiw	r30, 0x00	; 0
 4e8:	a1 f6       	brne	.-88     	; 0x492
 4ea:	ea 01       	movw	r28, r20
 4ec:	aa 83       	std	Y+2, r26	; 0x02
 4ee:	bb 83       	std	Y+3, r27	; 0x03
 4f0:	ca 01       	movw	r24, r20
 4f2:	02 96       	adiw	r24, 0x02	; 2
 4f4:	28 81       	ld	r18, Y
 4f6:	39 81       	ldd	r19, Y+1	; 0x01
 4f8:	82 0f       	add	r24, r18
 4fa:	93 1f       	adc	r25, r19
 4fc:	8a 17       	cp	r24, r26
 4fe:	9b 07       	cpc	r25, r27
 500:	71 f4       	brne	.+28     	; 0x51e
 502:	8d 91       	ld	r24, X+
 504:	9c 91       	ld	r25, X
 506:	11 97       	sbiw	r26, 0x01	; 1
 508:	28 0f       	add	r18, r24
 50a:	39 1f       	adc	r19, r25
 50c:	2e 5f       	subi	r18, 0xFE	; 254
 50e:	3f 4f       	sbci	r19, 0xFF	; 255
 510:	28 83       	st	Y, r18
 512:	39 83       	std	Y+1, r19	; 0x01
 514:	fd 01       	movw	r30, r26
 516:	82 81       	ldd	r24, Z+2	; 0x02
 518:	93 81       	ldd	r25, Z+3	; 0x03
 51a:	8a 83       	std	Y+2, r24	; 0x02
 51c:	9b 83       	std	Y+3, r25	; 0x03
 51e:	df 91       	pop	r29
 520:	cf 91       	pop	r28
 522:	08 95       	ret

00000524 <memset>:
 524:	dc 01       	movw	r26, r24
 526:	01 c0       	rjmp	.+2      	; 0x52a

00000528 <.memset_loop>:
 528:	6d 93       	st	X+, r22

0000052a <.memset_start>:
 52a:	41 50       	subi	r20, 0x01	; 1
 52c:	50 40       	sbci	r21, 0x00	; 0
 52e:	e0 f7       	brcc	.-8      	; 0x528
 530:	08 95       	ret

00000532 <__fp_inverse>:
 532:	59 2f       	mov	r21, r25
 534:	48 2f       	mov	r20, r24
 536:	37 2f       	mov	r19, r23
 538:	26 2f       	mov	r18, r22
 53a:	9f e3       	ldi	r25, 0x3F	; 63
 53c:	80 e8       	ldi	r24, 0x80	; 128
 53e:	77 27       	eor	r23, r23
 540:	66 27       	eor	r22, r22

00000542 <__divsf3>:
 542:	ae d0       	rcall	.+348    	; 0x6a0
 544:	01 d0       	rcall	.+2      	; 0x548
 546:	91 c0       	rjmp	.+290    	; 0x66a

00000548 <__divsf3x>:
 548:	55 23       	and	r21, r21
 54a:	59 f0       	breq	.+22     	; 0x562
 54c:	99 23       	and	r25, r25
 54e:	69 f0       	breq	.+26     	; 0x56a

00000550 <___divsf3x_10>:
 550:	9f 57       	subi	r25, 0x7F	; 127
 552:	5f 57       	subi	r21, 0x7F	; 127
 554:	95 1b       	sub	r25, r21
 556:	33 f4       	brvc	.+12     	; 0x564
 558:	42 f4       	brpl	.+16     	; 0x56a
 55a:	90 38       	cpi	r25, 0x80	; 128
 55c:	11 f4       	brne	.+4      	; 0x562

⌨️ 快捷键说明

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