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

📄 lcd12864.lst

📁 用proteus仿真AVR单片机12864LCD,实现波形的实时显示。
💻 LST
📖 第 1 页 / 共 5 页
字号:
(0461) 
(0462) //图片滚屏效果子程序:***********************************************
(0463) 
(0464) void scroll(const uchar *po_to_flash)
(0465) {
    106A C012      RJMP	0x107D
(0466)           unsigned char i,start;
(0467) 		  while(1)
(0468) 	  	  {
(0469) 	   	   WDR();
    106B 95A8      WDR
(0470) 		   if(hanzi_flag==1) break;//显示汉字标志位为1则跳出循环;
    106C 91800060  LDS	R24,hanzi_flag
    106E 3081      CPI	R24,1
    106F F409      BNE	0x1071
    1070 C00D      RJMP	0x107E
(0471) 	   	   start=0xc0;	  	 
    1071 EC60      LDI	R22,0xC0
(0472) 	   	   for(i=0;i<64;i++)
    1072 24AA      CLR	R10
    1073 C006      RJMP	0x107A
(0473) 	   	   {
(0474) 	       	  display_graphic(po_to_flash);//显示完一屏则起始行加1;
    1074 018A      MOVW	R16,R20
    1075 DE7B      RCALL	_display_graphic
(0475) 			  	       	  
(0476)       	   	  lcd_write_code(start);
    1076 2F06      MOV	R16,R22
    1077 DD6C      RCALL	_lcd_write_code
(0477) 	  	   	  start++;			  
    1078 9563      INC	R22
    1079 94A3      INC	R10
    107A 2D8A      MOV	R24,R10
    107B 3480      CPI	R24,0x40
    107C F3B8      BCS	0x1074
    107D CFED      RJMP	0x106B
    107E 940E134D  CALL	pop_gset3
    1080 9508      RET
_main:
  start                --> Y+3
  i                    --> Y+3
    1081 9722      SBIW	R28,2
FILE: D:\练习\LCD显示12864\LCD12864.c
(0001) //ICC-AVR application builder : 2007-4-27 9:07:43
(0002) // Target : M16
(0003) // Crystal: 8.0000Mhz
(0004) //author: zhuyiguo
(0005) //lcd12864_display exercise
(0006) #include "LCD12864.h"
(0007) #include "LCD12864_DATA.h"
(0008) //#pragma data:data
(0009) 
(0010) void main(void)
(0011) {   
(0012)     unsigned char i,start;
(0013) 	//uchar page=0xb8,column=0x48;
(0014) 	init_devices();
    1082 DCFE      RCALL	_init_devices
(0015) 	E_0; 
    1083 98AC      CBI	0x15,4
(0016) 	
(0017) 	lcd_init();	
    1084 DE5F      RCALL	_lcd_init
(0018) 	dis_one_zi(0,1,yie);
    1085 ED84      LDI	R24,0xD4
    1086 E090      LDI	R25,0
    1087 8399      STD	Y+1,R25
    1088 8388      STD	Y+0,R24
    1089 E021      LDI	R18,1
    108A 2700      CLR	R16
    108B DD6E      RCALL	_dis_one_zi
(0019) 	delay_ms(200);	 
    108C EC08      LDI	R16,0xC8
    108D E010      LDI	R17,0
    108E DD10      RCALL	_delay_ms
(0020) 	dis_one_zi(0,2,jing);	
    108F EF84      LDI	R24,0xF4
    1090 E090      LDI	R25,0
    1091 8399      STD	Y+1,R25
    1092 8388      STD	Y+0,R24
    1093 E022      LDI	R18,2
    1094 2700      CLR	R16
    1095 DD64      RCALL	_dis_one_zi
(0021) 	delay_ms(200);
    1096 EC08      LDI	R16,0xC8
    1097 E010      LDI	R17,0
    1098 DD06      RCALL	_delay_ms
(0022) 	dis_one_zi(0,3,xian);
    1099 E284      LDI	R24,0x24
    109A E19A      LDI	R25,0x1A
    109B 8399      STD	Y+1,R25
    109C 8388      STD	Y+0,R24
    109D E023      LDI	R18,3
    109E 2700      CLR	R16
    109F DD5A      RCALL	_dis_one_zi
(0023) 	delay_ms(200);
    10A0 EC08      LDI	R16,0xC8
    10A1 E010      LDI	R17,0
    10A2 DCFC      RCALL	_delay_ms
(0024) 	dis_one_zi(0,4,shi);
    10A3 E484      LDI	R24,0x44
    10A4 E19A      LDI	R25,0x1A
    10A5 8399      STD	Y+1,R25
    10A6 8388      STD	Y+0,R24
    10A7 E024      LDI	R18,4
    10A8 2700      CLR	R16
    10A9 DD50      RCALL	_dis_one_zi
(0025) 	delay_ms(200);
    10AA EC08      LDI	R16,0xC8
    10AB E010      LDI	R17,0
    10AC DCF2      RCALL	_delay_ms
(0026) 	dis_one_zi(0,5,shi1);
    10AD E184      LDI	R24,0x14
    10AE E091      LDI	R25,1
    10AF 8399      STD	Y+1,R25
    10B0 8388      STD	Y+0,R24
    10B1 E025      LDI	R18,5
    10B2 2700      CLR	R16
    10B3 DD46      RCALL	_dis_one_zi
(0027) 	delay_ms(200);
    10B4 EC08      LDI	R16,0xC8
    10B5 E010      LDI	R17,0
    10B6 DCE8      RCALL	_delay_ms
(0028) 	dis_one_zi(0,6,yan);
    10B7 E384      LDI	R24,0x34
    10B8 E091      LDI	R25,1
    10B9 8399      STD	Y+1,R25
    10BA 8388      STD	Y+0,R24
    10BB E026      LDI	R18,6
    10BC 2700      CLR	R16
    10BD DD3C      RCALL	_dis_one_zi
(0029) 	delay_ms(200);
    10BE EC08      LDI	R16,0xC8
    10BF E010      LDI	R17,0
    10C0 DCDE      RCALL	_delay_ms
(0030) 	
(0031) 	dis_one_zi(2,5,zhu);
    10C1 E784      LDI	R24,0x74
    10C2 E090      LDI	R25,0
    10C3 8399      STD	Y+1,R25
    10C4 8388      STD	Y+0,R24
    10C5 E025      LDI	R18,5
    10C6 E002      LDI	R16,2
    10C7 DD32      RCALL	_dis_one_zi
(0032) 	//delay_ms(500);	
(0033) 	dis_one_zi(2,6,yi);
    10C8 E984      LDI	R24,0x94
    10C9 E090      LDI	R25,0
    10CA 8399      STD	Y+1,R25
    10CB 8388      STD	Y+0,R24
    10CC E026      LDI	R18,6
    10CD E002      LDI	R16,2
    10CE DD2B      RCALL	_dis_one_zi
(0034) 	//delay_ms(500);
(0035) 	dis_one_zi(2,7,guo);
    10CF EB84      LDI	R24,0xB4
    10D0 E090      LDI	R25,0
    10D1 8399      STD	Y+1,R25
    10D2 8388      STD	Y+0,R24
    10D3 E027      LDI	R18,7
    10D4 E002      LDI	R16,2
    10D5 DD24      RCALL	_dis_one_zi
(0036) 	//delay_ms(500);
(0037) 	
(0038) 	dis_one_abc(3,10,dayu);
    10D6 E684      LDI	R24,0x64
    10D7 E19A      LDI	R25,0x1A
    10D8 8399      STD	Y+1,R25
    10D9 8388      STD	Y+0,R24
    10DA E02A      LDI	R18,0xA
    10DB E003      LDI	R16,3
    10DC DD5C      RCALL	_dis_one_abc
(0039) 	delay_ms(100);
    10DD E604      LDI	R16,0x64
    10DE E010      LDI	R17,0
    10DF DCBF      RCALL	_delay_ms
(0040) 	dis_one_abc(3,11,dayu);
    10E0 E684      LDI	R24,0x64
    10E1 E19A      LDI	R25,0x1A
    10E2 8399      STD	Y+1,R25
    10E3 8388      STD	Y+0,R24
    10E4 E02B      LDI	R18,0xB
    10E5 E003      LDI	R16,3
    10E6 DD52      RCALL	_dis_one_abc
(0041) 	delay_ms(100);
    10E7 E604      LDI	R16,0x64
    10E8 E010      LDI	R17,0
    10E9 DCB5      RCALL	_delay_ms
(0042) 	dis_one_abc(3,12,dayu);
    10EA E684      LDI	R24,0x64
    10EB E19A      LDI	R25,0x1A
    10EC 8399      STD	Y+1,R25
    10ED 8388      STD	Y+0,R24
    10EE E02C      LDI	R18,0xC
    10EF E003      LDI	R16,3
    10F0 DD48      RCALL	_dis_one_abc
(0043) 	delay_ms(100);
    10F1 E604      LDI	R16,0x64
    10F2 E010      LDI	R17,0
    10F3 DCAB      RCALL	_delay_ms
(0044) 	dis_one_abc(3,13,dayu);
    10F4 E684      LDI	R24,0x64
    10F5 E19A      LDI	R25,0x1A
    10F6 8399      STD	Y+1,R25
    10F7 8388      STD	Y+0,R24
    10F8 E02D      LDI	R18,0xD
    10F9 E003      LDI	R16,3
    10FA DD3E      RCALL	_dis_one_abc
(0045) 	delay_ms(100);
    10FB E604      LDI	R16,0x64
    10FC E010      LDI	R17,0
    10FD DCA1      RCALL	_delay_ms
(0046) 	dis_one_abc(3,14,dayu);
    10FE E684      LDI	R24,0x64
    10FF E19A      LDI	R25,0x1A
    1100 8399      STD	Y+1,R25
    1101 8388      STD	Y+0,R24
    1102 E02E      LDI	R18,0xE
    1103 E003      LDI	R16,3
    1104 DD34      RCALL	_dis_one_abc
(0047) 	delay_ms(100);
    1105 E604      LDI	R16,0x64
    1106 E010      LDI	R17,0
    1107 DC97      RCALL	_delay_ms
(0048)     CLRLCD();
    1108 DDBD      RCALL	_CLRLCD
    1109 C17C      RJMP	0x1286
(0049) 	
(0050) 	
(0051) 	
(0052) 		
(0053) 	while(1)
(0054) 	{ 
(0055) 	  WDR();	  
    110A 95A8      WDR
(0056) 	  if(graphy_num==1)
    110B 91800062  LDS	R24,graphy_num
    110D 3081      CPI	R24,1
    110E F599      BNE	0x1142
(0057) 	  {	   
(0058) 	   if(flash_flag%2==1)
    110F E012      LDI	R17,2
    1110 91000064  LDS	R16,flash_flag
    1112 940E1322  CALL	mod8u
    1114 3001      CPI	R16,1
    1115 F4B1      BNE	0x112C
(0059) 	   {	  	     
(0060) 	    dis_one_zi(0,1,X26);
    1116 E584      LDI	R24,0x54
    1117 E090      LDI	R25,0
    1118 8399      STD	Y+1,R25
    1119 8388      STD	Y+0,R24
    111A E021      LDI	R18,1
    111B 2700      CLR	R16
    111C DCDD      RCALL	_dis_one_zi
(0061) 	   	dis_one_zi(0,2,X26);
    111D E584      LDI	R24,0x54
    111E E090      LDI	R25,0
    111F 8399      STD	Y+1,R25
    1120 8388      STD	Y+0,R24
    1121 E022      LDI	R18,2
    1122 2700      CLR	R16
    1123 DCD6      RCALL	_dis_one_zi
(0062) 	   	dis_one_zi(0,3,X26);
    1124 E584      LDI	R24,0x54
    1125 E090      LDI	R25,0
    1126 8399      STD	Y+1,R25
    1127 8388      STD	Y+0,R24
    1128 E023      LDI	R18,3
    1129 2700      CLR	R16
    112A DCCF      RCALL	_dis_one_zi
(0063) 	   }
    112B C02B      RJMP	0x1157
(0064) 	   else 
(0065) 	   {
(0066) 	     dis_one_zi(0,1,tu);//汉字:图片1
    112C E584      LDI	R24,0x54
    112D E091      LDI	R25,1
    112E 8399      STD	Y+1,R25
    112F 8388      STD	Y+0,R24
    1130 E021      LDI	R18,1
    1131 2700      CLR	R16
    1132 DCC7      RCALL	_dis_one_zi
(0067) 	     dis_one_zi(0,2,pian);
    1133 E784      LDI	R24,0x74
    1134 E091      LDI	R25,1
    1135 8399      STD	Y+1,R25
    1136 8388      STD	Y+0,R24
    1137 E022      LDI	R18,2
    1138 2700      CLR	R16
    1139 DCC0      RCALL	_dis_one_zi
(0068) 	     dis_one_abc(0,6,n_1);
    113A E984      LDI	R24,0x94
    113B E091      LDI	R25,1
    113C 8399      STD	Y+1,R25
    113D 8388      STD	Y+0,R24
    113E E026      LDI	R18,6
    113F 2700      CLR	R16
    1140 DCF8      RCALL	_dis_one_abc
(0069) 	   }
(0070) 	  }
    1141 C015      RJMP	0x1157
(0071) 	  else
(0072) 	  {
(0073) 	    dis_one_zi(0,1,tu);//汉字:图片1
    1142 E584      LDI	R24,0x54
    1143 E091      LDI	R25,1
    1144 8399      STD	Y+1,R25
    1145 8388      STD	Y+0,R24
    1146 E021      LDI	R18,1
    1147 2700      CLR	R16
    1148 DCB1      RCALL	_dis_one_zi
(0074) 	    dis_one_zi(0,2,pian);
    1149 E784      LDI	R24,0x74
    114A E091      LDI	R25,1
    114B 8399      STD	Y+1,R25
    114C 8388      STD	Y+0,R24
    114D E022      LDI	R18,2
    114E 2700      CLR	R16
    114F DCAA      RCALL	_dis_one_zi
(0075) 	    dis_one_abc(0,6,n_1);
    1150 E984      LDI	R24,0x94
    1151 E091      LDI	R25,1
    1152 8399      STD	Y+1,R25
    1153 8388      STD	Y+0,R24
    1154 E026      LDI	R18,6
    1155 2700      CLR	R16
    1156 DCE2      RCALL	_dis_one_abc
(0076) 	  }
(0077) 	  	  
(0078) 	  if(graphy_num==2)
    1157 91800062  LDS	R24,graphy_num
    1159 3082      CPI	R24,2
    115A F599      BNE	0x118E
(0079) 	  {	   
(0080) 	   if(flash_flag%2==1)
    115B E012      LDI	R17,2
    115C 91000064  LDS	R16,flash_flag
    115E 940E1322  CALL	mod8u
    1160 3001      CPI	R16,1
    1161 F4B1      BNE	0x1178
(0081) 	   {	  	      
(0082) 	   	 dis_one_zi(1,1,X26);
    1162 E584      LDI	R24,0x54
    1163 E090      LDI	R25,0
    1164 8399      STD	Y+1,R25
    1165 8388      STD	Y+0,R24
    1166 E021      LDI	R18,1
    1167 E001      LDI	R16,1
    1168 DC91      RCALL	_dis_one_zi
(0083) 	   	 dis_one_zi(1,2,X26);
    1169 E584      LDI	R24,0x54
    116A E090      LDI	R25,0
    116B 8399      STD	Y+1,R25
    116C 8388      STD	Y+0,R24
    116D E022      LDI	R18,2
    116E E001      LDI	R16,1
    116F DC8A      RCALL	_dis_one_zi
(0084) 	  	 dis_one_zi(1,3,X26);
    1170 E584      LDI	R24,0x54
    1171 E090      LDI	R25,0
    1172 8399      STD	Y+1,R25
    1173 8388      STD	Y+0,R24
    1174 E023      LDI	R18,3
    1175 E001      LDI	R16,1
    1176 DC83      RCALL	_dis_one_zi
(0085) 	   }
    1177 C02B      RJMP	0x11A3
(0086) 	   else
(0087) 	   {
(0088) 	     dis_one_zi(1,1,tu);//汉字:图片2
    1178 E584      LDI	R24,0x54
    1179 E091      LDI	R25,1
    117A 8399      STD	Y+1,R25
    117B 8388      STD	Y+0,R24
    117C E021      LDI	R18,1
    117D E001      LDI	R16,1
    117E DC7B      RCALL	_dis_one_zi
(0089) 	     dis_one_zi(1,2,pian);
    117F E784      LDI	R24,0x74
    1180 E091      LDI	R25,1
    1181 8399      STD	Y+1,R25
    1182 8388      STD	Y+0,R24
    1183 E022      LDI	R18,2
    1184 E001      LDI	R16,1
    1185 DC74      RCALL	_dis_one_zi
(0090) 	     dis_one_abc(1,6,n_2);
    1186 EA84      LDI	R24,0xA4
    1187 E091      LDI	R25,1
    1188 8399      STD	Y+1,R25
    1189 8388      STD	Y+0,R24
    118A E026      LDI	R18,6
    118B E001      LDI	R16,1
    118C DCAC      RCALL	_dis_one_abc
(0091) 	   }	   
(0092) 	  }
    118D C015      RJMP	0x11A3
(0093) 	  else
(0094) 	  {
(0095) 	    dis_one_zi(1,1,tu);//汉字:图片2
    118E E584      LDI	R24,0x54
    118F E091      LDI	R25,1
    1190 8399      STD	Y+1,R25
    1191 8388      STD	Y+0,R24
    1192 E021      LDI	R18,1
    1193 E001      LDI	R16,1
    1194 DC65      RCALL	_dis_one_zi
(0096) 	     dis_one_zi(1,2,pian);
    1195 E784      LDI	R24,0x74
    1196 E091      LDI	R25,1
    1197 8399      STD	Y+1,R25
    1198 8388      STD	Y+0,R24
    1199 E022      LDI	R18,2
    119A E001      LDI	R16,1
    119B DC5E      RCALL	_dis_one_zi
(0097) 	     dis_one_abc(1,6,n_2);
    119C EA84      LDI	R24,0xA4
    119D E091      LDI	R25,1
    119E 8399      STD	Y+1,R25
    119F 8388      STD	Y+0,R24
    11A0 E026      LDI	R18,6
    11A1 E001      LDI	R16,1
    11A2 DC96      RCALL	_dis_one_abc
(0098) 	  }
(0099) 	  
(0100) 	  
(0101) 	  if(graphy_num==3)
    11A3 91800062  LDS	R24,graphy_num
    11A5 3083      CPI	R24,3
    11A6 F599      BNE	0x11DA
(0102) 	  {	   
(0103) 	   if(flash_flag%2==1)
    11A7 E012      LDI	R17,2

⌨️ 快捷键说明

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