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

📄 main.lst

📁 avr单片机键盘扫描程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
   1               		.file	"main.c"
   2               		.arch atmega16
   3               	__SREG__ = 0x3f
   4               	__SP_H__ = 0x3e
   5               	__SP_L__ = 0x3d
   6               	__tmp_reg__ = 0
   7               	__zero_reg__ = 1
   8               		.global __do_copy_data
   9               		.global __do_clear_bss
  17               	.Ltext0:
  18               	.global	LCD_write_en
  20               	LCD_write_en:
  21               	.LFB6:
  22               	.LM1:
  23               	/* prologue: frame size=0 */
  24               	/* prologue end (size=0) */
  25               	.LM2:
  26 0000 C79A      		sbi 56-0x20,7
  27               	.LBB66:
  28               	.LBB67:
  29               	.LM3:
  30 0002 83E0      		ldi r24,lo8(3)
  31 0004 90E0      		ldi r25,hi8(3)
  32               	.LVL0:
  33               	/* #APP */
  34 0006 0197      		1: sbiw r24,1
  35 0008 01F4      		brne 1b
  36               	/* #NOAPP */
  37               	.LBE67:
  38               	.LBE66:
  39               	.LM4:
  40 000a C798      		cbi 56-0x20,7
  41               	/* epilogue: frame size=0 */
  42 000c 0895      		ret
  43               	/* epilogue end (size=1) */
  44               	/* function LCD_write_en size 9 (8) */
  45               	.LFE6:
  47               	.global	LCD_waite
  49               	LCD_waite:
  50               	.LFB8:
  51               	.LM5:
  52               	/* prologue: frame size=0 */
  53               	/* prologue end (size=0) */
  54               	.LM6:
  55 000e 8F98      		cbi 49-0x20,7
  56               	.LM7:
  57 0010 C69A      		sbi 56-0x20,6
  58               	.LM8:
  59 0012 C598      		cbi 56-0x20,5
  60               	.LM9:
  61 0014 C79A      		sbi 56-0x20,7
  62               	.L4:
  63               	.LM10:
  64 0016 8799      		sbic 48-0x20,7
  65 0018 00C0      		rjmp .L4
  66               	.LM11:
  67 001a C798      		cbi 56-0x20,7
  68               	.LM12:
  69 001c 81B3      		in r24,49-0x20
  70 001e 806F      		ori r24,lo8(-16)
  71 0020 81BB      		out 49-0x20,r24
  72               	/* epilogue: frame size=0 */
  73 0022 0895      		ret
  74               	/* epilogue end (size=1) */
  75               	/* function LCD_waite size 11 (10) */
  76               	.LFE8:
  78               	.global	LCD_write
  80               	LCD_write:
  81               	.LFB7:
  82               	.LM13:
  83               	/* prologue: frame size=0 */
  84 0024 0F93      		push r16
  85 0026 1F93      		push r17
  86               	/* prologue end (size=2) */
  87               	.LVL1:
  88 0028 182F      		mov r17,r24
  89 002a 062F      		mov r16,r22
  90               	.LM14:
  91 002c 0E94 0000 		call LCD_waite
  92               	.LVL2:
  93               	.LM15:
  94 0030 C698      		cbi 56-0x20,6
  95               	.LM16:
  96 0032 82B3      		in r24,50-0x20
  97 0034 8F70      		andi r24,lo8(15)
  98 0036 82BB      		out 50-0x20,r24
  99               	.LM17:
 100 0038 1123      		tst r17
 101 003a 01F4      		brne .L10
 102               	.LM18:
 103 003c C59A      		sbi 56-0x20,5
 104               	.LM19:
 105 003e 82B3      		in r24,50-0x20
 106 0040 902F      		mov r25,r16
 107 0042 907F      		andi r25,lo8(-16)
 108 0044 892B      		or r24,r25
 109 0046 82BB      		out 50-0x20,r24
 110               	.LM20:
 111 0048 0E94 0000 		call LCD_write_en
 112               	.LM21:
 113 004c 82B3      		in r24,50-0x20
 114 004e 8F70      		andi r24,lo8(15)
 115 0050 82BB      		out 50-0x20,r24
 116               	.LM22:
 117 0052 82B3      		in r24,50-0x20
 118 0054 0295      		swap r16
 119 0056 007F      		andi r16,0xf0
 120 0058 802B      		or r24,r16
 121 005a 00C0      		rjmp .L14
 122               	.L10:
 123               	.LM23:
 124 005c C598      		cbi 56-0x20,5
 125               	.LM24:
 126 005e 82B3      		in r24,50-0x20
 127 0060 912F      		mov r25,r17
 128 0062 907F      		andi r25,lo8(-16)
 129 0064 892B      		or r24,r25
 130 0066 82BB      		out 50-0x20,r24
 131               	.LM25:
 132 0068 0E94 0000 		call LCD_write_en
 133               	.LM26:
 134 006c 82B3      		in r24,50-0x20
 135 006e 8F70      		andi r24,lo8(15)
 136 0070 82BB      		out 50-0x20,r24
 137               	.LM27:
 138 0072 82B3      		in r24,50-0x20
 139 0074 1295      		swap r17
 140 0076 107F      		andi r17,0xf0
 141 0078 812B      		or r24,r17
 142               	.L14:
 143 007a 82BB      		out 50-0x20,r24
 144               	.LM28:
 145 007c 0E94 0000 		call LCD_write_en
 146               	.LM29:
 147 0080 C69A      		sbi 56-0x20,6
 148               	.LM30:
 149 0082 C598      		cbi 56-0x20,5
 150               	/* epilogue: frame size=0 */
 151 0084 1F91      		pop r17
 152 0086 0F91      		pop r16
 153 0088 0895      		ret
 154               	/* epilogue end (size=3) */
 155               	/* function LCD_write size 51 (46) */
 156               	.LFE7:
 158               	.global	LCD_init
 160               	LCD_init:
 161               	.LFB9:
 162               	.LM31:
 163               	/* prologue: frame size=0 */
 164 008a 0F93      		push r16
 165 008c 1F93      		push r17
 166               	/* prologue end (size=2) */
 167               	.LBB68:
 168               	.LBB69:
 169               	.LBB70:
 170               	.LBB71:
 171               	.LM32:
 172 008e 84ED      		ldi r24,lo8(12500)
 173 0090 90E3      		ldi r25,hi8(12500)
 174               	.LVL3:
 175               	/* #APP */
 176 0092 0197      		1: sbiw r24,1
 177 0094 01F4      		brne 1b
 178               	/* #NOAPP */
 179               	.LBE71:
 180               	.LBE70:
 181               	.LBE69:
 182               	.LBE68:
 183               	.LM33:
 184 0096 60E0      		ldi r22,lo8(0)
 185 0098 80E3      		ldi r24,lo8(48)
 186               	.LVL4:
 187 009a 0E94 0000 		call LCD_write
 188               	.LBB72:
 189               	.LBB73:
 190               	.LBB74:
 191               	.LBB75:
 192               	.LM34:
 193 009e 8CED      		ldi r24,lo8(1500)
 194 00a0 95E0      		ldi r25,hi8(1500)
 195               	.LVL5:
 196               	/* #APP */
 197 00a2 0197      		1: sbiw r24,1
 198 00a4 01F4      		brne 1b
 199               	/* #NOAPP */
 200               	.LBE75:
 201               	.LBE74:
 202               	.LBE73:
 203               	.LBE72:
 204               	.LM35:
 205 00a6 60E0      		ldi r22,lo8(0)
 206 00a8 80E3      		ldi r24,lo8(48)
 207               	.LVL6:
 208 00aa 0E94 0000 		call LCD_write
 209               	.LBB76:
 210               	.LBB77:
 211               	.LBB78:
 212               	.LBB79:
 213               	.LM36:
 214 00ae 0AEF      		ldi r16,lo8(250)
 215 00b0 10E0      		ldi r17,hi8(250)
 216 00b2 C801      		movw r24,r16
 217               	.LVL7:
 218               	/* #APP */
 219 00b4 0197      		1: sbiw r24,1
 220 00b6 01F4      		brne 1b
 221               	/* #NOAPP */
 222               	.LBE79:
 223               	.LBE78:
 224               	.LBE77:
 225               	.LBE76:
 226               	.LM37:
 227 00b8 60E0      		ldi r22,lo8(0)
 228 00ba 80E3      		ldi r24,lo8(48)
 229               	.LVL8:
 230 00bc 0E94 0000 		call LCD_write
 231               	.LBB80:
 232               	.LBB81:
 233               	.LBB82:
 234               	.LBB83:
 235               	.LM38:
 236 00c0 C801      		movw r24,r16
 237               	.LVL9:
 238               	/* #APP */
 239 00c2 0197      		1: sbiw r24,1
 240 00c4 01F4      		brne 1b
 241               	/* #NOAPP */
 242               	.LBE83:
 243               	.LBE82:
 244               	.LBE81:
 245               	.LBE80:
 246               	.LM39:
 247 00c6 60E0      		ldi r22,lo8(0)
 248 00c8 82E0      		ldi r24,lo8(2)
 249               	.LVL10:
 250 00ca 0E94 0000 		call LCD_write
 251               	.LBB84:
 252               	.LBB85:
 253               	.LBB86:
 254               	.LBB87:
 255               	.LM40:
 256 00ce C801      		movw r24,r16
 257               	.LVL11:
 258               	/* #APP */
 259 00d0 0197      		1: sbiw r24,1
 260 00d2 01F4      		brne 1b
 261               	/* #NOAPP */
 262               	.LBE87:
 263               	.LBE86:
 264               	.LBE85:
 265               	.LBE84:
 266               	.LM41:
 267 00d4 60E0      		ldi r22,lo8(0)
 268 00d6 88E2      		ldi r24,lo8(40)
 269               	.LVL12:
 270 00d8 0E94 0000 		call LCD_write
 271               	.LBB88:
 272               	.LBB89:
 273               	.LBB90:
 274               	.LBB91:
 275               	.LM42:
 276 00dc C801      		movw r24,r16
 277               	.LVL13:
 278               	/* #APP */
 279 00de 0197      		1: sbiw r24,1
 280 00e0 01F4      		brne 1b
 281               	/* #NOAPP */
 282               	.LBE91:
 283               	.LBE90:
 284               	.LBE89:
 285               	.LBE88:
 286               	.LM43:
 287 00e2 60E0      		ldi r22,lo8(0)
 288 00e4 88E0      		ldi r24,lo8(8)
 289               	.LVL14:
 290 00e6 0E94 0000 		call LCD_write
 291               	.LBB92:
 292               	.LBB93:
 293               	.LBB94:
 294               	.LBB95:
 295               	.LM44:
 296 00ea C801      		movw r24,r16
 297               	.LVL15:
 298               	/* #APP */
 299 00ec 0197      		1: sbiw r24,1
 300 00ee 01F4      		brne 1b
 301               	/* #NOAPP */
 302               	.LBE95:
 303               	.LBE94:
 304               	.LBE93:
 305               	.LBE92:
 306               	.LM45:
 307 00f0 60E0      		ldi r22,lo8(0)
 308 00f2 81E0      		ldi r24,lo8(1)
 309               	.LVL16:
 310 00f4 0E94 0000 		call LCD_write
 311               	.LBB96:
 312               	.LBB97:
 313               	.LBB98:
 314               	.LBB99:
 315               	.LM46:
 316 00f8 C801      		movw r24,r16
 317               	.LVL17:
 318               	/* #APP */
 319 00fa 0197      		1: sbiw r24,1
 320 00fc 01F4      		brne 1b
 321               	/* #NOAPP */
 322               	.LBE99:
 323               	.LBE98:
 324               	.LBE97:
 325               	.LBE96:
 326               	.LM47:
 327 00fe 60E0      		ldi r22,lo8(0)
 328 0100 86E0      		ldi r24,lo8(6)
 329               	.LVL18:
 330 0102 0E94 0000 		call LCD_write
 331               	.LBB100:
 332               	.LBB101:
 333               	.LBB102:
 334               	.LBB103:
 335               	.LM48:
 336 0106 C801      		movw r24,r16
 337               	/* #APP */
 338 0108 0197      		1: sbiw r24,1
 339 010a 01F4      		brne 1b
 340               	/* #NOAPP */
 341               	.LBE103:
 342               	.LBE102:
 343               	.LBE101:
 344               	.LBE100:
 345               	.LM49:
 346 010c 60E0      		ldi r22,lo8(0)
 347 010e 8CE0      		ldi r24,lo8(12)
 348 0110 0E94 0000 		call LCD_write
 349               	.LBB104:
 350               	.LBB105:
 351               	.LBB106:
 352               	.LBB107:
 353               	.LM50:
 354 0114 8CE4      		ldi r24,lo8(7500)
 355 0116 9DE1      		ldi r25,hi8(7500)
 356               	.LVL19:
 357               	/* #APP */
 358 0118 0197      		1: sbiw r24,1
 359 011a 01F4      		brne 1b
 360               	/* #NOAPP */
 361               	.LBE107:
 362               	.LBE106:
 363               	.LBE105:
 364               	.LBE104:
 365               	/* epilogue: frame size=0 */
 366 011c 1F91      		pop r17
 367 011e 0F91      		pop r16
 368 0120 0895      		ret
 369               	/* epilogue end (size=3) */
 370               	/* function LCD_init size 96 (91) */
 371               	.LFE9:
 373               	.global	LCD_set_xy
 375               	LCD_set_xy:
 376               	.LFB10:
 377               	.LM51:
 378               	/* prologue: frame size=0 */
 379               	/* prologue end (size=0) */
 380               	.LVL20:
 381               	.LM52:
 382 0122 6623      		tst r22
 383 0124 01F4      		brne .L18
 384               	.LM53:
 385 0126 8058      		subi r24,lo8(-(-128))
 386               	.LVL21:
 387 0128 00C0      		rjmp .L20
 388               	.LVL22:
 389               	.L18:
 390               	.LM54:
 391 012a 8054      		subi r24,lo8(-(-64))
 392               	.LVL23:
 393               	.L20:
 394               	.LM55:
 395 012c 60E0      		ldi r22,lo8(0)
 396               	.LVL24:
 397 012e 0E94 0000 		call LCD_write

⌨️ 快捷键说明

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