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

📄 main.lss

📁 avr关于1302和18b20的程序
💻 LSS
📖 第 1 页 / 共 5 页
字号:
     3ae:	2f 5f       	subi	r18, 0xFF	; 255
     3b0:	20 93 7a 00 	sts	0x007A, r18
		flash_var^=flash_control;
     3b4:	80 91 76 00 	lds	r24, 0x0076
     3b8:	90 91 77 00 	lds	r25, 0x0077
     3bc:	89 27       	eor	r24, r25
     3be:	80 93 76 00 	sts	0x0076, r24
		if(2==half_second)
     3c2:	22 30       	cpi	r18, 0x02	; 2
     3c4:	09 f0       	breq	.+2      	; 0x3c8
     3c6:	48 c0       	rjmp	.+144    	; 0x458
		{
			half_second=0;
     3c8:	10 92 7a 00 	sts	0x007A, r1
			second++;			
     3cc:	80 91 7b 00 	lds	r24, 0x007B
     3d0:	8f 5f       	subi	r24, 0xFF	; 255
     3d2:	80 93 7b 00 	sts	0x007B, r24
			second_flag=1;
     3d6:	81 e0       	ldi	r24, 0x01	; 1
     3d8:	80 93 82 00 	sts	0x0082, r24
			if(flag&(1<<buzzer_flag)) flash_buzzer();
     3dc:	30 91 78 00 	lds	r19, 0x0078
     3e0:	31 ff       	sbrs	r19, 1
     3e2:	05 c0       	rjmp	.+10     	; 0x3ee
     3e4:	85 b3       	in	r24, 0x15	; 21
     3e6:	90 e1       	ldi	r25, 0x10	; 16
     3e8:	89 27       	eor	r24, r25
     3ea:	85 bb       	out	0x15, r24	; 21
     3ec:	01 c0       	rjmp	.+2      	; 0x3f0
			else set_buzzer();
     3ee:	ac 9a       	sbi	0x15, 4	; 21
			if((second&0x0f)>=0x0a)
     3f0:	20 91 7b 00 	lds	r18, 0x007B
     3f4:	82 2f       	mov	r24, r18
     3f6:	99 27       	eor	r25, r25
     3f8:	8f 70       	andi	r24, 0x0F	; 15
     3fa:	90 70       	andi	r25, 0x00	; 0
     3fc:	0a 97       	sbiw	r24, 0x0a	; 10
     3fe:	64 f1       	brlt	.+88     	; 0x458
			{
				second&=0xf0;
     400:	82 2f       	mov	r24, r18
     402:	80 7f       	andi	r24, 0xF0	; 240
				second+=0x10;
     404:	80 5f       	subi	r24, 0xF0	; 240
     406:	80 93 7b 00 	sts	0x007B, r24
				if((second&0xf0)>=0x60)
     40a:	99 27       	eor	r25, r25
     40c:	80 36       	cpi	r24, 0x60	; 96
     40e:	91 05       	cpc	r25, r1
     410:	1c f1       	brlt	.+70     	; 0x458
				{
					second=0;
     412:	10 92 7b 00 	sts	0x007B, r1
					minute++;					
     416:	20 91 7c 00 	lds	r18, 0x007C
     41a:	2f 5f       	subi	r18, 0xFF	; 255
     41c:	20 93 7c 00 	sts	0x007C, r18
					flag&=~(1<<buzzer_flag);
     420:	3d 7f       	andi	r19, 0xFD	; 253
     422:	30 93 78 00 	sts	0x0078, r19
					if((minute&0x0f)>=0x0a)
     426:	82 2f       	mov	r24, r18
     428:	99 27       	eor	r25, r25
     42a:	8f 70       	andi	r24, 0x0F	; 15
     42c:	90 70       	andi	r25, 0x00	; 0
     42e:	0a 97       	sbiw	r24, 0x0a	; 10
     430:	9c f0       	brlt	.+38     	; 0x458
					{
						minute&=0xf0;
     432:	82 2f       	mov	r24, r18
     434:	80 7f       	andi	r24, 0xF0	; 240
						minute+=0x10;
     436:	80 5f       	subi	r24, 0xF0	; 240
     438:	80 93 7c 00 	sts	0x007C, r24
						if((minute&0xf0)>=0x60)
     43c:	99 27       	eor	r25, r25
     43e:	80 36       	cpi	r24, 0x60	; 96
     440:	91 05       	cpc	r25, r1
     442:	54 f0       	brlt	.+20     	; 0x458
						{
							minute=0;
     444:	10 92 7c 00 	sts	0x007C, r1
							hour++;
     448:	80 91 7d 00 	lds	r24, 0x007D
     44c:	8f 5f       	subi	r24, 0xFF	; 255
     44e:	80 93 7d 00 	sts	0x007D, r24
							flag|=1<<hour_flag;
     452:	31 60       	ori	r19, 0x01	; 1
     454:	30 93 78 00 	sts	0x0078, r19
     458:	9f 91       	pop	r25
     45a:	8f 91       	pop	r24
     45c:	3f 91       	pop	r19
     45e:	2f 91       	pop	r18
     460:	0f 90       	pop	r0
     462:	0f be       	out	0x3f, r0	; 63
     464:	0f 90       	pop	r0
     466:	1f 90       	pop	r1
     468:	18 95       	reti

0000046a <display_time>:
						}
					}
				}
			}
		}
}
void display_time(void)
{
	uchar temp=0;
	
	temp=(hour&0xf0)>>4;
     46a:	20 91 7d 00 	lds	r18, 0x007D
     46e:	82 2f       	mov	r24, r18
     470:	99 27       	eor	r25, r25
     472:	54 e0       	ldi	r21, 0x04	; 4
     474:	96 95       	lsr	r25
     476:	87 95       	ror	r24
     478:	5a 95       	dec	r21
     47a:	e1 f7       	brne	.-8      	; 0x474
	display_buffer[0]=pgm_read_byte(display_code+temp);
     47c:	e8 2f       	mov	r30, r24
     47e:	ff 27       	eor	r31, r31
     480:	ea 5d       	subi	r30, 0xDA	; 218
     482:	ff 4f       	sbci	r31, 0xFF	; 255
     484:	84 91       	lpm	r24, Z
     486:	80 93 60 00 	sts	0x0060, r24
	temp=hour&0x0f;
     48a:	2f 70       	andi	r18, 0x0F	; 15
	display_buffer[1]=pgm_read_byte(display_code+temp);
     48c:	e2 2f       	mov	r30, r18
     48e:	ff 27       	eor	r31, r31
     490:	ea 5d       	subi	r30, 0xDA	; 218
     492:	ff 4f       	sbci	r31, 0xFF	; 255
     494:	84 91       	lpm	r24, Z
     496:	80 93 61 00 	sts	0x0061, r24
	
	display_buffer[2]=0x40;//-
     49a:	30 e4       	ldi	r19, 0x40	; 64
     49c:	30 93 62 00 	sts	0x0062, r19
	
	temp=(minute&0xf0)>>4;
     4a0:	20 91 7c 00 	lds	r18, 0x007C
     4a4:	82 2f       	mov	r24, r18
     4a6:	99 27       	eor	r25, r25
     4a8:	44 e0       	ldi	r20, 0x04	; 4
     4aa:	96 95       	lsr	r25
     4ac:	87 95       	ror	r24
     4ae:	4a 95       	dec	r20
     4b0:	e1 f7       	brne	.-8      	; 0x4aa
	display_buffer[3]=pgm_read_byte(display_code+temp);
     4b2:	e8 2f       	mov	r30, r24
     4b4:	ff 27       	eor	r31, r31
     4b6:	ea 5d       	subi	r30, 0xDA	; 218
     4b8:	ff 4f       	sbci	r31, 0xFF	; 255
     4ba:	84 91       	lpm	r24, Z
     4bc:	80 93 63 00 	sts	0x0063, r24
	temp=minute&0x0f;
     4c0:	2f 70       	andi	r18, 0x0F	; 15
	display_buffer[4]=pgm_read_byte(display_code+temp);
     4c2:	e2 2f       	mov	r30, r18
     4c4:	ff 27       	eor	r31, r31
     4c6:	ea 5d       	subi	r30, 0xDA	; 218
     4c8:	ff 4f       	sbci	r31, 0xFF	; 255
     4ca:	84 91       	lpm	r24, Z
     4cc:	80 93 64 00 	sts	0x0064, r24
	
	display_buffer[5]=0x40;//-
     4d0:	30 93 65 00 	sts	0x0065, r19
	
	temp=(second&0xf0)>>4;
     4d4:	20 91 7b 00 	lds	r18, 0x007B
     4d8:	82 2f       	mov	r24, r18
     4da:	99 27       	eor	r25, r25
     4dc:	34 e0       	ldi	r19, 0x04	; 4
     4de:	96 95       	lsr	r25
     4e0:	87 95       	ror	r24
     4e2:	3a 95       	dec	r19
     4e4:	e1 f7       	brne	.-8      	; 0x4de
	display_buffer[6]=pgm_read_byte(display_code+temp);
     4e6:	e8 2f       	mov	r30, r24
     4e8:	ff 27       	eor	r31, r31
     4ea:	ea 5d       	subi	r30, 0xDA	; 218
     4ec:	ff 4f       	sbci	r31, 0xFF	; 255
     4ee:	84 91       	lpm	r24, Z
     4f0:	80 93 66 00 	sts	0x0066, r24
	temp=second&0x0f;
     4f4:	2f 70       	andi	r18, 0x0F	; 15
	display_buffer[7]=pgm_read_byte(display_code+temp);
     4f6:	e2 2f       	mov	r30, r18
     4f8:	ff 27       	eor	r31, r31
     4fa:	ea 5d       	subi	r30, 0xDA	; 218
     4fc:	ff 4f       	sbci	r31, 0xFF	; 255
     4fe:	84 91       	lpm	r24, Z
     500:	80 93 67 00 	sts	0x0067, r24
     504:	08 95       	ret

00000506 <display_date>:
}
void display_date(void)
{
	uchar temp=0;	
	//月
	temp=(month&0xf0)>>4;
     506:	20 91 80 00 	lds	r18, 0x0080
     50a:	82 2f       	mov	r24, r18
     50c:	99 27       	eor	r25, r25
     50e:	74 e0       	ldi	r23, 0x04	; 4
     510:	96 95       	lsr	r25
     512:	87 95       	ror	r24
     514:	7a 95       	dec	r23
     516:	e1 f7       	brne	.-8      	; 0x510
	display_buffer[0]=pgm_read_byte(display_code+temp);
     518:	e8 2f       	mov	r30, r24
     51a:	ff 27       	eor	r31, r31
     51c:	ea 5d       	subi	r30, 0xDA	; 218
     51e:	ff 4f       	sbci	r31, 0xFF	; 255
     520:	84 91       	lpm	r24, Z
     522:	80 93 60 00 	sts	0x0060, r24
	temp=month&0x0f;
     526:	2f 70       	andi	r18, 0x0F	; 15
	display_buffer[1]=pgm_read_byte(display_code+temp);
     528:	e2 2f       	mov	r30, r18
     52a:	ff 27       	eor	r31, r31
     52c:	ea 5d       	subi	r30, 0xDA	; 218
     52e:	ff 4f       	sbci	r31, 0xFF	; 255
     530:	84 91       	lpm	r24, Z
     532:	80 93 61 00 	sts	0x0061, r24
	
	display_buffer[2]=0x08;//-
     536:	88 e0       	ldi	r24, 0x08	; 8
     538:	80 93 62 00 	sts	0x0062, r24
	//日
	temp=(day&0xf0)>>4;
     53c:	20 91 7f 00 	lds	r18, 0x007F
     540:	82 2f       	mov	r24, r18
     542:	99 27       	eor	r25, r25
     544:	64 e0       	ldi	r22, 0x04	; 4
     546:	96 95       	lsr	r25
     548:	87 95       	ror	r24
     54a:	6a 95       	dec	r22
     54c:	e1 f7       	brne	.-8      	; 0x546
	display_buffer[3]=pgm_read_byte(display_code+temp);
     54e:	e8 2f       	mov	r30, r24
     550:	ff 27       	eor	r31, r31
     552:	ea 5d       	subi	r30, 0xDA	; 218
     554:	ff 4f       	sbci	r31, 0xFF	; 255
     556:	84 91       	lpm	r24, Z
     558:	80 93 63 00 	sts	0x0063, r24
	temp=day&0x0f;
     55c:	2f 70       	andi	r18, 0x0F	; 15
	display_buffer[4]=pgm_read_byte(display_code+temp);
     55e:	e2 2f       	mov	r30, r18
     560:	ff 27       	eor	r31, r31
     562:	ea 5d       	subi	r30, 0xDA	; 218
     564:	ff 4f       	sbci	r31, 0xFF	; 255
     566:	84 91       	lpm	r24, Z
     568:	80 93 64 00 	sts	0x0064, r24
	
	display_buffer[5]=0x00;//.
     56c:	10 92 65 00 	sts	0x0065, r1
	display_buffer[6]=0x00;//.
     570:	10 92 66 00 	sts	0x0066, r1
	//周
	temp=week&0x0f;
     574:	80 91 7e 00 	lds	r24, 0x007E
     578:	8f 70       	andi	r24, 0x0F	; 15
	display_buffer[7]=pgm_read_byte(display_code+temp);
     57a:	e8 2f       	mov	r30, r24
     57c:	ff 27       	eor	r31, r31
     57e:	ea 5d       	subi	r30, 0xDA	; 218
     580:	ff 4f       	sbci	r31, 0xFF	; 255
     582:	84 91       	lpm	r24, Z
     584:	80 93 67 00 	sts	0x0067, r24
     588:	08 95       	ret

0000058a <display_year>:
}
void display_year(void)
{
	uchar temp=0;	
     58a:	80 e0       	ldi	r24, 0x00	; 0
	display_buffer[0]=0;//空
     58c:	80 93 60 00 	sts	0x0060, r24
	display_buffer[1]=0;//空
     590:	80 93 61 00 	sts	0x0061, r24
	display_buffer[2]=0;//空
     594:	80 93 62 00 	sts	0x0062, r24
	display_buffer[3]=0;//空
     598:	80 93 63 00 	sts	0x0063, r24
	display_buffer[4]=0x5b;//2
     59c:	8b e5       	ldi	r24, 0x5B	; 91
     59e:	80 93 64 00 	sts	0x0064, r24
	display_buffer[5]=0x3f;//0
     5a2:	8f e3       	ldi	r24, 0x3F	; 63
     5a4:	80 93 65 00 	sts	0x0065, r24
	//年
	temp=(year&0xf0)>>4;
     5a8:	20 91 81 00 	lds	r18, 0x0081
     5ac:	82 2f       	mov	r24, r18
     5ae:	99 27       	eor	r25, r25
     5b0:	e4 e0       	ldi	r30, 0x04	; 4
     5b2:	96 95       	lsr	r25
     5b4:	87 95       	ror	r24
     5b6:	ea 95       	dec	r30
     5b8:	e1 f7       	brne	.-8      	; 0x5b2
	display_buffer[6]=pgm_read_byte(display_code+temp);
     5ba:	e8 2f       	mov	r30, r24
     5bc:	ff 27       	eor	r31, r31
     5be:	ea 5d       	subi	r30, 0xDA	; 218
     5c0:	ff 4f       	sbci	r31, 0xFF	; 255
     5c2:	84 91       	lpm	r24, Z
     5c4:	80 93 66 00 	sts	0x0066, r24
	temp=year&0x0f;
     5c8:	2f 70       	andi	r18, 0x0F	; 15
	display_buffer[7]=pgm_read_byte(display_code+temp);
     5ca:	e2 2f       	mov	r30, r18
     5cc:	ff 27       	eor	r31, r31
     5ce:	ea 5d       	subi	r30, 0xDA	; 218
     5d0:	ff 4f       	sbci	r31, 0xFF	; 255
     5d2:	84 91       	lpm	r24, Z
     5d4:	80 93 67 00 	sts	0x0067, r24
     5d8:	08 95       	ret

000005da <display_timer>:
}
void display_timer(uchar number,uchar timer_hour,uchar timer_minute)
{
     5da:	26 2f       	mov	r18, r22
     5dc:	34 2f       	mov	r19, r20
	uchar temp=0;
     5de:	90 e0       	ldi	r25, 0x00	; 0
	display_buffer[0]=pgm_read_byte(display_code+number);
     5e0:	e8 2f       	mov	r30, r24
     5e2:	ff 27       	eor	r31, r31
     5e4:	ea 5d       	subi	r30, 0xDA	; 218
     5e6:	ff 4f       	sbci	r31, 0xFF	; 255
     5e8:	84 91       	lpm	r24, Z
     5ea:	80 93 60 00 	sts	0x0060, r24
	display_buffer[1]=0x00;//空
     5ee:	90 93 61 00 	sts	0x0061, r25
	display_buffer[2]=0x00;//空
     5f2:	90 93 62 00 	sts	0x0062, r25
	//hour
	temp=(timer_hour&0xf0)>>4;
     5f6:	86 2f       	mov	r24, r22
     5f8:	99 27       	eor	r25, r25
     5fa:	a4 e0       	ldi	r26, 0x04	; 4
     5fc:	96 95       	lsr	r25
     5fe:	87 95       	ror	r24
     600:	aa 95       	dec	r26
     602:	e1 f7       	brne	.-8      	; 0x5fc
	display_buffer[3]=pgm_read_byte(display_code+temp);
     604:	e8 2f       	mov	r30, r24
     606:	ff 27       	eor	r31, r31
     608:	ea 5d       	subi	r30, 0xDA	; 218
     60a:	ff 4f       	sbci	r31, 0xFF	; 255
     60c:	84 91       	lpm	r24, Z
     60e:	80 93 63 00 	sts	0x0063, r24
	temp=timer_hour&0x0f;
     612:	2f 70       	andi	r18, 0x0F	; 15
	display_buffer[4]=pgm_read_byte(display_code+temp);
     614:	e2 2f       	mov	r30, r18
     616:	ff 27       	eor	r31, r31
     618:	ea 5d       	subi	r30, 0xDA	; 218
     61a:	ff 4f       	sbci	r31, 0xFF	; 255
     61c:	84 91       	lpm	r24, Z
     61e:	80 93 64 00 	sts	0x0064, r24
	

⌨️ 快捷键说明

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