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

📄 main.lst

📁 诺基亚3310手机液晶屏驱动程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
 930               	/* function LCD_write_english_string size 15 (10) */
 932               	.Lscope13:
 934 03a8 8823      	.global	LCD_clear
 936               	LCD_clear:
 938 03ae CF91      	.LM76:
 939 03b0 0895      	/* prologue: frame size=0 */
 940               		push r28
 941               		push r29
 942               	/* prologue end (size=2) */
 944               	.LM77:
 945               		ldi r22,lo8(0)
 946               		ldi r24,lo8(12)
 947               		call LCD_write_byte
 949               	.LM78:
 950               		ldi r22,lo8(0)
 951 03b2 CF93      		ldi r24,lo8(-128)
 952 03b4 DF93      		call LCD_write_byte
 953               		ldi r28,lo8(0)
 954               		ldi r29,hi8(0)
 955               	.L91:
 957 03b8 8CE0      	.LM79:
 958 03ba 0E94 0000 		ldi r22,lo8(1)
 959               		ldi r24,lo8(0)
 960               		call LCD_write_byte
 962 03c0 80E8      	.LM80:
 963 03c2 0E94 0000 		adiw r28,1
 964 03c6 C0E0      		ldi r24,hi8(504)
 965 03c8 D0E0      		cpi r28,lo8(504)
 966               		cpc r29,r24
 967               		brne .L91
 968               	/* epilogue: frame size=0 */
 969 03ca 61E0      		pop r29
 970 03cc 80E0      		pop r28
 971 03ce 0E94 0000 		ret
 972               	/* epilogue end (size=3) */
 973               	/* function LCD_clear size 24 (19) */
 978 03da 01F4      	.Lscope14:
 980 03dc DF91      	.global	LCD_init
 982 03e0 0895      	LCD_init:
 984               	.LM81:
 985               	/* prologue: frame size=0 */
 986               	/* prologue end (size=0) */
 988               	.LM82:
 989               		cbi 56-0x20,1
 990               		ldi r24,lo8(0)
 991               		ldi r25,hi8(0)
 992               	.L97:
 993               	.LBB24:
 994               	.LBB25:
 995               	.LBB26:
 996               	.LBB27:
 998               	.Ltext5:
 1000 03e2 C198      	.LM83:
 1001 03e4 80E0      	/* #APP */
 1002 03e6 90E0      		nop
 1003               	/* #NOAPP */
 1004               	.LBE27:
 1005               	.LBE26:
 1007               	.LM84:
 1008               		adiw r24,1
 1009               		cpi r24,10
 1010               		cpc r25,__zero_reg__
 1011               		brne .L97
 1012               	.LBE25:
 1013 03e8 0000      	.LBE24:
 1015               	.Ltext6:
 1017               	.LM85:
 1018               		sbi 56-0x20,1
 1020 03ec 8A30      	.LM86:
 1021 03ee 9105      		cbi 56-0x20,4
 1022 03f0 01F4      		ldi r24,lo8(0)
 1023               		ldi r25,hi8(0)
 1024               	.L99:
 1025               	.LBB28:
 1026               	.LBB29:
 1027               	.LBB30:
 1028               	.LBB31:
 1030               	.Ltext7:
 1032 03f4 C498      	.LM87:
 1033 03f6 80E0      	/* #APP */
 1034 03f8 90E0      		nop
 1035               	/* #NOAPP */
 1036               	.LBE31:
 1037               	.LBE30:
 1039               	.LM88:
 1040               		adiw r24,1
 1041               		cpi r24,10
 1042               		cpc r25,__zero_reg__
 1043               		brne .L99
 1044               	.LBE29:
 1045 03fa 0000      	.LBE28:
 1047               	.Ltext8:
 1049               	.LM89:
 1050               		sbi 56-0x20,4
 1051 03fc 0196      		ldi r24,lo8(0)
 1052 03fe 8A30      		ldi r25,hi8(0)
 1053 0400 9105      	.L101:
 1054 0402 01F4      	.LBB32:
 1055               	.LBB33:
 1056               	.LBB34:
 1057               	.LBB35:
 1059               	.Ltext9:
 1061 0404 C49A      	.LM90:
 1062 0406 80E0      	/* #APP */
 1063 0408 90E0      		nop
 1064               	/* #NOAPP */
 1065               	.LBE35:
 1066               	.LBE34:
 1068               	.LM91:
 1069               		adiw r24,1
 1070               		cpi r24,10
 1071               		cpc r25,__zero_reg__
 1072               		brne .L101
 1073               	.LBE33:
 1074 040a 0000      	.LBE32:
 1076               	.Ltext10:
 1078               	.LM92:
 1079               		ldi r22,lo8(0)
 1080 040c 0196      		ldi r24,lo8(33)
 1081 040e 8A30      		call LCD_write_byte
 1083 0412 01F4      	.LM93:
 1084               		ldi r22,lo8(0)
 1085               		ldi r24,lo8(-56)
 1086               		call LCD_write_byte
 1088               	.LM94:
 1089               		ldi r22,lo8(0)
 1090 0414 60E0      		ldi r24,lo8(6)
 1091 0416 81E2      		call LCD_write_byte
 1093               	.LM95:
 1094               		ldi r22,lo8(0)
 1095 041c 60E0      		ldi r24,lo8(19)
 1096 041e 88EC      		call LCD_write_byte
 1098               	.LM96:
 1099               		ldi r22,lo8(0)
 1100 0424 60E0      		ldi r24,lo8(32)
 1101 0426 86E0      		call LCD_write_byte
 1103               	.LM97:
 1104               		call LCD_clear
 1106 042e 83E1      	.LM98:
 1107 0430 0E94 0000 		ldi r22,lo8(0)
 1108               		ldi r24,lo8(12)
 1109               		call LCD_write_byte
 1111 0436 80E2      	.LM99:
 1112 0438 0E94 0000 		cbi 56-0x20,4
 1113               	/* epilogue: frame size=0 */
 1114               		ret
 1115 043c 0E94 0000 	/* epilogue end (size=1) */
 1116               	/* function LCD_init size 56 (55) */
 1127               	.Lscope15:
 1128               		.data
 1129               	.LC0:
 1130               		.string	"26"
 1131               		.text
 1133               	.global	main
 1135               	main:
 1137               	.Ltext11:
 1139               	.LM100:
 1140               	/* prologue: frame size=0 */
 1141 0000 3236 00   	/* prologue end (size=0) */
 1143               	.LM101:
 1144               		in r24,55-0x20
 1145               		ori r24,lo8(-14)
 1146               		out 55-0x20,r24
 1148               	.LM102:
   1:main.c        **** /***********************************************
   2:main.c        **** **** 本原代码转自:www.527dz.com (作者527dz) ***
   3:main.c        **** ****  由armok阿莫(www.OurAVR.com)整理及修改  ***
   4:main.c        **** ****  2004.10.05                             ***
   5:main.c        **** ***********************************************/   
   6:main.c        **** 
   7:main.c        **** #include <avr/io.h>
   8:main.c        **** #include <stdio.h>
   9:main.c        **** #include "3310LCD.h"
  10:main.c        **** #include "bmp_pixel.h"
  11:main.c        **** 
  12:main.c        **** /******************************************************************************/
  13:main.c        **** int main(void) 
  14:main.c        ****   {
 1149               	.LC0)
 1150               		ldi r22,lo8(0)
 1151               		ldi r24,lo8(0)
 1152               		call LCD_write_english_string
  15:main.c        **** //    OSCCAL=0x9d;                        // 8M系统内部时钟校准    
  16:main.c        ****     //设置MCU的I/O口
  17:main.c        ****     DDRB |= LCD_RST | LCD_DC | LCD_CE | SPI_MOSI | SPI_CLK;
 1153               	 r18,lo8(0)
 1154               		ldi r19,hi8(0)
 1155 044c 87B3      		ldi r30,lo8(2000)
 1156 044e 826F      		ldi r31,hi8(2000)
 1157 0450 87BB      	.L112:
  18:main.c        ****  //   SPSR |= _BV(SPI2X);                 // 设置SPI时钟倍速
  19:main.c        ****     SPCR |= _BV(SPE) | _BV(MSTR);		// 使能SPI接口,主机模式,4M时钟
 1158               	8:
 1159               	.LBB49:
 1160 0452 8DB1      	.LBB50:
 1161 0454 8065      	.LBB51:
  20:main.c        ****  
  21:main.c        ****     LCD_init(); //初始化液晶    
 1163               	t12:
 1165 0458 0E94 0000 	.LM105:
 1166               		movw r24,r30
  22:main.c        ****  //   char s="hello";
  23:main.c        ****   while(1)  
  24:main.c        ****       {
  25:main.c        **** 
  26:main.c        ****       LCD_write_english_string(0,0,"26");
 1167               	APP */
 1168               		1: sbiw r24,1
 1169 045c 40E0      		brne 1b
 1170 045e 50E0      	/* #NOAPP */
 1171 0460 60E0      	.LBE51:
 1172 0462 80E0      	.LBE50:
 1174 0468 20E0      	.Ltext13:
 1176 046c E0ED      	.LM106:
 1177 046e F7E0      		subi r18,lo8(-(1))
 1178               		sbci r19,hi8(-(1))
 1179               		ldi r24,hi8(500)
 1180               		cpi r18,lo8(500)
 1181               		cpc r19,r24
 1182               		brne .L112
 1183               		ldi r18,lo8(0)
 1184               		ldi r19,hi8(0)
 1185               		ldi r30,lo8(2000)
 1186               		ldi r31,hi8(2000)
 1187 0470 CF01      	.L114:
 1188               	.LBE49:
 1189 0472 0197      	.LBE48:
 1190 0474 01F4      	.LBB52:
 1191               	.LBB53:
 1192               	.LBB54:
 1193               	.LBB55:
 1195               	.Ltext14:
 1197               	.LM107:
 1198 0476 2F5F      		movw r24,r30
 1199 0478 3F4F      	/* #APP */
 1200 047a 81E0      		1: sbiw r24,1
 1201 047c 243F      		brne 1b
 1202 047e 3807      	/* #NOAPP */
 1203 0480 01F4      	.LBE55:
 1204 0482 20E0      	.LBE54:
 1206 0486 E0ED      	.Ltext15:
 1208               	.LM108:
 1209               		subi r18,lo8(-(1))
 1210               		sbci r19,hi8(-(1))
 1211               		ldi r24,hi8(500)
 1212               		cpi r18,lo8(500)
 1213               		cpc r19,r24
 1214               		brne .L114
 1215               		ldi r18,lo8(0)
 1216               		ldi r19,hi8(0)
 1217               		ldi r30,lo8(2000)
 1218               		ldi r31,hi8(2000)
 1219 048a CF01      	.L116:
 1220               	.LBE53:
 1221 048c 0197      	.LBE52:
 1222 048e 01F4      	.LBB56:
 1223               	.LBB57:
 1224               	.LBB58:
 1225               	.LBB59:
 1227               	.Ltext16:
 1229               	.LM109:
 1230 0490 2F5F      		movw r24,r30
 1231 0492 3F4F      	/* #APP */
 1232 0494 81E0      		1: sbiw r24,1
 1233 0496 243F      		brne 1b
 1234 0498 3807      	/* #NOAPP */
 1235 049a 01F4      	.LBE59:
 1236 049c 20E0      	.LBE58:
 1238 04a0 E0ED      	.Ltext17:
 1240               	.LM110:
 1241               		subi r18,lo8(-(1))
 1242               		sbci r19,hi8(-(1))
 1243               		ldi r24,hi8(500)
 1244               		cpi r18,lo8(500)
 1245               		cpc r19,r24
 1246               		brne .L116
 1247               	.LBE57:
 1248               	.LBE56:
 1250               	.Ltext18:
 1252               	.LM111:
 1253 04a6 0197      		call LCD_clear
 1254 04a8 01F4      		rjmp .L111
 1255               	/* epilogue: frame size=0 */
 1256               	/* epilogue: noreturn */
 1257               	/* epilogue end (size=0) */
 1258               	/* function main size 62 (62) */
  27:main.c        ****       DelayMs(500);
  28:main.c        ****       DelayM

⌨️ 快捷键说明

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