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

📄 program.m51

📁 基于EEPROM AT24C64的数据存储
💻 M51
📖 第 1 页 / 共 4 页
字号:
BL51 BANKED LINKER/LOCATER V5.03                                                        10/29/2006  14:34:15  PAGE 1


BL51 BANKED LINKER/LOCATER V5.03, INVOKED BY:
C:\KEIL\C51\BIN\BL51.EXE main.obj, function.obj, ISR_I2C.obj, Drv_At24c64.obj, STARTUP.obj TO program RAMSIZE (256) CODE
>>  (0X0000-0XFFFF) XDATA (0X0000-0X7FFE)




PROGRAM RECURSIONS REMOVED FROM CALL TREE
=========================================
+--> ?PR?_I2CTXSENDBIT?ISR_I2C
<--+ ?PR?_I2CTXSETSCL?ISR_I2C


+--> ?PR?_I2CTXSENDSTARTSDA?ISR_I2C
|  | ?PR?_I2CTXSENDSTARTSCL?ISR_I2C
|  | ?PR?_I2CTXSENDBIT?ISR_I2C
|  | ?PR?_I2CTXPREPAREACK?ISR_I2C
|  | ?PR?_I2CTXWAITACK?ISR_I2C
<--+ ?PR?_I2CDEVICEREAD?ISR_I2C


+--> ?PR?_I2CRXRECEIVEBYTE?ISR_I2C
|  | ?PR?_I2CRXRECEIVEBIT?ISR_I2C
|  | ?PR?_I2CRXCLEARSCL?ISR_I2C
|  | ?PR?_I2CRXPREPAREACK?ISR_I2C
<--+ ?PR?_I2CRXDOACK?ISR_I2C


+--> ?PR?_I2CRXRECEIVEBIT?ISR_I2C
<--+ ?PR?_I2CRXCLEARSCL?ISR_I2C


+--> ?PR?_I2CTXSENDBIT?ISR_I2C
|  | ?PR?_I2CTXPREPAREACK?ISR_I2C
|  | ?PR?_I2CTXWAITACK?ISR_I2C
<--+ ?PR?_I2CTXSENDBYTE?ISR_I2C



MEMORY MODEL: LARGE


INPUT MODULES INCLUDED:
  main.obj (MAIN)
  function.obj (FUNCTION)
  ISR_I2C.obj (ISR_I2C)
  Drv_At24c64.obj (DRV_AT24C64)
  STARTUP.obj (?C_STARTUP)
  C:\KEIL\C51\LIB\C51L.LIB (?C_INIT)
  C:\KEIL\C51\LIB\C51L.LIB (?C?CLDPTR)
  C:\KEIL\C51\LIB\C51L.LIB (?C?CLDOPTR)
  C:\KEIL\C51\LIB\C51L.LIB (?C?CILDOPTR)
  C:\KEIL\C51\LIB\C51L.LIB (?C?CSTPTR)
  C:\KEIL\C51\LIB\C51L.LIB (?C?CSTOPTR)
  C:\KEIL\C51\LIB\C51L.LIB (?C?UIDIV)
  C:\KEIL\C51\LIB\C51L.LIB (?C?IILDX)
  C:\KEIL\C51\LIB\C51L.LIB (?C?ILDOPTR)
  C:\KEIL\C51\LIB\C51L.LIB (?C?IILDOPTR)
BL51 BANKED LINKER/LOCATER V5.03                                                      10/29/2006  14:34:15  PAGE 2


  C:\KEIL\C51\LIB\C51L.LIB (?C?ISTOPTR)
  C:\KEIL\C51\LIB\C51L.LIB (?C?PLDOPTR)
  C:\KEIL\C51\LIB\C51L.LIB (?C?PLDIOPTR)
  C:\KEIL\C51\LIB\C51L.LIB (?C?PSTOPTR)
  C:\KEIL\C51\LIB\C51L.LIB (?C?ICALL)
  C:\KEIL\C51\LIB\C51L.LIB (?C?PLDIDATA)
  C:\KEIL\C51\LIB\C51L.LIB (?C?PLDIIDATA)
  C:\KEIL\C51\LIB\C51L.LIB (?C?PSTIDATA)
  C:\KEIL\C51\LIB\C51L.LIB (?C?PLDXDATA)
  C:\KEIL\C51\LIB\C51L.LIB (?C?PLDIXDATA)
  C:\KEIL\C51\LIB\C51L.LIB (?C?PSTXDATA)
  C:\KEIL\C51\LIB\C51L.LIB (?C?PLDPDATA)
  C:\KEIL\C51\LIB\C51L.LIB (?C?PLDIPDATA)
  C:\KEIL\C51\LIB\C51L.LIB (?C?PSTPDATA)
  C:\KEIL\C51\LIB\C51L.LIB (?C?PLDCODE)


LINK MAP OF MODULE:  program (MAIN)


            TYPE    BASE      LENGTH    RELOCATION   SEGMENT NAME
            -----------------------------------------------------

            * * * * * * *   D A T A   M E M O R Y   * * * * * * *
            REG     0000H     0008H     ABSOLUTE     "REG BANK 0"
            IDATA   0008H     0002H     UNIT         ?ID?ISR_I2C
            IDATA   000AH     0001H     UNIT         ?STACK

            * * * * * * *  X D A T A   M E M O R Y  * * * * * * *
            XDATA   0000H     0438H     UNIT         _XDATA_GROUP_
            XDATA   0438H     003EH     UNIT         ?XD?MAIN
            XDATA   0476H     001EH     UNIT         ?XD?ISR_I2C
            XDATA   0494H     0007H     UNIT         ?XD?_AT24C64_WRITEAGAIN?DRV_AT24C64
            XDATA   049BH     0004H     UNIT         ?XD?DRV_AT24C64
            XDATA   049FH     0003H     UNIT         ?XD?INIT_EEPROM?FUNCTION
            XDATA   04A2H     0003H     UNIT         ?XD?_I2CDEVICEWRITE?ISR_I2C
            XDATA   04A5H     0003H     UNIT         ?XD?_I2CTXSENDSTOPSCL?ISR_I2C
            XDATA   04A8H     0003H     UNIT         ?XD?_I2CTXCLEARSCL?ISR_I2C
            XDATA   04ABH     0003H     UNIT         ?XD?_I2CRXSETSCL?ISR_I2C
            XDATA   04AEH     0003H     UNIT         ?XD?_AT24C64_FINISH?DRV_AT24C64
            XDATA   04B1H     0003H     UNIT         ?XD?_NO_HANDLER_TC?DRV_AT24C64

            * * * * * * *   C O D E   M E M O R Y   * * * * * * *
            CODE    0000H     0003H     ABSOLUTE     
            CODE    0003H     0007H     UNIT         ?PR?_DELAY_MACNINE_NCIRCLE?FUNCTION
                    000AH     0001H                  *** GAP ***
            CODE    000BH     0003H     ABSOLUTE     
            CODE    000EH     001AH     UNIT         ?PR?_DELAY_10US?FUNCTION
            CODE    0028H     0003H     UNIT         ?PR?STOP_I2C_TIMER?ISR_I2C
            CODE    002BH     0003H     ABSOLUTE     
            CODE    002EH     0304H     UNIT         ?C?LIB_CODE
            CODE    0332H     013AH     UNIT         ?PR?_I2CTXSENDBYTE?ISR_I2C
            CODE    046CH     0123H     UNIT         ?PR?_I2CRXRECEIVEBIT?ISR_I2C
            CODE    058FH     00ECH     UNIT         ?PR?_EEPROM_WRITE?FUNCTION
            CODE    067BH     00E2H     UNIT         ?PR?MAIN?MAIN
            CODE    075DH     00C2H     UNIT         ?PR?_EEPROM_READ?FUNCTION
            CODE    081FH     00ACH     UNIT         ?PR?_I2CREAD?ISR_I2C
BL51 BANKED LINKER/LOCATER V5.03                                                      10/29/2006  14:34:15  PAGE 3


            CODE    08CBH     00ABH     UNIT         ?PR?_I2CWRITE?ISR_I2C
            CODE    0976H     00A7H     UNIT         ?PR?_AT24C64_WRITE?DRV_AT24C64
            CODE    0A1DH     009BH     UNIT         ?PR?_AT24C64_WRITEAGAIN?DRV_AT24C64
            CODE    0AB8H     008DH     UNIT         ?PR?TIME2?MAIN
            CODE    0B45H     008CH     UNIT         ?PR?_I2CTXWAITACK?ISR_I2C
            CODE    0BD1H     008CH     UNIT         ?C_C51STARTUP
            CODE    0C5DH     0080H     UNIT         ?PR?_I2CRXRECEIVEBYTE?ISR_I2C
            CODE    0CDDH     006DH     UNIT         ?PR?_I2CTXSENDBIT?ISR_I2C
            CODE    0D4AH     0062H     UNIT         ?PR?TIMER_I2C?ISR_I2C
            CODE    0DACH     0056H     UNIT         ?PR?_AT24C64_FINISH?DRV_AT24C64
            CODE    0E02H     0053H     UNIT         ?PR?_I2CDEVICEREAD?ISR_I2C
            CODE    0E55H     0052H     UNIT         ?PR?_AT24C64_WRITE_BYTE?FUNCTION
            CODE    0EA7H     0051H     UNIT         ?PR?_I2CDEVICEWRITE?ISR_I2C
            CODE    0EF8H     0051H     UNIT         ?PR?_I2CRXCLEARSCL?ISR_I2C
            CODE    0F49H     004CH     UNIT         ?PR?AT24C64_WAIT_ACK?FUNCTION
            CODE    0F95H     004CH     UNIT         ?PR?_AT24C64_WBYTES?FUNCTION
            CODE    0FE1H     0049H     UNIT         ?PR?AT24C64_READ_BYTE?FUNCTION
            CODE    102AH     0049H     UNIT         ?PR?_AT24C64_RBYTES?FUNCTION
            CODE    1073H     003BH     UNIT         ?PR?_SET_TIMER?MAIN
            CODE    10AEH     003AH     UNIT         ?PR?INIT_EEPROM?FUNCTION
            CODE    10E8H     003AH     UNIT         ?PR?_I2CTXSENDSTOPSDA?ISR_I2C
            CODE    1122H     003AH     UNIT         ?PR?_I2CRXPREPAREACK?ISR_I2C
            CODE    115CH     0036H     UNIT         ?PR?_I2C_LINEOPEN?ISR_I2C
            CODE    1192H     0033H     UNIT         ?PR?_I2CTXCLEARSCL?ISR_I2C
            CODE    11C5H     0031H     UNIT         ?PR?AT24C64_START?FUNCTION
            CODE    11F6H     0031H     UNIT         ?PR?AT24C64_STOP?FUNCTION
            CODE    1227H     002FH     UNIT         ?PR?AT24C64_SEND_ACK?FUNCTION
            CODE    1256H     002FH     UNIT         ?PR?AT24C64_SEND_NOTACK?FUNCTION
            CODE    1285H     002EH     UNIT         ?PR?_I2CERROR?DRV_AT24C64
            CODE    12B3H     002DH     UNIT         ?PR?_I2CTXPREPARESTOP?ISR_I2C
            CODE    12E0H     002BH     UNIT         ?PR?_I2CTXSENDSTARTSDA?ISR_I2C
            CODE    130BH     002BH     UNIT         ?PR?_I2CTXSENDSTARTSCL?ISR_I2C
            CODE    1336H     002BH     UNIT         ?PR?_I2CTXSENDSTOPSCL?ISR_I2C
            CODE    1361H     002BH     UNIT         ?PR?_I2CTXPREPAREACK?ISR_I2C
            CODE    138CH     002BH     UNIT         ?PR?_I2CRXDOACK?ISR_I2C
            CODE    13B7H     002BH     UNIT         ?PR?_I2CTXSETSCL?ISR_I2C
            CODE    13E2H     002BH     UNIT         ?PR?_I2CRXSETSCL?ISR_I2C
            CODE    140DH     0029H     UNIT         ?PR?_AT24C64_READ?DRV_AT24C64
            CODE    1436H     0026H     UNIT         ?PR?AT24C64_INIT?DRV_AT24C64
            CODE    145CH     0023H     UNIT         ?PR?_RESET_TIMER?MAIN
            CODE    147FH     0017H     UNIT         ?PR?_INIT_I2C_TIMER?ISR_I2C
            CODE    1496H     0014H     UNIT         ?PR?_START_I2C_TIMER?ISR_I2C
            CODE    14AAH     0014H     UNIT         ?C_INITSEG
            CODE    14BEH     0012H     UNIT         ?PR?START_TIMER?MAIN
            CODE    14D0H     000CH     UNIT         ?PR?_NO_HANDLER_TC?DRV_AT24C64
            CODE    14DCH     0006H     UNIT         ?PR?SDA_VAL?ISR_I2C



OVERLAY MAP OF MODULE:   program (MAIN)


SEGMENT                                       XDATA_GROUP
  +--> CALLED SEGMENT                       START    LENGTH
-----------------------------------------------------------
?C_C51STARTUP                               -----    -----
  +--> ?PR?MAIN?MAIN
BL51 BANKED LINKER/LOCATER V5.03                                                      10/29/2006  14:34:15  PAGE 4


  +--> ?C_INITSEG

?PR?MAIN?MAIN                               0000H    0406H
  +--> ?PR?START_TIMER?MAIN
  +--> ?PR?_SET_TIMER?MAIN
  +--> ?PR?_EEPROM_READ?FUNCTION
  +--> ?PR?_EEPROM_WRITE?FUNCTION
  +--> ?PR?_I2C_LINEOPEN?ISR_I2C
  +--> ?PR?_AT24C64_WRITE?DRV_AT24C64
  +--> ?PR?_AT24C64_READ?DRV_AT24C64

?PR?_EEPROM_READ?FUNCTION                   0406H    000BH
  +--> ?PR?_AT24C64_RBYTES?FUNCTION

?PR?_AT24C64_RBYTES?FUNCTION                0411H    0008H
  +--> ?PR?AT24C64_WAIT_ACK?FUNCTION
  +--> ?PR?_AT24C64_WRITE_BYTE?FUNCTION
  +--> ?PR?AT24C64_START?FUNCTION
  +--> ?PR?AT24C64_READ_BYTE?FUNCTION
  +--> ?PR?AT24C64_STOP?FUNCTION

?PR?AT24C64_WAIT_ACK?FUNCTION               -----    -----
  +--> ?PR?AT24C64_START?FUNCTION
  +--> ?PR?_AT24C64_WRITE_BYTE?FUNCTION
  +--> ?PR?AT24C64_STOP?FUNCTION

?PR?_EEPROM_WRITE?FUNCTION                  0406H    000CH
  +--> ?PR?_AT24C64_WBYTES?FUNCTION

?PR?_AT24C64_WBYTES?FUNCTION                0412H    0008H
  +--> ?PR?AT24C64_WAIT_ACK?FUNCTION
  +--> ?PR?_AT24C64_WRITE_BYTE?FUNCTION
  +--> ?PR?AT24C64_STOP?FUNCTION
  +--> ?PR?_DELAY_10US?FUNCTION

?PR?_I2C_LINEOPEN?ISR_I2C                   0406H    0004H
  +--> ?PR?_INIT_I2C_TIMER?ISR_I2C
  +--> ?PR?_START_I2C_TIMER?ISR_I2C

?PR?_AT24C64_WRITE?DRV_AT24C64              0406H    0009H
  +--> ?PR?_I2CWRITE?ISR_I2C

?PR?_I2CWRITE?ISR_I2C                       040FH    0007H
  +--> ?PR?_I2CTXSENDSTARTSDA?ISR_I2C
  +--> ?PR?_START_I2C_TIMER?ISR_I2C

?PR?_I2CTXSENDSTARTSDA?ISR_I2C              0416H    0003H
  +--> ?PR?_I2CTXSENDSTARTSCL?ISR_I2C

?PR?_I2CTXSENDSTARTSCL?ISR_I2C              0419H    0003H
  +--> ?PR?_I2CTXSENDBIT?ISR_I2C

?PR?_I2CTXSENDBIT?ISR_I2C                   041CH    0003H
  +--> ?PR?_I2CTXSETSCL?ISR_I2C
  +--> ?PR?_I2CTXPREPAREACK?ISR_I2C

?PR?_I2CTXSETSCL?ISR_I2C                    041FH    0003H
BL51 BANKED LINKER/LOCATER V5.03                                                      10/29/2006  14:34:15  PAGE 5



?PR?_I2CTXPREPAREACK?ISR_I2C                041FH    0003H
  +--> ?PR?_I2CTXWAITACK?ISR_I2C

?PR?_I2CTXWAITACK?ISR_I2C                   0422H    0003H
  +--> ?PR?SDA_VAL?ISR_I2C
  +--> ?PR?_I2CTXPREPARESTOP?ISR_I2C
  +--> ?PR?_I2CDEVICEREAD?ISR_I2C
  +--> ?PR?_I2CRXRECEIVEBYTE?ISR_I2C
  +--> ?PR?_I2CTXSENDBYTE?ISR_I2C
  +--> ?PR?_I2CERROR?DRV_AT24C64

?PR?_I2CTXPREPARESTOP?ISR_I2C               0432H    0003H
  +--> ?PR?_I2CTXSENDSTOPSDA?ISR_I2C

?PR?_I2CTXSENDSTOPSDA?ISR_I2C               0435H    0003H

?PR?_I2CDEVICEREAD?ISR_I2C                  0425H    0003H

?PR?_I2CRXRECEIVEBYTE?ISR_I2C               0425H    0003H
  +--> ?PR?_I2CRXRECEIVEBIT?ISR_I2C

?PR?_I2CRXRECEIVEBIT?ISR_I2C                0428H    0004H
  +--> ?PR?SDA_VAL?ISR_I2C
  +--> ?PR?_I2CRXCLEARSCL?ISR_I2C

?PR?_I2CRXCLEARSCL?ISR_I2C                  042CH    0003H
  +--> ?PR?_I2CRXPREPAREACK?ISR_I2C

?PR?_I2CRXPREPAREACK?ISR_I2C                042FH    0003H
  +--> ?PR?_I2CTXPREPARESTOP?ISR_I2C
  +--> ?PR?_I2CRXDOACK?ISR_I2C

?PR?_I2CRXDOACK?ISR_I2C                     0432H    0003H

?PR?_I2CTXSENDBYTE?ISR_I2C                  0425H    0003H

?PR?_I2CERROR?DRV_AT24C64                   -----    -----
  +--> ?PR?STOP_I2C_TIMER?ISR_I2C

?PR?_AT24C64_READ?DRV_AT24C64               0406H    0007H
  +--> ?PR?_I2CREAD?ISR_I2C

?PR?_I2CREAD?ISR_I2C                        040DH    0007H
  +--> ?PR?_I2CTXSENDSTARTSDA?ISR_I2C
  +--> ?PR?_START_I2C_TIMER?ISR_I2C



SYMBOL TABLE OF MODULE:  program (MAIN)

  VALUE           TYPE          NAME
  ----------------------------------

  -------         MODULE        MAIN
  C:0000H         SYMBOL        _ICE_DUMMY_
  B:00A8H.7       PUBLIC        EA
BL51 BANKED LINKER/LOCATER V5.03                                                      10/29/2006  14:34:15  PAGE 6


  C:145CH         PUBLIC        _reset_timer
  X:0438H         PUBLIC        Opsgp
  D:00A8H         PUBLIC        IE
  D:00CBH         PUBLIC        RCAP2H
  D:00CAH         PUBLIC        RCAP2L
  C:067BH         PUBLIC        main
  X:0446H         PUBLIC        TT
  C:1079H         PUBLIC        _set_timer
  D:0089H         PUBLIC        TMOD
  C:14BEH         PUBLIC        start_timer
  B:00A8H.5       PUBLIC        ET2
  B:00C8H.7       PUBLIC        TF2
  D:00CDH         PUBLIC        TH2
  D:00CCH         PUBLIC        TL2
  X:0476H         PUBLIC        volt_group
  B:00C8H.2       PUBLIC        TR2
  C:0AB8H         PUBLIC        time2
  D:00C8H         PUBLIC        T2CON
  -------         PROC          TIME2
  -------         DO            
  D:0007H         SYMBOL        i
  -------         ENDDO         
  C:0AB8H         LINE#         9
  C:0ACBH         LINE#         12
  C:0ACDH         LINE#         13
  C:0ACDH         LINE#         14
  C:0AE0H         LINE#         15
  C:0AE0H         LINE#         16
  C:0AF5H         LINE#         17
  C:0AF5H         LINE#         18
  C:0B05H         LINE#         19
  C:0B16H         LINE#         20
  C:0B18H         LINE#         21
  C:0B18H         LINE#         22
  C:0B2DH         LINE#         23
  C:0B2DH         LINE#         24
  C:0B2DH         LINE#         25
  C:0B32H         LINE#         26
  C:0B34H         LINE#         27
  -------         ENDPROC       TIME2
  -------         PROC          START_TIMER
  C:14BEH         LINE#         28
  C:14BEH         LINE#         29
  C:14BEH         LINE#         30
  C:14C1H         LINE#         31
  C:14C3H         LINE#         32
  C:14C5H         LINE#         33
  C:14C8H         LINE#         34

⌨️ 快捷键说明

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