📄 main.ls1
字号:
432 ;
433 ; #define ARRAY_SIZE(a) (sizeof(a)/sizeof(a[0]))
434 ;
435 ; bit PIN_SIGIND = 0;
436 ;
437 ;
438
---- 439 RSEG ?PR?MAIN
0000 440 Com00A5:
0000 441 L?0166:
442 USING 0
0000 7402 443 MOV A,#02H
0002 93 444 MOVC A,@A+DPTR
0003 FF 445 MOV R7,A
0004 7405 446 MOV A,#05H
A51 MACRO ASSEMBLER MAIN 01/02/2006 01:37:04 PAGE 8
0006 93 447 MOVC A,@A+DPTR
0007 FC 448 MOV R4,A
0008 7406 449 MOV A,#06H
000A 450 L?0167:
000A 93 451 MOVC A,@A+DPTR
000B FD 452 MOV R5,A
000C F582 453 MOV DPL,A
000E 8C83 454 MOV DPH,R4
0010 020000 F 455 LJMP ?C?ICALL2
0013 456 L?0168:
457 USING 0
0013 458 L?0169:
0013 740B 459 MOV A,#0BH
0015 93 460 MOVC A,@A+DPTR
0016 FE 461 MOV R6,A
0017 740C 462 MOV A,#0CH
0019 93 463 MOVC A,@A+DPTR
001A F582 464 MOV DPL,A
001C 8E83 465 MOV DPH,R6
001E 22 466 RET
001F 467 L?0170:
468 USING 0
001F E500 F 469 MOV A,id?35131
0021 14 470 DEC A
0022 FF 471 MOV R7,A
0023 472 L?0171:
0023 850082 F 473 MOV DPL,item?35130+01H
0026 850083 F 474 MOV DPH,item?35130
0029 22 475 RET
002A 476 L?0174:
477 USING 0
002A 8500F0 F 478 MOV B,step?869
002D A4 479 MUL AB
002E 13 480 RRC A
002F 13 481 RRC A
0030 543F 482 ANL A,#03FH
0032 FF 483 MOV R7,A
0033 E500 F 484 MOV A,i?871
0035 C3 485 CLR C
0036 9F 486 SUBB A,R7
0037 22 487 RET
0038 488 L?0175:
489 USING 0
0038 490 L?0176:
0038 850082 F 491 MOV DPL,item?25102+01H
003B 850083 F 492 MOV DPH,item?25102
003E 22 493 RET
003F 494 L?0177:
495 USING 0
003F 496 L?0178:
003F E4 497 CLR A
0040 93 498 MOVC A,@A+DPTR
0041 FA 499 MOV R2,A
0042 7401 500 MOV A,#01H
0044 93 501 MOVC A,@A+DPTR
0045 FB 502 MOV R3,A
0046 22 503 RET
0047 504 L?0179:
505 USING 0
0047 75F00D 506 MOV B,#0DH
004A A4 507 MUL AB
004B 2400 F 508 ADD A,#LOW (items)
004D F582 509 MOV DPL,A
004F E4 510 CLR A
0050 3400 F 511 ADDC A,#HIGH (items)
0052 22 512 RET
A51 MACRO ASSEMBLER MAIN 01/02/2006 01:37:04 PAGE 9
0053 513 L?0180:
514 USING 0
0053 93 515 MOVC A,@A+DPTR
0054 F582 516 MOV DPL,A
0056 8E83 517 MOV DPH,R6
0058 AF00 F 518 MOV R7,val?35132
005A 020000 F 519 LJMP ?C?ICALL2
005D 520 L?0181:
521 USING 0
005D 522 L?0182:
005D 850082 F 523 MOV DPL,item?32128+01H
0060 850083 F 524 MOV DPH,item?32128
0063 22 525 RET
526 ; END OF Com00A5
527
528 ; static void initial(void)
529
---- 530 RSEG ?PR?initial?MAIN
0000 531 initial:
532 USING 0
533 ; SOURCE LINE # 28
534 ; {
535 ; SOURCE LINE # 29
536 ; /* disable all interrupts */
537 ; IE = 0;
538 ; SOURCE LINE # 31
0000 E4 539 CLR A
0001 F5A8 540 MOV IE,A
541 ; IP = 0;
542 ; SOURCE LINE # 32
0003 F5B8 543 MOV IP,A
544 ;
545 ; /* deactivate output ports */
546 ; P0=P1=P2=P3 = 0xff;
547 ; SOURCE LINE # 35
0005 75B0FF 548 MOV P3,#0FFH
0008 75A0FF 549 MOV P2,#0FFH
000B 7590FF 550 MOV P1,#0FFH
000E 7580FF 551 MOV P0,#0FFH
552 ;
553 ; /* timer 0 16 bits, timer 1 16 bits */
554 ; TMOD = 0x51;
555 ; SOURCE LINE # 38
0011 758951 556 MOV TMOD,#051H
557 ; PCON = 0x80;
558 ; SOURCE LINE # 39
0014 758780 559 MOV PCON,#080H
560 ;
561 ; timer_init();
562 ; SOURCE LINE # 41
0017 120000 F 563 LCALL timer_init
564 ; i2c_init();
565 ; SOURCE LINE # 42
001A 120000 F 566 LCALL i2c_init
567 ; at24c02_init();
568 ; SOURCE LINE # 43
001D 120000 F 569 LCALL at24c02_init
570 ; mtv130_init();
571 ; SOURCE LINE # 44
0020 120000 F 572 LCALL mtv130_init
573 ; key_init();
574 ; SOURCE LINE # 45
0023 120000 F 575 LCALL key_init
576 ;
577 ; EA = 1;
578 ; SOURCE LINE # 47
A51 MACRO ASSEMBLER MAIN 01/02/2006 01:37:04 PAGE 10
0026 D2AF 579 SETB EA
580 ; }
581 ; SOURCE LINE # 48
0028 22 582 RET
583 ; END OF initial
584
585 ;
586 ; struct progbar_struct {
587 ; // unsigned char row, col;
588 ; unsigned char val;
589 ; unsigned char range, pos, step;
590 ; };
591 ; void delay500ms();
592 ; unsigned char bri_read(unsigned char addr);//读亮度值
593 ; unsigned char cont_read(unsigned char addr);//读对比度值
594 ; unsigned char col_read(unsigned char addr);//读彩色值
595 ; unsigned char tint_read(unsigned char addr);
596 ; unsigned char reset_read(unsigned char addr);
597 ; unsigned char simple_read(unsigned char addr);
598 ; unsigned char bri_step(unsigned char val, unsigned char inc);
599 ; unsigned char cont_step(unsigned char val, unsigned char inc);
600 ; unsigned char col_step(unsigned char val, unsigned char inc);
601 ; unsigned char tint_step(unsigned char val, unsigned char inc);
602 ; unsigned char reset_step(unsigned char val, unsigned char inc);
603 ; unsigned char bival_step(unsigned char val, unsigned char inc);
604 ; void bri_apply(unsigned char val);
605 ; void cont_apply(unsigned char val);
606 ; void col_apply(unsigned char val);
607 ; void tint_apply(unsigned char val);
608 ; void reset_apply(unsigned char val);
609 ; void bri_draw(char row, char col, unsigned char val);
610 ; void cont_draw(char row, char col, unsigned char val);
611 ; void col_draw(char row, char col, unsigned char val);
612 ; void tint_draw(char row, char col, unsigned char val);
613 ; void reset_draw(char row, char col, unsigned char val);
614 ;
615 ; #define ABS(x) ((x) > 0 ? (x) : -(x))
616 ;
617 ; //#define DIMM_ADDR 9
618 ;
619 ;
620 ; #define BRI_ADDR 9//亮度控制的存储地址。
621 ; #define BRI_OFF 66//亮度的最大值
622 ; #define BRI_RANGE 92//亮度值的范围。
623 ; #define BRI_FAC 1//亮度的间隙值。
624 ; #define BRI_DEF 112//亮度的默认值。
625 ;
626 ; #define CONT_ADDR 10//对比度控制的存储地址。
627 ; #define CONT_OFF 66
628 ; #define CONT_RANGE 92
629 ; #define CONT_FAC 1
630 ; #define CONT_DEF 112
631 ;
632 ; #define COL_ADDR 12//彩色控制的存储地址。
633 ; #define COL_OFF 109
634 ; #define COL_RANGE 92
635 ; #define COL_FAC 1
636 ; #define COL_DEF 155
637 ;
638 ; #define TINT_ADDR 13//色调控制的地址。
639 ; #define TINT_OFF 119
640 ; #define TINT_RANGE 92
641 ; #define TINT_FAC 1
642 ; #define TINT_DEF 165
643 ;
644 ;
A51 MACRO ASSEMBLER MAIN 01/02/2006 01:37:04 PAGE 11
645 ; struct menuitem_struct {//菜单结构体
646 ; unsigned char code *title;//菜单标号
647 ; unsigned char addr;//对应的菜单存储地址。
648 ; unsigned char flags;//对应的选中的菜单项颜色标志。
649 ; #define MIF_DOCA 0x01
650 ; #define MIF_RESET 0x02
651 ; unsigned char defval;//对应菜单值的默认值。
652 ; unsigned char (code *read)(unsigned char addr);//指向相应菜单函实娜肟诘刂贰
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -