📄 displayandkey.lst
字号:
103:DisplayAndKey.c ****
104:DisplayAndKey.c ****
105:DisplayAndKey.c **** /*============================================================
106:DisplayAndKey.c **** FUNCTION: VFD KEY DATA IN
107:DisplayAndKey.c ****
108:DisplayAndKey.c ****
109:DisplayAndKey.c **** ============================================================*/
110:DisplayAndKey.c **** unsigned char V_Kay_Scan(void)
111:DisplayAndKey.c **** {
280 .LM30:
281 /* prologue: frame size=0 */
282 /* prologue end (size=0) */
112:DisplayAndKey.c ****
113:DisplayAndKey.c **** unsigned char i;
114:DisplayAndKey.c **** unsigned char data;
115:DisplayAndKey.c **** PORTB &= ~(1<<STB);
284 .LM31:
285 0072 C098 cbi 56-0x20,0
116:DisplayAndKey.c ****
117:DisplayAndKey.c **** //send Key value read command
118:DisplayAndKey.c **** V_SPI_SEND(Vfd_Display_DataIn);
287 .LM32:
288 0074 82E4 ldi r24,lo8(66)
289 0076 C4DF rcall V_SPI_SEND
119:DisplayAndKey.c **** data = 0xFF;
291 .LM33:
292 0078 8FEF ldi r24,lo8(-1)
120:DisplayAndKey.c **** //read key value
121:DisplayAndKey.c **** DDRB &= ~(1<<DATA);
294 .LM34:
295 007a B998 cbi 55-0x20,1
122:DisplayAndKey.c **** for(i=0; i<40;i++ )
297 .LM35:
298 007c 20E0 ldi r18,lo8(0)
299 .L30:
123:DisplayAndKey.c **** {
124:DisplayAndKey.c **** PORTB &= ~(1<<SCK);
301 .LM36:
302 007e C298 cbi 56-0x20,2
125:DisplayAndKey.c **** PORTB &= ~(1<<SCK);
304 .LM37:
305 0080 C298 cbi 56-0x20,2
126:DisplayAndKey.c **** PORTB |= (1<<SCK);
307 .LM38:
308 0082 C29A sbi 56-0x20,2
127:DisplayAndKey.c **** PORTB |= (1<<SCK);
310 .LM39:
311 0084 C29A sbi 56-0x20,2
128:DisplayAndKey.c **** if(PINB & (1<<DATA))
313 .LM40:
314 0086 B199 sbic 54-0x20,1
129:DisplayAndKey.c **** {
130:DisplayAndKey.c **** data = i;
316 .LM41:
317 0088 822F mov r24,r18
318 .L28:
320 .LM42:
321 008a 2F5F subi r18,lo8(-(1))
322 008c 2832 cpi r18,lo8(40)
323 008e B8F3 brlo .L30
131:DisplayAndKey.c **** }
132:DisplayAndKey.c **** }
133:DisplayAndKey.c ****
134:DisplayAndKey.c **** DDRB |= (1<<DATA);
325 .LM43:
326 0090 B99A sbi 55-0x20,1
135:DisplayAndKey.c **** PORTB|= (1<<STB);
328 .LM44:
329 0092 C09A sbi 56-0x20,0
136:DisplayAndKey.c **** return data;
137:DisplayAndKey.c **** }
331 .LM45:
332 0094 9927 clr r25
333 /* epilogue: frame size=0 */
334 0096 0895 ret
335 /* epilogue end (size=1) */
336 /* function V_Kay_Scan size 20 (19) */
342 .Lscope2:
345 .global Display
347 Display:
138:DisplayAndKey.c **** /*============================================================
139:DisplayAndKey.c ****
140:DisplayAndKey.c **** ============================================================*/
141:DisplayAndKey.c **** void Display (char *Keydata)
142:DisplayAndKey.c **** {
349 .LM46:
350 /* prologue: frame size=0 */
351 /* prologue end (size=0) */
352 0098 B92F mov r27,r25
353 009a A82F mov r26,r24
354 .LBB2:
143:DisplayAndKey.c **** Display_data[9]=pgm_read_byte(Display_Code+((*(Keydata+0)) -0x30));
356 .LM47:
357 009c 8C91 ld r24,X
358 009e 20E0 ldi r18,lo8(Display_Code-48)
359 00a0 30E0 ldi r19,hi8(Display_Code-48)
360 00a2 F32F mov r31,r19
361 00a4 E22F mov r30,r18
362 00a6 E80F add r30,r24
363 00a8 F11D adc r31,__zero_reg__
364 /* #APP */
365 00aa C895 lpm
366 00ac 802D mov r24, r0
367
368 /* #NOAPP */
369 .LBE2:
370 00ae 8093 0000 sts Display_data+9,r24
371 .LBB3:
144:DisplayAndKey.c **** Display_data[8]=pgm_read_byte(Display_Code+((*(Keydata+1)) -0x30));
373 .LM48:
374 00b2 FB2F mov r31,r27
375 00b4 EA2F mov r30,r26
376 00b6 8181 ldd r24,Z+1
377 00b8 F32F mov r31,r19
378 00ba E22F mov r30,r18
379 00bc E80F add r30,r24
380 00be F11D adc r31,__zero_reg__
381 /* #APP */
382 00c0 C895 lpm
383 00c2 802D mov r24, r0
384
385 /* #NOAPP */
386 .LBE3:
387 00c4 8093 0000 sts Display_data+8,r24
388 .LBB4:
145:DisplayAndKey.c **** Display_data[7]=pgm_read_byte(Display_Code+((*(Keydata+2)) -0x30));
390 .LM49:
391 00c8 FB2F mov r31,r27
392 00ca EA2F mov r30,r26
393 00cc 8281 ldd r24,Z+2
394 00ce F32F mov r31,r19
395 00d0 E22F mov r30,r18
396 00d2 E80F add r30,r24
397 00d4 F11D adc r31,__zero_reg__
398 /* #APP */
399 00d6 C895 lpm
400 00d8 802D mov r24, r0
401
402 /* #NOAPP */
403 .LBE4:
404 00da 8093 0000 sts Display_data+7,r24
405 .LBB5:
146:DisplayAndKey.c **** Display_data[0]=pgm_read_byte(Display_Code+((*(Keydata+3)) -0x30));
407 .LM50:
408 00de FB2F mov r31,r27
409 00e0 EA2F mov r30,r26
410 00e2 8381 ldd r24,Z+3
411 00e4 F32F mov r31,r19
412 00e6 E22F mov r30,r18
413 00e8 E80F add r30,r24
414 00ea F11D adc r31,__zero_reg__
415 /* #APP */
416 00ec C895 lpm
417 00ee 802D mov r24, r0
418
419 /* #NOAPP */
420 .LBE5:
421 00f0 8093 0000 sts Display_data,r24
422 .LBB6:
147:DisplayAndKey.c **** Display_data[1]=pgm_read_byte(Display_Code+((*(Keydata+4)) -0x30));
424 .LM51:
425 00f4 FB2F mov r31,r27
426 00f6 EA2F mov r30,r26
427 00f8 8481 ldd r24,Z+4
428 00fa F32F mov r31,r19
429 00fc E22F mov r30,r18
430 00fe E80F add r30,r24
431 0100 F11D adc r31,__zero_reg__
432 /* #APP */
433 0102 C895 lpm
434 0104 802D mov r24, r0
435
436 /* #NOAPP */
437 .LBE6:
438 0106 8093 0000 sts Display_data+1,r24
439 .LBB7:
148:DisplayAndKey.c **** Display_data[2]=pgm_read_byte(Display_Code+((*(Keydata+5)) -0x30));//AVR Flash
441 .LM52:
442 010a FB2F mov r31,r27
443 010c EA2F mov r30,r26
444 010e 8581 ldd r24,Z+5
445 0110 F32F mov r31,r19
446 0112 E22F mov r30,r18
447 0114 E80F add r30,r24
448 0116 F11D adc r31,__zero_reg__
449 /* #APP */
450 0118 C895 lpm
451 011a 802D mov r24, r0
452
453 /* #NOAPP */
454 .LBE7:
455 011c 8093 0000 sts Display_data+2,r24
456 .LBB8:
149:DisplayAndKey.c **** Display_data[3]=pgm_read_byte(Display_Code+((*(Keydata+6)) -0x30));
458 .LM53:
459 0120 FB2F mov r31,r27
460 0122 EA2F mov r30,r26
461 0124 8681 ldd r24,Z+6
462 0126 F32F mov r31,r19
463 0128 E22F mov r30,r18
464 012a E80F add r30,r24
465 012c F11D adc r31,__zero_reg__
466 /* #APP */
467 012e C895 lpm
468 0130 802D mov r24, r0
469
470 /* #NOAPP */
471 .LBE8:
472 0132 8093 0000 sts Display_data+3,r24
473 .LBB9:
150:DisplayAndKey.c **** Display_data[4]=pgm_read_byte(Display_Code+((*(Keydata+7)) -0x30));
475 .LM54:
476 0136 FB2F mov r31,r27
477 0138 EA2F mov r30,r26
478 013a 8781 ldd r24,Z+7
479 013c F32F mov r31,r19
480 013e E22F mov r30,r18
481 0140 E80F add r30,r24
482 0142 F11D adc r31,__zero_reg__
483 /* #APP */
484 0144 C895 lpm
485 0146 802D mov r24, r0
486
487 /* #NOAPP */
488 .LBE9:
489 0148 8093 0000 sts Display_data+4,r24
490 .LBB10:
151:DisplayAndKey.c **** Display_data[5]=pgm_read_byte(Display_Code+((*(Keydata+8)) -0x30));
492 .LM55:
493 014c FB2F mov r31,r27
494 014e EA2F mov r30,r26
495 0150 8085 ldd r24,Z+8
496 0152 F32F mov r31,r19
497 0154 E22F mov r30,r18
498 0156 E80F add r30,r24
499 0158 F11D adc r31,__zero_reg__
500 /* #APP */
501 015a C895 lpm
502 015c 802D mov r24, r0
503
504 /* #NOAPP */
505 .LBE10:
506 015e 8093 0000 sts Display_data+5,r24
507 /* epilogue: frame size=0 */
508 0162 0895 ret
509 /* epilogue end (size=1) */
510 /* function Display size 138 (137) */
548 .Lscope3:
550 .text
552 Letext:
553 /* File "DisplayAndKey.c": code 215 = 0x00d7 ( 211), prologues 0, epilogues 4 */
DEFINED SYMBOLS
*ABS*:00000000 DisplayAndKey.c
*ABS*:0000003f __SREG__
*ABS*:0000003e __SP_H__
*ABS*:0000003d __SP_L__
*ABS*:00000000 __tmp_reg__
*ABS*:00000001 __zero_reg__
C:\DOCUME~1\WANGZH~1\LOCALS~1\Temp/ccy6aaaa.s:77 .progmem.data:00000000 Display_Code
C:\DOCUME~1\WANGZH~1\LOCALS~1\Temp/ccy6aaaa.s:126 .text:00000000 V_SPI_SEND
C:\DOCUME~1\WANGZH~1\LOCALS~1\Temp/ccy6aaaa.s:173 .text:0000001a V_DISPLAYDATA_SEND
C:\DOCUME~1\WANGZH~1\LOCALS~1\Temp/ccy6aaaa.s:278 .text:00000072 V_Kay_Scan
C:\DOCUME~1\WANGZH~1\LOCALS~1\Temp/ccy6aaaa.s:347 .text:00000098 Display
C:\DOCUME~1\WANGZH~1\LOCALS~1\Temp/ccy6aaaa.s:552 .text:00000164 Letext
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
Display_data
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -