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

📄 f_write.lst

📁 C51.rar
💻 LST
📖 第 1 页 / 共 2 页
字号:
  60   3            break;
  61   3          }
  62   2      
  63   2      /*-------------------------------------
  64   2      Update the address.
  65   2      --------------------------------------*/
  66   2        if (addr >= ADI_EEMEM_SIZE)
  67   2          break;
  68   2        }
  69   1      
  70   1      /*-------------------------------------
  71   1      Write the final page IFF address is not
  72   1      at the start of a new page.
  73   1      --------------------------------------*/
  74   1        if (addr & 0x03)
  75   1          {
  76   2          addr = ADI_EEMEM_SIZE;
  77   2          goto WRITE_EEPROM;
  78   2          }
  79   1      
  80   1      /*-------------------------------------
  81   1      -------------------------------------*/
  82   1      return (i);
  83   1      }
  84          
  85          /*---------------------------------------------------------
  86          ---------------------------------------------------------*/
C51 COMPILER V7.09   F_WRITE                                                               06/18/2004 09:19:33 PAGE 6   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION Com0013 (BEGIN)
0000         L?0020:
0000         L?0021:
0000 AB00        R     MOV     R3,s
0002 AA00        R     MOV     R2,s+01H
0004 A900        R     MOV     R1,s+02H
0006 850082      R     MOV     DPL,i+01H
0009 850083      R     MOV     DPH,i
000C 020000      E     LJMP    ?C?CLDOPTR
             ; FUNCTION Com0013 (END)

             ; FUNCTION _flash_write (BEGIN)
                                           ; SOURCE LINE # 6
0000 8F00        R     MOV     len+03H,R7
0002 8E00        R     MOV     len+02H,R6
0004 8D00        R     MOV     len+01H,R5
0006 8C00        R     MOV     len,R4
;---- Variable 'buffer' assigned to Register 'R1/R2/R3' ----
                                           ; SOURCE LINE # 10
                                           ; SOURCE LINE # 11
0008 8B00        R     MOV     s,R3
000A 8A00        R     MOV     s+01H,R2
000C 8900        R     MOV     s+02H,R1
                                           ; SOURCE LINE # 18
000E E4                CLR     A
000F 7F80              MOV     R7,#080H
0011 7E02              MOV     R6,#02H
0013 FD                MOV     R5,A
0014 FC                MOV     R4,A
0015 AB00        R     MOV     R3,address+03H
0017 AA00        R     MOV     R2,address+02H
0019 A900        R     MOV     R1,address+01H
001B A800        R     MOV     R0,address
001D C3                CLR     C
001E 120000      E     LCALL   ?C?ULCMP
0021 4006              JC      ?C0001
                                           ; SOURCE LINE # 19
0023 E4                CLR     A
0024 FF                MOV     R7,A
0025 FE                MOV     R6,A
0026 FD                MOV     R5,A
0027 FC                MOV     R4,A
0028 22                RET     
0029         ?C0001:
                                           ; SOURCE LINE # 21
0029 850000      R     MOV     addr,address+02H
002C 850000      R     MOV     addr+01H,address+03H
                                           ; SOURCE LINE # 25
002F E4                CLR     A
0030 F500        R     MOV     i,A
0032 F500        R     MOV     i+01H,A
0034         ?C0003:
0034 AE00        R     MOV     R6,i
0036 AF00        R     MOV     R7,i+01H
0038 E4                CLR     A
0039 FC                MOV     R4,A
003A FD                MOV     R5,A
003B AB00        R     MOV     R3,len+03H
003D AA00        R     MOV     R2,len+02H
C51 COMPILER V7.09   F_WRITE                                                               06/18/2004 09:19:33 PAGE 7   

003F A900        R     MOV     R1,len+01H
0041 A800        R     MOV     R0,len
0043 D3                SETB    C
0044 120000      E     LCALL   ?C?ULCMP
0047 4077              JC      ?C0004
                                           ; SOURCE LINE # 26
                                           ; SOURCE LINE # 31
0049 E500        R     MOV     A,i+01H
004B 4500        R     ORL     A,i
004D 6006              JZ      ?C0007
004F E500        R     MOV     A,addr+01H
0051 5403              ANL     A,#03H
0053 7012              JNZ     ?C0006
0055         ?C0007:
                                           ; SOURCE LINE # 32
                                           ; SOURCE LINE # 33
0055 E500        R     MOV     A,addr+01H
0057 AE00        R     MOV     R6,addr
0059 7802              MOV     R0,#02H
005B         ?C0016:
005B CE                XCH     A,R6
005C C3                CLR     C
005D 13                RRC     A
005E CE                XCH     A,R6
005F 13                RRC     A
0060 D8F9              DJNZ    R0,?C0016
0062 F5C6              MOV     EADRL,A
                                           ; SOURCE LINE # 34
0064 75B901            MOV     ECON,#01H
                                           ; SOURCE LINE # 35
0067         ?C0006:
                                           ; SOURCE LINE # 40
0067 0500        R     INC     addr+01H
0069 E500        R     MOV     A,addr+01H
006B 7002              JNZ     ?C0017
006D 0500        R     INC     addr
006F         ?C0017:
006F 14                DEC     A
0070 5403              ANL     A,#03H
0072 14                DEC     A
0073 6011              JZ      ?C0010
0075 14                DEC     A
0076 6015              JZ      ?C0011
0078 14                DEC     A
0079 6019              JZ      ?C0012
007B 2403              ADD     A,#03H
007D 7020              JNZ     ?C0008
                                           ; SOURCE LINE # 41
                                           ; SOURCE LINE # 42
007F         ?C0009:
                                           ; SOURCE LINE # 43
007F 120000      R     LCALL   L?0020
0082 F5BC              MOV     EDATA1,A
                                           ; SOURCE LINE # 44
0084 8019              SJMP    ?C0008
                                           ; SOURCE LINE # 46
0086         ?C0010:
                                           ; SOURCE LINE # 47
0086 120000      R     LCALL   L?0020
0089 F5BD              MOV     EDATA2,A
                                           ; SOURCE LINE # 48
008B 8012              SJMP    ?C0008
C51 COMPILER V7.09   F_WRITE                                                               06/18/2004 09:19:33 PAGE 8   

                                           ; SOURCE LINE # 50
008D         ?C0011:
                                           ; SOURCE LINE # 51
008D 120000      R     LCALL   L?0021
0090 F5BE              MOV     EDATA3,A
                                           ; SOURCE LINE # 52
0092 800B              SJMP    ?C0008
                                           ; SOURCE LINE # 54
0094         ?C0012:
                                           ; SOURCE LINE # 55
0094 120000      R     LCALL   L?0021
0097 F5BF              MOV     EDATA4,A
                                           ; SOURCE LINE # 57
0099         WRITE_EEPROM:
                                           ; SOURCE LINE # 58
0099 75B905            MOV     ECON,#05H
                                           ; SOURCE LINE # 59
009C 75B902            MOV     ECON,#02H
                                           ; SOURCE LINE # 60
                                           ; SOURCE LINE # 61
009F         ?C0008:
                                           ; SOURCE LINE # 66
009F AE00        R     MOV     R6,addr
00A1 AF00        R     MOV     R7,addr+01H
00A3 E4                CLR     A
00A4 FC                MOV     R4,A
00A5 FD                MOV     R5,A
00A6 7B80              MOV     R3,#080H
00A8 7A02              MOV     R2,#02H
00AA F9                MOV     R1,A
00AB F8                MOV     R0,A
00AC D3                SETB    C
00AD 120000      E     LCALL   ?C?ULCMP
00B0 400E              JC      ?C0004
                                           ; SOURCE LINE # 67
                                           ; SOURCE LINE # 68
00B2         ?C0005:
00B2 0500        R     INC     i+01H
00B4 E500        R     MOV     A,i+01H
00B6 6003              JZ      $ + 5H
00B8 020000      R     LJMP    ?C0003
00BB 0500        R     INC     i
00BD         ?C0018:
00BD 020000      R     LJMP    ?C0003
00C0         ?C0004:
                                           ; SOURCE LINE # 74
00C0 E500        R     MOV     A,addr+01H
00C2 5403              ANL     A,#03H
00C4 6008              JZ      ?C0015
                                           ; SOURCE LINE # 75
                                           ; SOURCE LINE # 76
00C6 750002      R     MOV     addr,#02H
00C9 750080      R     MOV     addr+01H,#080H
                                           ; SOURCE LINE # 77
00CC 80CB              SJMP    WRITE_EEPROM
                                           ; SOURCE LINE # 78
00CE         ?C0015:
                                           ; SOURCE LINE # 82
00CE AE00        R     MOV     R6,i
00D0 AF00        R     MOV     R7,i+01H
00D2 E4                CLR     A
00D3 FC                MOV     R4,A
C51 COMPILER V7.09   F_WRITE                                                               06/18/2004 09:19:33 PAGE 9   

00D4 FD                MOV     R5,A
                                           ; SOURCE LINE # 83
00D5         ?C0002:
00D5 22                RET     
             ; FUNCTION _flash_write (END)

C51 COMPILER V7.09   F_WRITE                                                               06/18/2004 09:19:33 PAGE 10  

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


_flash_write . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  buffer . . . . . . . . . . . . . . .  AUTO     DATA   VOID_PTR 0001H  3
  len. . . . . . . . . . . . . . . . .  AUTO     DATA   U_LONG   0003H  4
  address. . . . . . . . . . . . . . .  AUTO     DATA   U_LONG   0007H  4
  s. . . . . . . . . . . . . . . . . .  AUTO     DATA   PTR      000BH  3
  i. . . . . . . . . . . . . . . . . .  AUTO     DATA   U_INT    000EH  2
  addr . . . . . . . . . . . . . . . .  AUTO     DATA   U_INT    0010H  2
  WRITE_EEPROM . . . . . . . . . . . .  LABEL    CODE   LABEL    -----  -----
EDATA1 . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00BCH  1
EDATA2 . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00BDH  1
EDATA3 . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00BEH  1
EDATA4 . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00BFH  1
I2CCON . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00E8H  1
DCON . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00E8H  1
ECON . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B9H  1
EADRL. . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00C6H  1


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    229    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      18
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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