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

📄 key.ls1

📁 通用OSD控制(51单片机控制的TFTLCD源码,MTV018)
💻 LS1
📖 第 1 页 / 共 4 页
字号:
                     526                             ; SOURCE LINE # 116
                     527     ;---- Variable 'c?344' assigned to Register 'R7' ----
0000 E4              528             CLR     A
0001 FF              529             MOV     R7,A
                     530     ; 
                     531     ;       for (i = 0; i < 8; i++) {
                     532                             ; SOURCE LINE # 118
                     533     ;---- Variable 'i?343' assigned to Register 'R6' ----
0002 FE              534             MOV     R6,A
0003                 535     ?C0045:
                     536     ;               c >>= 1;
                     537                             ; SOURCE LINE # 119
0003 EF              538             MOV     A,R7
0004 C3              539             CLR     C
0005 13              540             RRC     A
0006 FF              541             MOV     R7,A
                     542     ;               if (!wait_for_pin(1, DAT_LOW_MIN>>8, DAT_LOW_MAX>>8))
                     543                             ; SOURCE LINE # 120
0007 D200     F      544             SETB    ?wait_for_pin?BIT
0009 750001   F      545             MOV     ?wait_for_pin?BYTE,#01H
000C 750003   F      546             MOV     ?wait_for_pin?BYTE+01H,#03H
000F 120000   F      547             LCALL   wait_for_pin
0012 4003            548             JC      ?C0048
                     549     ;                       return 0x55;
                     550                             ; SOURCE LINE # 121
0014 7F55            551             MOV     R7,#055H
0016 22              552             RET     
0017                 553     ?C0048:
                     554     ;               if (!wait_for_pin(0, DAT_HIGH_MIN>>8, DAT_HIGH_MAX>>8))
                     555                             ; SOURCE LINE # 122
0017 C200     F      556             CLR     ?wait_for_pin?BIT
0019 E4              557             CLR     A
001A F500     F      558             MOV     ?wait_for_pin?BYTE,A
001C 750006   F      559             MOV     ?wait_for_pin?BYTE+01H,#06H
001F 120000   F      560             LCALL   wait_for_pin
0022 4003            561             JC      ?C0050
                     562     ;                       return 0x55;
                     563                             ; SOURCE LINE # 123
0024 7F55            564             MOV     R7,#055H
0026 22              565             RET     
0027                 566     ?C0050:
                     567     ;       
                     568     ;               if (TH1 >= (ONE_HIGH_MIN>>8)) {
                     569                             ; SOURCE LINE # 125
0027 E58D            570             MOV     A,TH1
0029 C3              571             CLR     C
002A 9403            572             SUBB    A,#03H
002C 4005            573             JC      ?C0051
                     574     ;                       c |= 0x80;
                     575                             ; SOURCE LINE # 126
002E 430780          576             ORL     AR7,#080H
                     577     ;               } else if (TH1 > (ZERO_HIGH_MAX>>8)) {
                     578                             ; SOURCE LINE # 127
0031 800A            579             SJMP    ?C0047
0033                 580     ?C0051:
0033 E58D            581             MOV     A,TH1
0035 D3              582             SETB    C
0036 9402            583             SUBB    A,#02H
0038 4003            584             JC      ?C0047
                     585     ;                       return 0x55;
                     586                             ; SOURCE LINE # 128
A51 MACRO ASSEMBLER  KEY                                                                  12/27/2003 22:39:17 PAGE    10

003A 7F55            587             MOV     R7,#055H
003C 22              588             RET     
                     589     ;               }
                     590                             ; SOURCE LINE # 129
                     591     ;       }
                     592                             ; SOURCE LINE # 130
003D                 593     ?C0047:
003D 0E              594             INC     R6
003E BE08C2          595             CJNE    R6,#08H,?C0045
0041                 596     ?C0046:
                     597     ;       return c;
                     598                             ; SOURCE LINE # 131
                     599     ; }
                     600                             ; SOURCE LINE # 132
0041                 601     ?C0049:
0041 22              602             RET     
                     603     ; END OF decode_byte
                     604     
                     605     ; 
                     606     ; extern bit use_timer1;
                     607     ; 
                     608     ; void key_bh(void)
                     609     
----                 610             RSEG  ?PR?key_bh?KEY
0000                 611     key_bh:
                     612             USING   0
                     613                             ; SOURCE LINE # 136
                     614     ; {
                     615                             ; SOURCE LINE # 137
                     616     ;       unsigned char c;
                     617     ; 
                     618     ;       TMOD = 0x11;
                     619                             ; SOURCE LINE # 140
0000 758911          620             MOV     TMOD,#011H
                     621     ;       if (key_on)
                     622                             ; SOURCE LINE # 141
0003 300003   F      623             JNB     key_on,$ + 6H
0006 020000   F      624             LJMP    ?key_bh?out
                     625     ;               goto out;
                     626                             ; SOURCE LINE # 142
0009                 627     ?C0054:
                     628     ; 
                     629     ;       if (!decode_lead()) {
                     630                             ; SOURCE LINE # 144
0009 120000   F      631             LCALL   decode_lead
000C 4002            632             JC      ?C0056
                     633     ;               key_last = KEY_INVALID;
                     634                             ; SOURCE LINE # 145
                     635     ;               goto out;
                     636                             ; SOURCE LINE # 146
000E 8039            637             SJMP    ?C0080
                     638     ;       }
                     639                             ; SOURCE LINE # 147
0010                 640     ?C0056:
                     641     ;       if (TH1 < (REP_HIGH_MAX>>8)) {
                     642                             ; SOURCE LINE # 148
0010 E58D            643             MOV     A,TH1
0012 C3              644             CLR     C
0013 940A            645             SUBB    A,#0AH
0015 500F            646             JNC     ?C0057
                     647     ;               if (key_last != KEY_INVALID && key_last != KEY_POWER)
                     648                             ; SOURCE LINE # 149
0017 E500     F      649             MOV     A,key_last
0019 F4              650             CPL     A
001A 607A            651             JZ      ?key_bh?out
001C E500     F      652             MOV     A,key_last
A51 MACRO ASSEMBLER  KEY                                                                  12/27/2003 22:39:17 PAGE    11

001E 6404            653             XRL     A,#04H
0020 6074            654             JZ      ?key_bh?out
                     655     ;                       key_on = 1;
                     656                             ; SOURCE LINE # 150
0022 D200     F      657             SETB    key_on
                     658     ;               goto out;
                     659                             ; SOURCE LINE # 151
0024 8070            660             SJMP    ?key_bh?out
                     661     ;       }
                     662                             ; SOURCE LINE # 152
0026                 663     ?C0057:
                     664     ; 
                     665     ;       if (decode_byte() != 0) {
                     666                             ; SOURCE LINE # 154
0026 120000   F      667             LCALL   decode_byte
0029 EF              668             MOV     A,R7
002A 6002            669             JZ      ?C0059
                     670     ;               key_last = KEY_INVALID;
                     671                             ; SOURCE LINE # 155
002C                 672     ?C0077:
                     673     ;               goto out;
                     674                             ; SOURCE LINE # 156
002C 801B            675             SJMP    ?C0080
                     676     ;       }
                     677                             ; SOURCE LINE # 157
002E                 678     ?C0059:
                     679     ;       if (decode_byte() != 0xff) {
                     680                             ; SOURCE LINE # 158
002E 120000   F      681             LCALL   decode_byte
0031 EF              682             MOV     A,R7
0032 F4              683             CPL     A
0033 6002            684             JZ      ?C0060
                     685     ;               key_last = KEY_INVALID;
                     686                             ; SOURCE LINE # 159
0035                 687     ?C0078:
                     688     ;               goto out;
                     689                             ; SOURCE LINE # 160
0035 8012            690             SJMP    ?C0080
                     691     ;       }
                     692                             ; SOURCE LINE # 161
0037                 693     ?C0060:
                     694     ;       c = decode_byte();
                     695                             ; SOURCE LINE # 162
0037 120000   F      696             LCALL   decode_byte
                     697     ;---- Variable 'c?445' assigned to Register 'R5' ----
003A AD07            698             MOV     R5,AR7
                     699     ;       if (c == 0x55) {
                     700                             ; SOURCE LINE # 163
003C BD5502          701             CJNE    R5,#055H,?C0061
                     702     ;               key_last = KEY_INVALID;
                     703                             ; SOURCE LINE # 164
003F                 704     ?C0079:
                     705     ;               goto out;
                     706                             ; SOURCE LINE # 165
003F 8008            707             SJMP    ?C0080
                     708     ;       }
                     709                             ; SOURCE LINE # 166
0041                 710     ?C0061:
                     711     ;       if (decode_byte() != ~c) {
                     712                             ; SOURCE LINE # 167
0041 120000   F      713             LCALL   decode_byte
0044 ED              714             MOV     A,R5
0045 F4              715             CPL     A
0046 6F              716             XRL     A,R7
0047 6005            717             JZ      ?C0062
                     718     ;               key_last = KEY_INVALID;
A51 MACRO ASSEMBLER  KEY                                                                  12/27/2003 22:39:17 PAGE    12

                     719                             ; SOURCE LINE # 168
0049                 720     ?C0080:
0049 7500FF   F      721             MOV     key_last,#0FFH
                     722     ;               goto out;
                     723                             ; SOURCE LINE # 169
004C 8048            724             SJMP    ?key_bh?out
                     725     ;       }
                     726                             ; SOURCE LINE # 170
004E                 727     ?C0062:
                     728     ;       
                     729     ;       switch (c) {
                     730                             ; SOURCE LINE # 172
004E ED              731             MOV     A,R5
004F 24F7            732             ADD     A,#0F7H
0051 602A            733             JZ      ?C0067
0053 24FC            734             ADD     A,#0FCH
0055 601C            735             JZ      ?C0065
0057 24FD            736             ADD     A,#0FDH
0059 601D            737             JZ      ?C0066
005B 24FE            738             ADD     A,#0FEH
005D 6032            739             JZ      ?C0071
005F 24FC            740             ADD     A,#0FCH
0061 6024            741             JZ      ?C0069
0063 14              742             DEC     A
0064 6026            743             JZ      ?C0070
0066 24CB            744             ADD     A,#0CBH
0068 6018            745             JZ      ?C0068
006A 242F            746             ADD     A,#02FH
006C 7028            747             JNZ     ?key_bh?out
                     748     ;       case 0x1d:
                     749                             ; SOURCE LINE # 173
006E                 750     ?C0064:
                     751     ;               key_last = KEY_POWER;
                     752                             ; SOURCE LINE # 174
006E 750004   F      753             MOV     key_last,#04H
                     754     ;               break;
                     755                             ; SOURCE LINE # 175
0071 8021            756             SJMP    ?C0063
                     757     ;       case 0x0d:
                     758                             ; SOURCE LINE # 176
0073                 759     ?C0065:
                     760     ;               key_last = KEY_MENU;
                     761                             ; SOURCE LINE # 177
0073 750003   F      762             MOV     key_last,#03H
                     763     ;               break;
                     764                             ; SOURCE LINE # 178
0076 801C            765             SJMP    ?C0063
                     766     ;       case 0x10:
                     767                             ; SOURCE LINE # 179
0078                 768     ?C0066:
                     769     ;               key_last = KEY_INC;
                     770                             ; SOURCE LINE # 180
0078 750001   F      771             MOV     key_last,#01H
                     772     ;               break;
                     773                             ; SOURCE LINE # 181
007B 8017            774             SJMP    ?C0063
                     775     ;       case 0x09:
                     776                             ; SOURCE LINE # 182
007D                 777     ?C0067:
                     778     ;               key_last = KEY_DEC;
                     779                             ; SOURCE LINE # 183
007D 750002   F      780             MOV     key_last,#02H
                     781     ;               break;
                     782                             ; SOURCE LINE # 184
0080 8012            783             SJMP    ?C0063
                     784     ;       case 0x4c:
A51 MACRO ASSEMBLER  KEY                                                                  12/27/2003 22:39:17 PAGE    13

                     785                             ; SOURCE LINE # 185
0082                 786     ?C0068:
                     787     ;               key_last = KEY_BRIINC;
                     788                             ; SOURCE LINE # 186
0082 750008   F      789             MOV     key_last,#08H
                     790     ;               break;
                     791                             ; SOURCE LINE # 187
0085 800D            792             SJMP    ?C0063

⌨️ 快捷键说明

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