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

📄 lcd.lss

📁 Using LCD4bit for ATMEGA8535
💻 LSS
📖 第 1 页 / 共 3 页
字号:
 3b8:	63 e0       	ldi	r22, 0x03	; 3
 3ba:	8a e6       	ldi	r24, 0x6A	; 106
 3bc:	90 e0       	ldi	r25, 0x00	; 0
 3be:	f8 de       	rcall	.-528    	; 0x1b0 <CopyStringtoLCD>
 3c0:	20 e0       	ldi	r18, 0x00	; 0
 3c2:	40 e2       	ldi	r20, 0x20	; 32
 3c4:	5e e4       	ldi	r21, 0x4E	; 78
 3c6:	ca 01       	movw	r24, r20
 3c8:	01 97       	sbiw	r24, 0x01	; 1
 3ca:	f1 f7       	brne	.-4      	; 0x3c8 <progress+0x14>

//delay 1s
void delay1s(void)
{
	uint8_t i;
	for(i=0;i<100;i++)
 3cc:	2f 5f       	subi	r18, 0xFF	; 255
 3ce:	24 36       	cpi	r18, 0x64	; 100
 3d0:	d1 f7       	brne	.-12     	; 0x3c6 <progress+0x12>
		{
			_delay_ms(10);
			LCDGotoXY(0, 1);
			LCDprogressBar(i, 255, 16);
		}*/
}
 3d2:	08 95       	ret

000003d4 <demoanimation>:

//demonstration of animation
void demoanimation(void)
{
 3d4:	1f 93       	push	r17
 3d6:	cf 93       	push	r28
 3d8:	df 93       	push	r29
	LCDclr();
 3da:	c2 de       	rcall	.-636    	; 0x160 <LCDclr>
	LCDdefinechar(backslash,0);
 3dc:	60 e0       	ldi	r22, 0x00	; 0
 3de:	84 ea       	ldi	r24, 0xA4	; 164
 3e0:	90 e0       	ldi	r25, 0x00	; 0
 3e2:	fb de       	rcall	.-522    	; 0x1da <LCDdefinechar>
	CopyStringtoLCD(LCDanimation, 0, 0);
 3e4:	40 e0       	ldi	r20, 0x00	; 0
 3e6:	60 e0       	ldi	r22, 0x00	; 0
 3e8:	81 e8       	ldi	r24, 0x81	; 129
 3ea:	90 e0       	ldi	r25, 0x00	; 0
 3ec:	e1 de       	rcall	.-574    	; 0x1b0 <CopyStringtoLCD>
 3ee:	10 e0       	ldi	r17, 0x00	; 0
 3f0:	c0 e2       	ldi	r28, 0x20	; 32
 3f2:	de e4       	ldi	r29, 0x4E	; 78
	for(uint8_t i=0;i<3;i++)
		{
			LCDGotoXY(8, 1);
 3f4:	61 e0       	ldi	r22, 0x01	; 1
 3f6:	88 e0       	ldi	r24, 0x08	; 8
 3f8:	cd de       	rcall	.-614    	; 0x194 <LCDGotoXY>
			LCDsendChar(0);
 3fa:	80 e0       	ldi	r24, 0x00	; 0
 3fc:	73 de       	rcall	.-794    	; 0xe4 <LCDsendChar>
 3fe:	20 e0       	ldi	r18, 0x00	; 0
 400:	ce 01       	movw	r24, r28
 402:	01 97       	sbiw	r24, 0x01	; 1
 404:	f1 f7       	brne	.-4      	; 0x402 <demoanimation+0x2e>

//delay 1s
void delay1s(void)
{
	uint8_t i;
	for(i=0;i<100;i++)
 406:	2f 5f       	subi	r18, 0xFF	; 255
 408:	24 36       	cpi	r18, 0x64	; 100
 40a:	d1 f7       	brne	.-12     	; 0x400 <demoanimation+0x2c>
	for(uint8_t i=0;i<3;i++)
		{
			LCDGotoXY(8, 1);
			LCDsendChar(0);
			delay1s();
			LCDGotoXY(8, 1);
 40c:	61 e0       	ldi	r22, 0x01	; 1
 40e:	88 e0       	ldi	r24, 0x08	; 8
 410:	c1 de       	rcall	.-638    	; 0x194 <LCDGotoXY>
			LCDsendChar('-');
 412:	8d e2       	ldi	r24, 0x2D	; 45
 414:	67 de       	rcall	.-818    	; 0xe4 <LCDsendChar>
 416:	20 e0       	ldi	r18, 0x00	; 0
 418:	ce 01       	movw	r24, r28
 41a:	01 97       	sbiw	r24, 0x01	; 1
 41c:	f1 f7       	brne	.-4      	; 0x41a <demoanimation+0x46>

//delay 1s
void delay1s(void)
{
	uint8_t i;
	for(i=0;i<100;i++)
 41e:	2f 5f       	subi	r18, 0xFF	; 255
 420:	24 36       	cpi	r18, 0x64	; 100
 422:	d1 f7       	brne	.-12     	; 0x418 <demoanimation+0x44>
			LCDsendChar(0);
			delay1s();
			LCDGotoXY(8, 1);
			LCDsendChar('-');
			delay1s();
			LCDGotoXY(8, 1);
 424:	61 e0       	ldi	r22, 0x01	; 1
 426:	88 e0       	ldi	r24, 0x08	; 8
 428:	b5 de       	rcall	.-662    	; 0x194 <LCDGotoXY>
			LCDsendChar('/');
 42a:	8f e2       	ldi	r24, 0x2F	; 47
 42c:	5b de       	rcall	.-842    	; 0xe4 <LCDsendChar>
 42e:	20 e0       	ldi	r18, 0x00	; 0
 430:	ce 01       	movw	r24, r28
 432:	01 97       	sbiw	r24, 0x01	; 1
 434:	f1 f7       	brne	.-4      	; 0x432 <demoanimation+0x5e>

//delay 1s
void delay1s(void)
{
	uint8_t i;
	for(i=0;i<100;i++)
 436:	2f 5f       	subi	r18, 0xFF	; 255
 438:	24 36       	cpi	r18, 0x64	; 100
 43a:	d1 f7       	brne	.-12     	; 0x430 <demoanimation+0x5c>
			LCDsendChar('-');
			delay1s();
			LCDGotoXY(8, 1);
			LCDsendChar('/');
			delay1s();
			LCDGotoXY(8, 1);
 43c:	61 e0       	ldi	r22, 0x01	; 1
 43e:	88 e0       	ldi	r24, 0x08	; 8
 440:	a9 de       	rcall	.-686    	; 0x194 <LCDGotoXY>
			LCDsendChar('|');
 442:	8c e7       	ldi	r24, 0x7C	; 124
 444:	4f de       	rcall	.-866    	; 0xe4 <LCDsendChar>
 446:	20 e0       	ldi	r18, 0x00	; 0
 448:	ce 01       	movw	r24, r28
 44a:	01 97       	sbiw	r24, 0x01	; 1
 44c:	f1 f7       	brne	.-4      	; 0x44a <demoanimation+0x76>

//delay 1s
void delay1s(void)
{
	uint8_t i;
	for(i=0;i<100;i++)
 44e:	2f 5f       	subi	r18, 0xFF	; 255
 450:	24 36       	cpi	r18, 0x64	; 100
 452:	d1 f7       	brne	.-12     	; 0x448 <demoanimation+0x74>
			LCDsendChar('/');
			delay1s();
			LCDGotoXY(8, 1);
			LCDsendChar('|');
			delay1s();
			LCDGotoXY(8, 1);
 454:	61 e0       	ldi	r22, 0x01	; 1
 456:	88 e0       	ldi	r24, 0x08	; 8
 458:	9d de       	rcall	.-710    	; 0x194 <LCDGotoXY>
			LCDsendChar(8);//backslash
 45a:	88 e0       	ldi	r24, 0x08	; 8
 45c:	43 de       	rcall	.-890    	; 0xe4 <LCDsendChar>
 45e:	20 e0       	ldi	r18, 0x00	; 0
 460:	ce 01       	movw	r24, r28
 462:	01 97       	sbiw	r24, 0x01	; 1
 464:	f1 f7       	brne	.-4      	; 0x462 <demoanimation+0x8e>

//delay 1s
void delay1s(void)
{
	uint8_t i;
	for(i=0;i<100;i++)
 466:	2f 5f       	subi	r18, 0xFF	; 255
 468:	24 36       	cpi	r18, 0x64	; 100
 46a:	d1 f7       	brne	.-12     	; 0x460 <demoanimation+0x8c>
			LCDsendChar('|');
			delay1s();
			LCDGotoXY(8, 1);
			LCDsendChar(8);//backslash
			delay1s();
			LCDGotoXY(8, 1);
 46c:	61 e0       	ldi	r22, 0x01	; 1
 46e:	88 e0       	ldi	r24, 0x08	; 8
 470:	91 de       	rcall	.-734    	; 0x194 <LCDGotoXY>
			LCDsendChar('-');
 472:	8d e2       	ldi	r24, 0x2D	; 45
 474:	37 de       	rcall	.-914    	; 0xe4 <LCDsendChar>
 476:	20 e0       	ldi	r18, 0x00	; 0
 478:	ce 01       	movw	r24, r28
 47a:	01 97       	sbiw	r24, 0x01	; 1
 47c:	f1 f7       	brne	.-4      	; 0x47a <demoanimation+0xa6>

//delay 1s
void delay1s(void)
{
	uint8_t i;
	for(i=0;i<100;i++)
 47e:	2f 5f       	subi	r18, 0xFF	; 255
 480:	24 36       	cpi	r18, 0x64	; 100
 482:	d1 f7       	brne	.-12     	; 0x478 <demoanimation+0xa4>
			LCDsendChar(8);//backslash
			delay1s();
			LCDGotoXY(8, 1);
			LCDsendChar('-');
			delay1s();
			LCDGotoXY(8, 1);
 484:	61 e0       	ldi	r22, 0x01	; 1
 486:	88 e0       	ldi	r24, 0x08	; 8
 488:	85 de       	rcall	.-758    	; 0x194 <LCDGotoXY>
			LCDsendChar('/');
 48a:	8f e2       	ldi	r24, 0x2F	; 47
 48c:	2b de       	rcall	.-938    	; 0xe4 <LCDsendChar>
 48e:	20 e0       	ldi	r18, 0x00	; 0
 490:	ce 01       	movw	r24, r28
 492:	01 97       	sbiw	r24, 0x01	; 1
 494:	f1 f7       	brne	.-4      	; 0x492 <demoanimation+0xbe>

//delay 1s
void delay1s(void)
{
	uint8_t i;
	for(i=0;i<100;i++)
 496:	2f 5f       	subi	r18, 0xFF	; 255
 498:	24 36       	cpi	r18, 0x64	; 100
 49a:	d1 f7       	brne	.-12     	; 0x490 <demoanimation+0xbc>
			LCDsendChar('-');
			delay1s();
			LCDGotoXY(8, 1);
			LCDsendChar('/');
			delay1s();
			LCDGotoXY(8, 1);
 49c:	61 e0       	ldi	r22, 0x01	; 1
 49e:	88 e0       	ldi	r24, 0x08	; 8
 4a0:	79 de       	rcall	.-782    	; 0x194 <LCDGotoXY>
			LCDsendChar('|');
 4a2:	8c e7       	ldi	r24, 0x7C	; 124
 4a4:	1f de       	rcall	.-962    	; 0xe4 <LCDsendChar>
 4a6:	20 e0       	ldi	r18, 0x00	; 0
 4a8:	ce 01       	movw	r24, r28
 4aa:	01 97       	sbiw	r24, 0x01	; 1
 4ac:	f1 f7       	brne	.-4      	; 0x4aa <demoanimation+0xd6>

//delay 1s
void delay1s(void)
{
	uint8_t i;
	for(i=0;i<100;i++)
 4ae:	2f 5f       	subi	r18, 0xFF	; 255
 4b0:	24 36       	cpi	r18, 0x64	; 100
 4b2:	d1 f7       	brne	.-12     	; 0x4a8 <demoanimation+0xd4>
void demoanimation(void)
{
	LCDclr();
	LCDdefinechar(backslash,0);
	CopyStringtoLCD(LCDanimation, 0, 0);
	for(uint8_t i=0;i<3;i++)
 4b4:	1f 5f       	subi	r17, 0xFF	; 255
 4b6:	13 30       	cpi	r17, 0x03	; 3
 4b8:	09 f0       	breq	.+2      	; 0x4bc <demoanimation+0xe8>
 4ba:	9c cf       	rjmp	.-200    	; 0x3f4 <demoanimation+0x20>
			delay1s();
			LCDGotoXY(8, 1);
			LCDsendChar('|');
			delay1s();
		}	
}
 4bc:	df 91       	pop	r29
 4be:	cf 91       	pop	r28
 4c0:	1f 91       	pop	r17
 4c2:	08 95       	ret

000004c4 <character>:

void character (void)
{
 4c4:	4d de       	rcall	.-870    	; 0x160 <LCDclr>
	LCDclr();
	LCDdefinechar(backslash,0);
 4c6:	60 e0       	ldi	r22, 0x00	; 0
 4c8:	84 ea       	ldi	r24, 0xA4	; 164
 4ca:	90 e0       	ldi	r25, 0x00	; 0
 4cc:	86 de       	rcall	.-756    	; 0x1da <LCDdefinechar>
	CopyStringtoLCD(LCDwelcomeln1, 4, 0);
 4ce:	40 e0       	ldi	r20, 0x00	; 0
 4d0:	64 e0       	ldi	r22, 0x04	; 4
 4d2:	8a e6       	ldi	r24, 0x6A	; 106
 4d4:	90 e0       	ldi	r25, 0x00	; 0
 4d6:	6c de       	rcall	.-808    	; 0x1b0 <CopyStringtoLCD>
 4d8:	20 e0       	ldi	r18, 0x00	; 0
 4da:	40 e2       	ldi	r20, 0x20	; 32
 4dc:	5e e4       	ldi	r21, 0x4E	; 78
 4de:	ca 01       	movw	r24, r20
 4e0:	01 97       	sbiw	r24, 0x01	; 1
 4e2:	f1 f7       	brne	.-4      	; 0x4e0 <character+0x1c>

//delay 1s
void delay1s(void)
{
	uint8_t i;
	for(i=0;i<100;i++)
 4e4:	2f 5f       	subi	r18, 0xFF	; 255
 4e6:	24 36       	cpi	r18, 0x64	; 100
 4e8:	d1 f7       	brne	.-12     	; 0x4de <character+0x1a>
{
	LCDclr();
	LCDdefinechar(backslash,0);
	CopyStringtoLCD(LCDwelcomeln1, 4, 0);
	delay1s();
	CopyStringtoLCD(LCDname, 0, 1);
 4ea:	41 e0       	ldi	r20, 0x01	; 1
 4ec:	60 e0       	ldi	r22, 0x00	; 0
 4ee:	82 e9       	ldi	r24, 0x92	; 146
 4f0:	90 e0       	ldi	r25, 0x00	; 0
 4f2:	5e de       	rcall	.-836    	; 0x1b0 <CopyStringtoLCD>
 4f4:	20 e0       	ldi	r18, 0x00	; 0
 4f6:	40 e2       	ldi	r20, 0x20	; 32
 4f8:	5e e4       	ldi	r21, 0x4E	; 78
 4fa:	ca 01       	movw	r24, r20
 4fc:	01 97       	sbiw	r24, 0x01	; 1
 4fe:	f1 f7       	brne	.-4      	; 0x4fc <character+0x38>

//delay 1s
void delay1s(void)
{
	uint8_t i;
	for(i=0;i<100;i++)
 500:	2f 5f       	subi	r18, 0xFF	; 255
 502:	24 36       	cpi	r18, 0x64	; 100
 504:	d1 f7       	brne	.-12     	; 0x4fa <character+0x36>
	CopyStringtoLCD(LCDwelcomeln1, 4, 0);
	delay1s();
	CopyStringtoLCD(LCDname, 0, 1);
	delay1s();
	
}	
 506:	08 95       	ret

00000508 <main>:
	
	
int main(void)
{
 508:	cf 93       	push	r28
 50a:	df 93       	push	r29
	LCDinit();//init LCD bit, dual line, cursor right
 50c:	88 de       	rcall	.-752    	; 0x21e <LCDinit>
	LCDclr();//clears LCD
 50e:	28 de       	rcall	.-944    	; 0x160 <LCDclr>
 510:	c0 e2       	ldi	r28, 0x20	; 32
 512:	de e4       	ldi	r29, 0x4E	; 78
	while(1)
	{
		character();
 514:	d7 df       	rcall	.-82     	; 0x4c4 <character>
 516:	20 e0       	ldi	r18, 0x00	; 0
 518:	ce 01       	movw	r24, r28
 51a:	01 97       	sbiw	r24, 0x01	; 1
 51c:	f1 f7       	brne	.-4      	; 0x51a <main+0x12>

//delay 1s
void delay1s(void)
{
	uint8_t i;
	for(i=0;i<100;i++)
 51e:	2f 5f       	subi	r18, 0xFF	; 255
 520:	24 36       	cpi	r18, 0x64	; 100
 522:	d1 f7       	brne	.-12     	; 0x518 <main+0x10>
 524:	f7 cf       	rjmp	.-18     	; 0x514 <main+0xc>

00000526 <__udivmodhi4>:
 526:	aa 1b       	sub	r26, r26
 528:	bb 1b       	sub	r27, r27
 52a:	51 e1       	ldi	r21, 0x11	; 17
 52c:	07 c0       	rjmp	.+14     	; 0x53c <__udivmodhi4_ep>

0000052e <__udivmodhi4_loop>:
 52e:	aa 1f       	adc	r26, r26
 530:	bb 1f       	adc	r27, r27
 532:	a6 17       	cp	r26, r22
 534:	b7 07       	cpc	r27, r23
 536:	10 f0       	brcs	.+4      	; 0x53c <__udivmodhi4_ep>
 538:	a6 1b       	sub	r26, r22
 53a:	b7 0b       	sbc	r27, r23

0000053c <__udivmodhi4_ep>:
 53c:	88 1f       	adc	r24, r24
 53e:	99 1f       	adc	r25, r25
 540:	5a 95       	dec	r21
 542:	a9 f7       	brne	.-22     	; 0x52e <__udivmodhi4_loop>
 544:	80 95       	com	r24
 546:	90 95       	com	r25
 548:	bc 01       	movw	r22, r24
 54a:	cd 01       	movw	r24, r26
 54c:	08 95       	ret

0000054e <__divmodhi4>:
 54e:	97 fb       	bst	r25, 7
 550:	09 2e       	mov	r0, r25
 552:	07 26       	eor	r0, r23
 554:	0a d0       	rcall	.+20     	; 0x56a <__divmodhi4_neg1>
 556:	77 fd       	sbrc	r23, 7
 558:	04 d0       	rcall	.+8      	; 0x562 <__divmodhi4_neg2>
 55a:	e5 df       	rcall	.-54     	; 0x526 <__udivmodhi4>
 55c:	06 d0       	rcall	.+12     	; 0x56a <__divmodhi4_neg1>
 55e:	00 20       	and	r0, r0
 560:	1a f4       	brpl	.+6      	; 0x568 <__divmodhi4_exit>

00000562 <__divmodhi4_neg2>:
 562:	70 95       	com	r23
 564:	61 95       	neg	r22
 566:	7f 4f       	sbci	r23, 0xFF	; 255

00000568 <__divmodhi4_exit>:
 568:	08 95       	ret

0000056a <__divmodhi4_neg1>:
 56a:	f6 f7       	brtc	.-4      	; 0x568 <__divmodhi4_exit>
 56c:	90 95       	com	r25
 56e:	81 95       	neg	r24
 570:	9f 4f       	sbci	r25, 0xFF	; 255
 572:	08 95       	ret

00000574 <_exit>:
 574:	f8 94       	cli

00000576 <__stop_program>:
 576:	ff cf       	rjmp	.-2      	; 0x576 <__stop_program>

⌨️ 快捷键说明

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