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

📄 lcddrive.lst

📁 一个基于MEGA16的GUI
💻 LST
📖 第 1 页 / 共 5 页
字号:
 461               	.LM52:
 462 00ec 85E4      		ldi r24,lo8(69)
 463 00ee 0E94 0000 		call LcdSendData
 194:lcddrive.c    ****  LcdSendData(82);
 465               	.LM53:
 466 00f2 82E5      		ldi r24,lo8(82)
 467 00f4 0E94 0000 		call LcdSendData
 195:lcddrive.c    ****  LcdSendData(67);
 469               	.LM54:
 470 00f8 83E4      		ldi r24,lo8(67)
 471 00fa 0E94 0000 		call LcdSendData
 196:lcddrive.c    ****  SetLcdCs();
 473               	.LM55:
 474               	/* #APP */
 475 00fe 929A      		 SBI 0x12,2
 476               		
 197:lcddrive.c    **** 
 198:lcddrive.c    ****  LcdSendCommand(0xb3);  //gray scale position set
 478               	.LM56:
 479               	/* #NOAPP */
 480 0100 83EB      		ldi r24,lo8(-77)
 481 0102 0E94 0000 		call LcdSendCommand
 199:lcddrive.c    ****  LcdSendData(1);
 483               	.LM57:
 484 0106 81E0      		ldi r24,lo8(1)
 485 0108 0E94 0000 		call LcdSendData
 200:lcddrive.c    ****  LcdSendData(2);
 487               	.LM58:
 488 010c 82E0      		ldi r24,lo8(2)
 489 010e 0E94 0000 		call LcdSendData
 201:lcddrive.c    ****  LcdSendData(4);
 491               	.LM59:
 492 0112 84E0      		ldi r24,lo8(4)
 493 0114 0E94 0000 		call LcdSendData
 202:lcddrive.c    ****  LcdSendData(8); 
 495               	.LM60:
 496 0118 88E0      		ldi r24,lo8(8)
 497 011a 0E94 0000 		call LcdSendData
 203:lcddrive.c    ****  LcdSendData(16);
 499               	.LM61:
 500 011e 80E1      		ldi r24,lo8(16)
 501 0120 0E94 0000 		call LcdSendData
 204:lcddrive.c    ****  LcdSendData(30);
 503               	.LM62:
 504 0124 8EE1      		ldi r24,lo8(30)
 505 0126 0E94 0000 		call LcdSendData
 205:lcddrive.c    ****  LcdSendData(40);
 507               	.LM63:
 508 012a 88E2      		ldi r24,lo8(40)
 509 012c 0E94 0000 		call LcdSendData
 206:lcddrive.c    ****  LcdSendData(50);
 511               	.LM64:
 512 0130 82E3      		ldi r24,lo8(50)
 513 0132 0E94 0000 		call LcdSendData
 207:lcddrive.c    ****  LcdSendData(60);
 515               	.LM65:
 516 0136 8CE3      		ldi r24,lo8(60)
 517 0138 0E94 0000 		call LcdSendData
 208:lcddrive.c    ****  LcdSendData(70);
 519               	.LM66:
 520 013c 86E4      		ldi r24,lo8(70)
 521 013e 0E94 0000 		call LcdSendData
 209:lcddrive.c    ****  LcdSendData(80);
 523               	.LM67:
 524 0142 80E5      		ldi r24,lo8(80)
 525 0144 0E94 0000 		call LcdSendData
 210:lcddrive.c    ****  LcdSendData(90);
 527               	.LM68:
 528 0148 8AE5      		ldi r24,lo8(90)
 529 014a 0E94 0000 		call LcdSendData
 211:lcddrive.c    ****  LcdSendData(100);
 531               	.LM69:
 532 014e 84E6      		ldi r24,lo8(100)
 533 0150 0E94 0000 		call LcdSendData
 212:lcddrive.c    ****  LcdSendData(110);
 535               	.LM70:
 536 0154 8EE6      		ldi r24,lo8(110)
 537 0156 0E94 0000 		call LcdSendData
 213:lcddrive.c    ****  LcdSendData(127);
 539               	.LM71:
 540 015a 8FE7      		ldi r24,lo8(127)
 541 015c 0E94 0000 		call LcdSendData
 214:lcddrive.c    ****  SetLcdCs();
 543               	.LM72:
 544               	/* #APP */
 545 0160 929A      		 SBI 0x12,2
 546               		
 215:lcddrive.c    **** 
 216:lcddrive.c    ****  LcdSendCommand(0xb5);		//gamma curve set
 548               	.LM73:
 549               	/* #NOAPP */
 550 0162 85EB      		ldi r24,lo8(-75)
 551 0164 0E94 0000 		call LcdSendCommand
 217:lcddrive.c    ****  LcdSendData(0x01);
 553               	.LM74:
 554 0168 81E0      		ldi r24,lo8(1)
 555 016a 0E94 0000 		call LcdSendData
 218:lcddrive.c    ****  SetLcdCs();
 557               	.LM75:
 558               	/* #APP */
 559 016e 929A      		 SBI 0x12,2
 560               		
 219:lcddrive.c    **** 
 220:lcddrive.c    ****  LcdSendCommand(0xbd);		//common driver output select
 562               	.LM76:
 563               	/* #NOAPP */
 564 0170 8DEB      		ldi r24,lo8(-67)
 565 0172 0E94 0000 		call LcdSendCommand
 221:lcddrive.c    ****  LcdSendData(0x00);
 567               	.LM77:
 568 0176 80E0      		ldi r24,lo8(0)
 569 0178 0E94 0000 		call LcdSendData
 222:lcddrive.c    ****  SetLcdCs();
 571               	.LM78:
 572               	/* #APP */
 573 017c 929A      		 SBI 0x12,2
 574               		
 223:lcddrive.c    **** 
 224:lcddrive.c    ****  LcdSendCommand(0xbe);		/*   有两种3510I一种需要设置为0x03;一种需要设置为0x04*/
 576               	.LM79:
 577               	/* #NOAPP */
 578 017e 8EEB      		ldi r24,lo8(-66)
 579 0180 0E94 0000 		call LcdSendCommand
 225:lcddrive.c    ****  LcdSendData(0x03);
 581               	.LM80:
 582 0184 83E0      		ldi r24,lo8(3)
 583 0186 0E94 0000 		call LcdSendData
 226:lcddrive.c    ****  SetLcdCs();
 585               	.LM81:
 586               	/* #APP */
 587 018a 929A      		 SBI 0x12,2
 588               		
 227:lcddrive.c    **** 
 228:lcddrive.c    ****  LcdSendCommand(0x11);		//sleep out
 590               	.LM82:
 591               	/* #NOAPP */
 592 018c 81E1      		ldi r24,lo8(17)
 593 018e 0E94 0000 		call LcdSendCommand
 229:lcddrive.c    ****  SetLcdCs();
 595               	.LM83:
 596               	/* #APP */
 597 0192 929A      		 SBI 0x12,2
 598               		
 230:lcddrive.c    ****  
 231:lcddrive.c    ****  LcdSendCommand(0xba);		//voltage control
 600               	.LM84:
 601               	/* #NOAPP */
 602 0194 8AEB      		ldi r24,lo8(-70)
 603 0196 0E94 0000 		call LcdSendCommand
 232:lcddrive.c    ****  LcdSendData(127);
 605               	.LM85:
 606 019a 8FE7      		ldi r24,lo8(127)
 607 019c 0E94 0000 		call LcdSendData
 233:lcddrive.c    ****  LcdSendData(3);
 609               	.LM86:
 610 01a0 83E0      		ldi r24,lo8(3)
 611 01a2 0E94 0000 		call LcdSendData
 234:lcddrive.c    ****  SetLcdCs();
 613               	.LM87:
 614               	/* #APP */
 615 01a6 929A      		 SBI 0x12,2
 616               		
 235:lcddrive.c    **** 
 236:lcddrive.c    ****  LcdSendCommand(0xb7);		//temperature gradient set
 618               	.LM88:
 619               	/* #NOAPP */
 620 01a8 87EB      		ldi r24,lo8(-73)
 621 01aa 0E94 0000 		call LcdSendCommand
 622 01ae CDE0      		ldi r28,lo8(13)
 623               	.L35:
 237:lcddrive.c    ****  for(i=0; i<14; i++)
 238:lcddrive.c    ****   {
 239:lcddrive.c    ****    LcdSendData(0x00);
 625               	.LM89:
 626 01b0 80E0      		ldi r24,lo8(0)
 627 01b2 0E94 0000 		call LcdSendData
 629               	.LM90:
 630 01b6 C150      		subi r28,lo8(-(-1))
 631 01b8 C7FF      		sbrs r28,7
 632 01ba FACF      		rjmp .L35
 240:lcddrive.c    ****   }
 241:lcddrive.c    ****  SetLcdCs();
 634               	.LM91:
 635               	/* #APP */
 636 01bc 929A      		 SBI 0x12,2
 637               		
 242:lcddrive.c    **** 
 243:lcddrive.c    ****  LcdSendCommand(0x29);		//display ON
 639               	.LM92:
 640               	/* #NOAPP */
 641 01be 89E2      		ldi r24,lo8(41)
 642 01c0 0E94 0000 		call LcdSendCommand
 244:lcddrive.c    ****  SetLcdCs();
 644               	.LM93:
 645               	/* #APP */
 646 01c4 929A      		 SBI 0x12,2
 647               		
 245:lcddrive.c    **** 
 246:lcddrive.c    ****  LcdSendCommand(0x03);		//booster voltage ON
 649               	.LM94:
 650               	/* #NOAPP */
 651 01c6 83E0      		ldi r24,lo8(3)
 652 01c8 0E94 0000 		call LcdSendCommand
 247:lcddrive.c    ****  SetLcdCs();
 654               	.LM95:
 655               	/* #APP */
 656 01cc 929A      		 SBI 0x12,2
 657               		
 248:lcddrive.c    ****  DelayXms(5);
 659               	.LM96:
 660               	/* #NOAPP */
 661 01ce 85E0      		ldi r24,lo8(5)
 662 01d0 90E0      		ldi r25,hi8(5)
 663 01d2 0E94 0000 		call DelayXms
 249:lcddrive.c    **** 
 250:lcddrive.c    ****  LcdSendCommand(0x20);		//display inversion OFF
 665               	.LM97:
 666 01d6 80E2      		ldi r24,lo8(32)
 667 01d8 0E94 0000 		call LcdSendCommand
 251:lcddrive.c    ****  SetLcdCs();
 669               	.LM98:
 670               	/* #APP */
 671 01dc 929A      		 SBI 0x12,2
 672               		
 252:lcddrive.c    **** 	
 253:lcddrive.c    ****  LcdSendCommand(0x25);		//write contrast
 674               	.LM99:
 675               	/* #NOAPP */
 676 01de 85E2      		ldi r24,lo8(37)
 677 01e0 0E94 0000 		call LcdSendCommand
 254:lcddrive.c    ****  LcdSendData(62);
 679               	.LM100:
 680 01e4 8EE3      		ldi r24,lo8(62)
 681 01e6 0E94 0000 		call LcdSendData
 255:lcddrive.c    ****  SetLcdCs();
 683               	.LM101:
 684               	/* #APP */
 685 01ea 929A      		 SBI 0x12,2
 686               		
 256:lcddrive.c    **** 
 257:lcddrive.c    ****  LcdSendCommand(0x3a);		/* 初始化设置颜色为4096色*/
 688               	.LM102:
 689               	/* #NOAPP */
 690 01ec 8AE3      		ldi r24,lo8(58)
 691 01ee 0E94 0000 		call LcdSendCommand
 258:lcddrive.c    ****  LcdSendData(3);
 693               	.LM103:
 694 01f2 83E0      		ldi r24,lo8(3)
 695 01f4 0E94 0000 		call LcdSendData
 259:lcddrive.c    ****  SetLcdCs();	
 697               	.LM104:
 698               	/* #APP */
 699 01f8 929A      		 SBI 0x12,2
 700               		
 701               	/* #NOAPP */
 702               	/* epilogue: frame size=0 */
 703 01fa CF91      		pop r28
 704 01fc 0895      		ret
 705               	/* epilogue end (size=2) */
 706               	/* function LcdInit size 224 (221) */
 711               	.Lscope5:
 714               	.global	LcdClr
 716               	LcdClr:
 260:lcddrive.c    **** }
 261:lcddrive.c    **** 
 262:lcddrive.c    **** 
 263:lcddrive.c    **** 
 264:lcddrive.c    **** /***********************************************************************
 265:lcddrive.c    **** * 名称:LcdClr()
 266:lcddrive.c    **** * 功能:
 267:lcddrive.c    **** * 入口参数:color  	清屏函数,往屏幕填充指定的背景色
 268:lcddrive.c    **** * 出口参数:
 269:lcddrive.c    **** ***********************************************************************/
 270:lcddrive.c    **** 
 271:lcddrive.c    **** void LcdClr(uint16 color)
 272:lcddrive.c    **** {
 718               	.LM105:
 719               	/* prologue: frame size=0 */
 720 01fe 0F93      		push r16
 721 0200 1F93      		push r17
 722 0202 CF93      		push r28
 723 0204 DF93      		push r29
 724               	/* prologue end (size=4) */
 725 0206 EC01      		movw r28,r24
 273:lcddrive.c    ****  uint8 x, y;
 274:lcddrive.c    ****  LcdSendCommand(0x2a);		//column address set
 727               	.LM106:
 728 0208 8AE2      		ldi r24,lo8(42)
 729 020a 0E94 0000 		call LcdSendCommand
 275:lcddrive.c    ****  LcdSendData(0);
 731               	.LM107:

⌨️ 快捷键说明

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