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

📄 init_se0111.ls1

📁 单片机程序代码,经过很详细的测试.呵呵,硬件相关.
💻 LS1
📖 第 1 页 / 共 5 页
字号:
001E                 191     ?C0002:
001E 7F00            192             MOV     R7,#00H
0020                 193     ?C0003:
0020 E4              194             CLR     A
0021 D3              195             SETB    C
0022 9500     F      196             SUBB    A,Hchar?041
0024 5004            197             JNC     ?C0004
0026 7E01            198             MOV     R6,#01H
0028 8002            199             SJMP    ?C0005
002A                 200     ?C0004:
002A 7E00            201             MOV     R6,#00H
002C                 202     ?C0005:
002C EE              203             MOV     A,R6
002D 5F              204             ANL     A,R7
002E FF              205             MOV     R7,A
002F EF              206             MOV     A,R7
0030 6008            207             JZ      ?C0001
                     208     ;          Hchar+=0x30;
                     209                             ; SOURCE LINE # 16
0032 7430            210             MOV     A,#030H
0034 2500     F      211             ADD     A,Hchar?041
0036 F500     F      212             MOV     Hchar?041,A
0038 8006            213             SJMP    ?C0006
003A                 214     ?C0001:
                     215     ;      else
                     216     ;            Hchar+=0x37;
                     217                             ; SOURCE LINE # 18
003A 7437            218             MOV     A,#037H
003C 2500     F      219             ADD     A,Hchar?041
003E F500     F      220             MOV     Hchar?041,A
0040                 221     ?C0006:
                     222     ;     putchar('\n');putchar(Hchar);
                     223                             ; SOURCE LINE # 19
0040 7F0A            224             MOV     R7,#0AH
0042 120000   F      225             LCALL   _putchar
0045 AF00     F      226             MOV     R7,Hchar?041
0047 120000   F      227             LCALL   _putchar
                     228     ; 
                     229     ;      if((0<=Lchar)&(Lchar<=9))
                     230                             ; SOURCE LINE # 21
004A E500     F      231             MOV     A,Lchar?042
004C D3              232             SETB    C
004D 9409            233             SUBB    A,#09H
004F 5004            234             JNC     ?C0008
0051 7F01            235             MOV     R7,#01H
0053 8002            236             SJMP    ?C0009
0055                 237     ?C0008:
0055 7F00            238             MOV     R7,#00H
0057                 239     ?C0009:
0057 E4              240             CLR     A
0058 D3              241             SETB    C
0059 9500     F      242             SUBB    A,Lchar?042
005B 5004            243             JNC     ?C0010
005D 7E01            244             MOV     R6,#01H
005F 8002            245             SJMP    ?C0011
0061                 246     ?C0010:
0061 7E00            247             MOV     R6,#00H
0063                 248     ?C0011:
0063 EE              249             MOV     A,R6
0064 5F              250             ANL     A,R7
0065 FF              251             MOV     R7,A
0066 EF              252             MOV     A,R7
0067 6008            253             JZ      ?C0007
                     254     ;          Lchar+=0x30;
                     255                             ; SOURCE LINE # 22
A51 MACRO ASSEMBLER  INIT_SE0111                                                          01/27/2003 20:49:45 PAGE     5

0069 7430            256             MOV     A,#030H
006B 2500     F      257             ADD     A,Lchar?042
006D F500     F      258             MOV     Lchar?042,A
006F 8006            259             SJMP    ?C0012
0071                 260     ?C0007:
                     261     ;      else
                     262     ;            Lchar+=0x37;
                     263                             ; SOURCE LINE # 24
0071 7437            264             MOV     A,#037H
0073 2500     F      265             ADD     A,Lchar?042
0075 F500     F      266             MOV     Lchar?042,A
0077                 267     ?C0012:
                     268     ;      putchar(Lchar);
                     269                             ; SOURCE LINE # 25
0077 AF00     F      270             MOV     R7,Lchar?042
0079 120000   F      271             LCALL   _putchar
                     272     ; }
                     273                             ; SOURCE LINE # 26
007C                 274     ?C0013:
007C 22              275             RET     
                     276     ; END OF _hextochar
                     277     
                     278     ; 
                     279     ; void se0111_reg_wr(unsigned char Haddr,unsigned char Laddr,unsigned char value,unsigned c
                             har slot){
                     280     
----                 281             RSEG  ?PR?_se0111_reg_wr?INIT_SE0111
0000                 282     _se0111_reg_wr:
                     283             USING   0
                     284                             ; SOURCE LINE # 28
0000 8F00     F      285             MOV     Haddr?143,R7
0002 8D00     F      286             MOV     Laddr?144,R5
0004 8B00     F      287             MOV     value?145,R3
                     288     ;       switch(slot){
                     289                             ; SOURCE LINE # 29
0006 E500     F      290             MOV     A,slot?146
0008 120000   F      291             LCALL   ?C?CCASE
000B 0000     F      292             DW      ?C0015
000D 01              293             DB      01H
000E 0000     F      294             DW      ?C0016
0010 02              295             DB      02H
0011 0000     F      296             DW      ?C0017
0013 03              297             DB      03H
0014 0000            298             DW      00H
0016 0000     F      299             DW      ?C0014
                     300     ;               case 1  :
                     301                             ; SOURCE LINE # 30
0018                 302     ?C0015:
                     303     ;                               P1 = 0x40; break;
                     304                             ; SOURCE LINE # 31
0018 759040          305             MOV     P1,#040H
001B 8008            306             SJMP    ?C0014
                     307     ;               case 2  :
                     308                             ; SOURCE LINE # 32
001D                 309     ?C0016:
                     310     ;                               P1 = 0x20; break;
                     311                             ; SOURCE LINE # 33
001D 759020          312             MOV     P1,#020H
0020 8003            313             SJMP    ?C0014
                     314     ;               case 3  :
                     315                             ; SOURCE LINE # 34
0022                 316     ?C0017:
                     317     ;                               P1 = 0x60; break;
                     318                             ; SOURCE LINE # 35
0022 759060          319             MOV     P1,#060H
                     320     ;       }
A51 MACRO ASSEMBLER  INIT_SE0111                                                          01/27/2003 20:49:45 PAGE     6

                     321                             ; SOURCE LINE # 36
0025                 322     ?C0014:
                     323     ; //    while(1){
                     324     ;       ADDRH = Haddr | 0x80;
                     325                             ; SOURCE LINE # 38
0025 E500     F      326             MOV     A,Haddr?143
0027 4480            327             ORL     A,#080H
0029 FF              328             MOV     R7,A
002A 90A400          329             MOV     DPTR,#0A400H
002D EF              330             MOV     A,R7
002E F0              331             MOVX    @DPTR,A
                     332     ;       ADDRL = Laddr;
                     333                             ; SOURCE LINE # 39
002F 90A000          334             MOV     DPTR,#0A000H
0032 E500     F      335             MOV     A,Laddr?144
0034 F0              336             MOVX    @DPTR,A
                     337     ;       SE0111_reg = value;
                     338                             ; SOURCE LINE # 40
0035 909C00          339             MOV     DPTR,#09C00H
0038 E500     F      340             MOV     A,value?145
003A F0              341             MOVX    @DPTR,A
                     342     ; //    }
                     343     ;       
                     344     ;       ADDRH = 0xFF;
                     345                             ; SOURCE LINE # 43
003B 90A400          346             MOV     DPTR,#0A400H
003E 74FF            347             MOV     A,#0FFH
0040 F0              348             MOVX    @DPTR,A
                     349     ;       ADDRL = 0xFF;
                     350                             ; SOURCE LINE # 44
0041 90A000          351             MOV     DPTR,#0A000H
0044 74FF            352             MOV     A,#0FFH
0046 F0              353             MOVX    @DPTR,A
                     354     ;       P1 = 0;
                     355                             ; SOURCE LINE # 45
0047 759000          356             MOV     P1,#00H
                     357     ; }
                     358                             ; SOURCE LINE # 46
004A                 359     ?C0018:
004A 22              360             RET     
                     361     ; END OF _se0111_reg_wr
                     362     
                     363     ; 
                     364     ; 
                     365     ; unsigned char se0111_reg_rd(unsigned char Haddr,unsigned char Laddr,unsigned char slot){
                     366     
----                 367             RSEG  ?PR?_se0111_reg_rd?INIT_SE0111
0000                 368     _se0111_reg_rd:
                     369             USING   0
                     370                             ; SOURCE LINE # 49
0000 8F00     F      371             MOV     Haddr?247,R7
0002 8D00     F      372             MOV     Laddr?248,R5
0004 8B00     F      373             MOV     slot?249,R3
                     374     ;       unsigned char value;
                     375     ;       switch(slot){
                     376                             ; SOURCE LINE # 51
0006 E500     F      377             MOV     A,slot?249
0008 120000   F      378             LCALL   ?C?CCASE
000B 0000     F      379             DW      ?C0020
000D 01              380             DB      01H
000E 0000     F      381             DW      ?C0021
0010 02              382             DB      02H
0011 0000     F      383             DW      ?C0022
0013 03              384             DB      03H
0014 0000            385             DW      00H
0016 0000     F      386             DW      ?C0019
A51 MACRO ASSEMBLER  INIT_SE0111                                                          01/27/2003 20:49:45 PAGE     7

                     387     ;               case 1  :
                     388                             ; SOURCE LINE # 52
0018                 389     ?C0020:

⌨️ 快捷键说明

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