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

📄 lcd.lst

📁 Using LCD4bit for ATMEGA8535
💻 LST
📖 第 1 页 / 共 4 页
字号:
   1               		.file	"LCD.c"
   2               	__SREG__ = 0x3f
   3               	__SP_H__ = 0x3e
   4               	__SP_L__ = 0x3d
   5               	__CCP__  = 0x34
   6               	__tmp_reg__ = 0
   7               	__zero_reg__ = 1
   8               		.global __do_copy_data
   9               		.global __do_clear_bss
  17               	.Ltext0:
  18               	.global	LCDsendChar
  20               	LCDsendChar:
  21               	.LFB6:
  22               	.LM1:
  23               	.LVL0:
  24               	/* prologue: function */
  25               	/* frame size = 0 */
  26               	.LM2:
  27 0000 282F      		mov r18,r24
  28 0002 207F      		andi r18,lo8(-16)
  29 0004 22BB      		out 50-32,r18
  30               	.LM3:
  31 0006 909A      		sbi 50-32,0
  32               	.LM4:
  33 0008 929A      		sbi 50-32,2
  34               	.LBB187:
  35               	.LBB188:
  36               	.LBB189:
  37               	.LBB190:
  38               	.LM5:
  39 000a 20ED      		ldi r18,lo8(2000)
  40 000c 37E0      		ldi r19,hi8(2000)
  41 000e F901      		movw r30,r18
  42               	.LVL1:
  43               	/* #APP */
  44               	 ;  105 "d:/semester 5/wawan/mikrokontroler/avr/lib/gcc/../../avr/include/util/delay_basic.h" 1
  45 0010 3197      		1: sbiw r30,1
  46 0012 01F4      		brne 1b
  47               	 ;  0 "" 2
  48               	/* #NOAPP */
  49               	.LBE190:
  50               	.LBE189:
  51               	.LBE188:
  52               	.LBE187:
  53               	.LM6:
  54 0014 9298      		cbi 50-32,2
  55               	.LM7:
  56 0016 9098      		cbi 50-32,0
  57               	.LBB191:
  58               	.LBB192:
  59               	.LBB193:
  60               	.LBB194:
  61               	.LM8:
  62 0018 F901      		movw r30,r18
  63               	.LVL2:
  64               	/* #APP */
  65               	 ;  105 "d:/semester 5/wawan/mikrokontroler/avr/lib/gcc/../../avr/include/util/delay_basic.h" 1
  66 001a 3197      		1: sbiw r30,1
  67 001c 01F4      		brne 1b
  68               	 ;  0 "" 2
  69               	/* #NOAPP */
  70               	.LBE194:
  71               	.LBE193:
  72               	.LBE192:
  73               	.LBE191:
  74               	.LM9:
  75 001e 90E0      		ldi r25,lo8(0)
  76               	.LVL3:
  77 0020 44E0      		ldi r20,4
  78 0022 880F      	1:	lsl r24
  79 0024 991F      		rol r25
  80 0026 4A95      		dec r20
  81 0028 01F4      		brne 1b
  82               	.LVL4:
  83 002a 82BB      		out 50-32,r24
  84               	.LM10:
  85 002c 909A      		sbi 50-32,0
  86               	.LM11:
  87 002e 929A      		sbi 50-32,2
  88               	.LBB195:
  89               	.LBB196:
  90               	.LBB197:
  91               	.LBB198:
  92               	.LM12:
  93 0030 C901      		movw r24,r18
  94               	.LVL5:
  95               	/* #APP */
  96               	 ;  105 "d:/semester 5/wawan/mikrokontroler/avr/lib/gcc/../../avr/include/util/delay_basic.h" 1
  97 0032 0197      		1: sbiw r24,1
  98 0034 01F4      		brne 1b
  99               	 ;  0 "" 2
 100               	/* #NOAPP */
 101               	.LBE198:
 102               	.LBE197:
 103               	.LBE196:
 104               	.LBE195:
 105               	.LM13:
 106 0036 9298      		cbi 50-32,2
 107               	.LM14:
 108 0038 9098      		cbi 50-32,0
 109               	.LBB199:
 110               	.LBB200:
 111               	.LBB201:
 112               	.LBB202:
 113               	.LM15:
 114 003a C901      		movw r24,r18
 115               	.LVL6:
 116               	/* #APP */
 117               	 ;  105 "d:/semester 5/wawan/mikrokontroler/avr/lib/gcc/../../avr/include/util/delay_basic.h" 1
 118 003c 0197      		1: sbiw r24,1
 119 003e 01F4      		brne 1b
 120               	 ;  0 "" 2
 121               	/* epilogue start */
 122               	/* #NOAPP */
 123               	.LBE202:
 124               	.LBE201:
 125               	.LBE200:
 126               	.LBE199:
 127               	.LM16:
 128 0040 0895      		ret
 129               	.LFE6:
 131               	.global	LCDsendCommand
 133               	LCDsendCommand:
 134               	.LFB7:
 135               	.LM17:
 136               	.LVL7:
 137               	/* prologue: function */
 138               	/* frame size = 0 */
 139               	.LM18:
 140 0042 282F      		mov r18,r24
 141 0044 207F      		andi r18,lo8(-16)
 142 0046 22BB      		out 50-32,r18
 143               	.LM19:
 144 0048 929A      		sbi 50-32,2
 145               	.LBB203:
 146               	.LBB204:
 147               	.LBB205:
 148               	.LBB206:
 149               	.LM20:
 150 004a 20ED      		ldi r18,lo8(2000)
 151 004c 37E0      		ldi r19,hi8(2000)
 152 004e F901      		movw r30,r18
 153               	.LVL8:
 154               	/* #APP */
 155               	 ;  105 "d:/semester 5/wawan/mikrokontroler/avr/lib/gcc/../../avr/include/util/delay_basic.h" 1
 156 0050 3197      		1: sbiw r30,1
 157 0052 01F4      		brne 1b
 158               	 ;  0 "" 2
 159               	/* #NOAPP */
 160               	.LBE206:
 161               	.LBE205:
 162               	.LBE204:
 163               	.LBE203:
 164               	.LM21:
 165 0054 9298      		cbi 50-32,2
 166               	.LBB207:
 167               	.LBB208:
 168               	.LBB209:
 169               	.LBB210:
 170               	.LM22:
 171 0056 F901      		movw r30,r18
 172               	.LVL9:
 173               	/* #APP */
 174               	 ;  105 "d:/semester 5/wawan/mikrokontroler/avr/lib/gcc/../../avr/include/util/delay_basic.h" 1
 175 0058 3197      		1: sbiw r30,1
 176 005a 01F4      		brne 1b
 177               	 ;  0 "" 2
 178               	/* #NOAPP */
 179               	.LBE210:
 180               	.LBE209:
 181               	.LBE208:
 182               	.LBE207:
 183               	.LM23:
 184 005c 90E0      		ldi r25,lo8(0)
 185               	.LVL10:
 186 005e 54E0      		ldi r21,4
 187 0060 880F      	1:	lsl r24
 188 0062 991F      		rol r25
 189 0064 5A95      		dec r21
 190 0066 01F4      		brne 1b
 191               	.LVL11:
 192 0068 82BB      		out 50-32,r24
 193               	.LM24:
 194 006a 929A      		sbi 50-32,2
 195               	.LBB211:
 196               	.LBB212:
 197               	.LBB213:
 198               	.LBB214:
 199               	.LM25:
 200 006c C901      		movw r24,r18
 201               	.LVL12:
 202               	/* #APP */
 203               	 ;  105 "d:/semester 5/wawan/mikrokontroler/avr/lib/gcc/../../avr/include/util/delay_basic.h" 1
 204 006e 0197      		1: sbiw r24,1
 205 0070 01F4      		brne 1b
 206               	 ;  0 "" 2
 207               	/* #NOAPP */
 208               	.LBE214:
 209               	.LBE213:
 210               	.LBE212:
 211               	.LBE211:
 212               	.LM26:
 213 0072 9298      		cbi 50-32,2
 214               	.LBB215:
 215               	.LBB216:
 216               	.LBB217:
 217               	.LBB218:
 218               	.LM27:
 219 0074 C901      		movw r24,r18
 220               	.LVL13:
 221               	/* #APP */
 222               	 ;  105 "d:/semester 5/wawan/mikrokontroler/avr/lib/gcc/../../avr/include/util/delay_basic.h" 1
 223 0076 0197      		1: sbiw r24,1
 224 0078 01F4      		brne 1b
 225               	 ;  0 "" 2
 226               	/* epilogue start */
 227               	/* #NOAPP */
 228               	.LBE218:
 229               	.LBE217:
 230               	.LBE216:
 231               	.LBE215:
 232               	.LM28:
 233 007a 0895      		ret
 234               	.LFE7:
 236               	.global	LCDclr
 238               	LCDclr:
 239               	.LFB9:
 240               	.LM29:
 241               	/* prologue: function */
 242               	/* frame size = 0 */
 243               	.LM30:
 244 007c 81E0      		ldi r24,lo8(1)
 245 007e 00D0      		rcall LCDsendCommand
 246               	/* epilogue start */
 247               	.LM31:
 248 0080 0895      		ret
 249               	.LFE9:
 251               	.global	LCDhome
 253               	LCDhome:
 254               	.LFB10:
 255               	.LM32:
 256               	/* prologue: function */
 257               	/* frame size = 0 */
 258               	.LM33:
 259 0082 82E0      		ldi r24,lo8(2)
 260 0084 00D0      		rcall LCDsendCommand
 261               	/* epilogue start */
 262               	.LM34:
 263 0086 0895      		ret
 264               	.LFE10:
 266               	.global	LCDstring
 268               	LCDstring:
 269               	.LFB11:
 270               	.LM35:
 271               	.LVL14:
 272 0088 0F93      		push r16
 273 008a 1F93      		push r17
 274 008c CF93      		push r28
 275 008e DF93      		push r29
 276               	/* prologue: function */
 277               	/* frame size = 0 */
 278 0090 062F      		mov r16,r22
 279               	.LM36:
 280 0092 0097      		sbiw r24,0
 281 0094 01F0      		breq .L13
 282               	.LVL15:
 283 0096 EC01      		movw r28,r24
 284 0098 10E0      		ldi r17,lo8(0)
 285               	.LVL16:
 286 009a 00C0      		rjmp .L11
 287               	.L12:
 288               	.LM37:
 289 009c 8991      		ld r24,Y+
 290               	.LVL17:
 291 009e 00D0      		rcall LCDsendChar
 292               	.LM38:
 293 00a0 1F5F      		subi r17,lo8(-(1))
 294               	.LVL18:
 295               	.L11:
 296 00a2 1017      		cp r17,r16
 297 00a4 00F0      		brlo .L12
 298               	.L13:
 299               	/* epilogue start */
 300               	.LM39:
 301 00a6 DF91      		pop r29
 302 00a8 CF91      		pop r28
 303 00aa 1F91      		pop r17
 304               	.LVL19:
 305 00ac 0F91      		pop r16
 306               	.LVL20:
 307 00ae 0895      		ret
 308               	.LFE11:
 310               	.global	LCDGotoXY
 312               	LCDGotoXY:
 313               	.LFB12:
 314               	.LM40:
 315               	.LVL21:
 316               	/* prologue: function */
 317               	/* frame size = 0 */
 318               	.LM41:
 319 00b0 6230      		cpi r22,lo8(2)
 320 00b2 01F0      		breq .L17
 321 00b4 6330      		cpi r22,lo8(3)
 322 00b6 01F0      		breq .L18
 323 00b8 6130      		cpi r22,lo8(1)
 324 00ba 01F4      		brne .L19
 325               	.LM42:
 326 00bc 805C      		subi r24,lo8(-(64))
 327               	.LVL22:
 328 00be 00C0      		rjmp .L19
 329               	.LVL23:
 330               	.L17:
 331               	.LM43:
 332 00c0 8C5E      		subi r24,lo8(-(20))
 333               	.LVL24:
 334 00c2 00C0      		rjmp .L19
 335               	.LVL25:
 336               	.L18:
 337               	.LM44:
 338 00c4 8C5A      		subi r24,lo8(-(84))
 339               	.LVL26:
 340               	.L19:
 341               	.LM45:
 342 00c6 8068      		ori r24,lo8(-128)
 343               	.LVL27:
 344 00c8 00D0      		rcall LCDsendCommand
 345               	.LVL28:
 346               	/* epilogue start */
 347               	.LM46:
 348 00ca 0895      		ret
 349               	.LFE12:
 351               	.global	CopyStringtoLCD
 353               	CopyStringtoLCD:
 354               	.LFB13:
 355               	.LM47:
 356               	.LVL29:
 357 00cc 1F93      		push r17
 358 00ce CF93      		push r28
 359 00d0 DF93      		push r29
 360               	/* prologue: function */
 361               	/* frame size = 0 */
 362 00d2 EC01      		movw r28,r24
 363 00d4 862F      		mov r24,r22
 364               	.LVL30:
 365               	.LM48:
 366 00d6 642F      		mov r22,r20
 367               	.LVL31:
 368 00d8 00D0      		rcall LCDGotoXY
 369               	.LVL32:
 370 00da 10E0      		ldi r17,lo8(0)
 371               	.LVL33:
 372 00dc 00C0      		rjmp .L22
 373               	.LVL34:
 374               	.L23:
 375               	.LM49:
 376 00de 00D0      		rcall LCDsendChar
 377               	.LVL35:
 378               	.LM50:
 379 00e0 1F5F      		subi r17,lo8(-(1))
 380               	.L22:
 381               	.LBB219:
 382 00e2 FE01      		movw r30,r28
 383               	.LVL36:
 384 00e4 E10F      		add r30,r17
 385 00e6 F11D      		adc r31,__zero_reg__
 386               	/* #APP */
 387               	 ;  138 "LCD.c" 1
 388 00e8 8491      		lpm r24, Z
 389               		
 390               	 ;  0 "" 2
 391               	.LVL37:
 392               	/* #NOAPP */
 393               	.LBE219:
 394 00ea 8823      		tst r24
 395 00ec 01F4      		brne .L23
 396               	/* epilogue start */
 397               	.LM51:
 398 00ee DF91      		pop r29
 399 00f0 CF91      		pop r28
 400               	.LVL38:
 401 00f2 1F91      		pop r17
 402               	.LVL39:
 403 00f4 0895      		ret
 404               	.LFE13:
 406               	.global	LCDdefinechar
 408               	LCDdefinechar:
 409               	.LFB14:
 410               	.LM52:
 411               	.LVL40:
 412 00f6 EF92      		push r14
 413 00f8 FF92      		push r15
 414 00fa 0F93      		push r16
 415 00fc 1F93      		push r17
 416 00fe CF93      		push r28
 417 0100 DF93      		push r29
 418               	/* prologue: function */
 419               	/* frame size = 0 */
 420 0102 7C01      		movw r14,r24
 421 0104 162F      		mov r17,r22
 422               	.LVL41:
 423               	.LM53:
 424 0106 110F      		lsl r17
 425 0108 110F      		lsl r17
 426 010a 110F      		lsl r17
 427 010c 1064      		ori r17,lo8(64)
 428 010e C0E0      		ldi r28,lo8(0)
 429 0110 D0E0      		ldi r29,hi8(0)
 430               	.LVL42:
 431               	.L26:
 432               	.LBB220:
 433               	.LM54:
 434 0112 F701      		movw r30,r14
 435 0114 EC0F      		add r30,r28
 436 0116 FD1F      		adc r31,r29
 437               	/* #APP */
 438               	 ;  149 "LCD.c" 1
 439 0118 0491      		lpm r16, Z
 440               		
 441               	 ;  0 "" 2
 442               	.LVL43:
 443               	/* #NOAPP */
 444               	.LBE220:
 445               	.LM55:
 446 011a 812F      		mov r24,r17

⌨️ 快捷键说明

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