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

📄 ex6-1.m51

📁 < 嵌入式C语言程序设计>>一书的源代码
💻 M51
📖 第 1 页 / 共 3 页
字号:
BL51 BANKED LINKER/LOCATER V5.12                                                        09/15/2005  09:54:54  PAGE 1


BL51 BANKED LINKER/LOCATER V5.12, INVOKED BY:
C:\KEIL\C51\BIN\BL51.EXE keypad.obj, lcd.obj, delay100us.obj, EX6-1.obj, 93C66.obj TO ex6-1


MEMORY MODEL: SMALL


INPUT MODULES INCLUDED:
  keypad.obj (KEYPAD)
  lcd.obj (LCD)
  delay100us.obj (DELAY100US)
  EX6-1.obj (EX6_1)
  93C66.obj (_93C66)
  C:\KEIL\C51\LIB\C51S.LIB (?C_STARTUP)
  C:\KEIL\C51\LIB\C51S.LIB (?C?COPY)
  C:\KEIL\C51\LIB\C51S.LIB (?C?SCDIV)
  C:\KEIL\C51\LIB\C51S.LIB (?C?CLDPTR)
  C:\KEIL\C51\LIB\C51S.LIB (?C_INIT)


LINK MAP OF MODULE:  ex6-1 (KEYPAD)


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

            * * * * * * *   D A T A   M E M O R Y   * * * * * * *
            REG     0000H     0008H     ABSOLUTE     "REG BANK 0"
            REG     0008H     0008H     ABSOLUTE     "REG BANK 1"
            DATA    0010H     0022H     UNIT         ?DT?EX6_1
            DATA    0032H     000DH     UNIT         _DATA_GROUP_
            IDATA   003FH     0001H     UNIT         ?STACK

            * * * * * * *   C O D E   M E M O R Y   * * * * * * *
            CODE    0000H     0003H     ABSOLUTE     
                    0003H     0008H                  *** GAP ***
            CODE    000BH     0003H     ABSOLUTE     
                    000EH     07F2H                  *** GAP ***
            CODE    0800H     01AEH     UNIT         ?PR?MAIN?EX6_1
            CODE    09AEH     0131H     UNIT         ?C?LIB_CODE
            CODE    0ADFH     00CAH     UNIT         ?PR?DISPLAY_DATE?EX6_1
            CODE    0BA9H     00B2H     UNIT         ?PR?INPUT_NEW_PASSWORD?EX6_1
            CODE    0C5BH     00ABH     UNIT         ?PR?TIMER0_ISR?EX6_1
            CODE    0D06H     00A6H     UNIT         ?PR?GETDATE?EX6_1
            CODE    0DACH     0095H     UNIT         ?CO?EX6_1
            CODE    0E41H     008CH     UNIT         ?C_C51STARTUP
            CODE    0ECDH     0069H     UNIT         ?PR?KEYPAD_SCAN?KEYPAD
            CODE    0F36H     005DH     UNIT         ?PR?GETTIME?EX6_1
            CODE    0F93H     0052H     UNIT         ?PR?_GETDIGIT?EX6_1
            CODE    0FE5H     0052H     UNIT         ?PR?CHECK_PASSWORD?EX6_1
            CODE    1037H     003EH     UNIT         ?PR?_GETSECRET?EX6_1
            CODE    1075H     003EH     UNIT         ?PR?_WRITE_BYTE?93C66
            CODE    10B3H     0032H     UNIT         ?PR?_WRITE_COMMAND?93C66
            CODE    10E5H     002DH     UNIT         ?PR?_DISPLAY_LCD_NUMBER?LCD
            CODE    1112H     002CH     UNIT         ?PR?_READ_BYTE?93C66
            CODE    113EH     002AH     UNIT         ?PR?DISPLAY_TIME?EX6_1
            CODE    1168H     0028H     UNIT         ?C_INITSEG
            CODE    1190H     0027H     UNIT         ?PR?_DISPLAY_LCD_STRING?LCD
BL51 BANKED LINKER/LOCATER V5.12                                                      09/15/2005  09:54:54  PAGE 2


            CODE    11B7H     0027H     UNIT         ?PR?_MONTHDAY?EX6_1
            CODE    11DEH     0024H     UNIT         ?PR?GOTKEY?KEYPAD
            CODE    1202H     001DH     UNIT         ?PR?_GOTOXY?LCD
            CODE    121FH     001DH     UNIT         ?PR?GET_PASSWORD?EX6_1
            CODE    123CH     0019H     UNIT         ?PR?TIMER0_INITIALIZE?EX6_1
            CODE    1255H     0018H     UNIT         ?CO?KEYPAD
            CODE    126DH     0015H     UNIT         ?PR?INIT_LCD?LCD
            CODE    1282H     0011H     UNIT         ?CO?93C66
            CODE    1293H     0010H     UNIT         ?PR?_WRITE_LCD_COMMAND?LCD
            CODE    12A3H     0010H     UNIT         ?PR?_WRITE_LCD_DATA?LCD
            CODE    12B3H     000EH     UNIT         ?PR?CLEAR_LCD?LCD
            CODE    12C1H     000DH     UNIT         ?PR?DELAY_FORKB?KEYPAD
            CODE    12CEH     000CH     UNIT         ?PR?WRITE_ENABLE?93C66
            CODE    12DAH     000CH     UNIT         ?PR?WRITE_DISABLE?93C66
            CODE    12E6H     000BH     UNIT         ?CO?LCD
            CODE    12F1H     0008H     UNIT         ?PR?CHECK_BUSY?93C66
            CODE    12F9H     0007H     UNIT         ?PR?CURSOR_BLINK?LCD
            CODE    1300H     0007H     UNIT         ?PR?CURSOR_OFF?LCD
            CODE    1307H     0007H     UNIT         ?PR?DELAY100US?DELAY100US



OVERLAY MAP OF MODULE:   ex6-1 (KEYPAD)


SEGMENT                                DATA_GROUP 
  +--> CALLED SEGMENT                START    LENGTH
----------------------------------------------------
?PR?TIMER0_ISR?EX6_1                 -----    -----
  +--> ?PR?_MONTHDAY?EX6_1
  +--> ?PR?DISPLAY_DATE?EX6_1
  +--> ?PR?DISPLAY_TIME?EX6_1

?PR?_MONTHDAY?EX6_1                  -----    -----
  +--> ?CO?EX6_1

?PR?DISPLAY_DATE?EX6_1               003AH    0001H
  +--> ?PR?_GOTOXY?LCD
  +--> ?PR?_DISPLAY_LCD_NUMBER?LCD
  +--> ?CO?EX6_1
  +--> ?PR?_DISPLAY_LCD_STRING?LCD

?PR?_GOTOXY?LCD                      003DH    0002H
  +--> ?PR?_WRITE_LCD_COMMAND?LCD

?PR?_WRITE_LCD_COMMAND?LCD           -----    -----
  +--> ?PR?DELAY100US?DELAY100US

?PR?_DISPLAY_LCD_NUMBER?LCD          003BH    0001H
  +--> ?CO?LCD
  +--> ?PR?_WRITE_LCD_DATA?LCD

?PR?_WRITE_LCD_DATA?LCD              -----    -----
  +--> ?PR?DELAY100US?DELAY100US

?PR?_DISPLAY_LCD_STRING?LCD          003BH    0003H
  +--> ?PR?_WRITE_LCD_DATA?LCD
BL51 BANKED LINKER/LOCATER V5.12                                                      09/15/2005  09:54:54  PAGE 3



?PR?DISPLAY_TIME?EX6_1               -----    -----
  +--> ?PR?_GOTOXY?LCD
  +--> ?PR?_DISPLAY_LCD_NUMBER?LCD
  +--> ?CO?EX6_1
  +--> ?PR?_DISPLAY_LCD_STRING?LCD

*** NEW ROOT ***************************************************

?C_C51STARTUP                        -----    -----
  +--> ?PR?MAIN?EX6_1
  +--> ?C_INITSEG

?PR?MAIN?EX6_1                       0036H    0002H
  +--> ?PR?INIT_LCD?LCD
  +--> ?PR?CLEAR_LCD?LCD
  +--> ?PR?_GOTOXY?LCD
  +--> ?CO?EX6_1
  +--> ?PR?_DISPLAY_LCD_STRING?LCD
  +--> ?PR?DISPLAY_TIME?EX6_1
  +--> ?PR?DISPLAY_DATE?EX6_1
  +--> ?PR?TIMER0_INITIALIZE?EX6_1
  +--> ?PR?_READ_BYTE?93C66
  +--> ?PR?GOTKEY?KEYPAD
  +--> ?PR?GETTIME?EX6_1
  +--> ?PR?GETDATE?EX6_1
  +--> ?PR?GET_PASSWORD?EX6_1
  +--> ?PR?CHECK_PASSWORD?EX6_1
  +--> ?PR?INPUT_NEW_PASSWORD?EX6_1

?PR?INIT_LCD?LCD                     -----    -----
  +--> ?PR?_WRITE_LCD_COMMAND?LCD

?PR?CLEAR_LCD?LCD                    -----    -----
  +--> ?PR?_WRITE_LCD_COMMAND?LCD

?PR?_READ_BYTE?93C66                 0038H    0001H
  +--> ?PR?_WRITE_COMMAND?93C66

?PR?GOTKEY?KEYPAD                    -----    -----
  +--> ?PR?KEYPAD_SCAN?KEYPAD
  +--> ?CO?KEYPAD

?PR?KEYPAD_SCAN?KEYPAD               -----    -----
  +--> ?CO?KEYPAD
  +--> ?PR?DELAY_FORKB?KEYPAD

?PR?GETTIME?EX6_1                    0038H    0001H
  +--> ?PR?_GETDIGIT?EX6_1
  +--> ?PR?DISPLAY_TIME?EX6_1

?PR?_GETDIGIT?EX6_1                  003AH    0003H
  +--> ?PR?_GOTOXY?LCD
  +--> ?PR?_WRITE_LCD_DATA?LCD
  +--> ?PR?GOTKEY?KEYPAD
  +--> ?CO?EX6_1

BL51 BANKED LINKER/LOCATER V5.12                                                      09/15/2005  09:54:54  PAGE 4


?PR?GETDATE?EX6_1                    0038H    0002H
  +--> ?PR?_GETDIGIT?EX6_1
  +--> ?PR?DISPLAY_DATE?EX6_1
  +--> ?PR?_MONTHDAY?EX6_1

?PR?GET_PASSWORD?EX6_1               0038H    0001H
  +--> ?PR?_GETSECRET?EX6_1

?PR?_GETSECRET?EX6_1                 003AH    0003H
  +--> ?PR?_GOTOXY?LCD
  +--> ?PR?_WRITE_LCD_DATA?LCD
  +--> ?PR?GOTKEY?KEYPAD

?PR?CHECK_PASSWORD?EX6_1             -----    -----
  +--> ?CO?EX6_1

?PR?INPUT_NEW_PASSWORD?EX6_1         0038H    0002H
  +--> ?PR?CLEAR_LCD?LCD
  +--> ?PR?_GOTOXY?LCD
  +--> ?CO?EX6_1
  +--> ?PR?_DISPLAY_LCD_STRING?LCD
  +--> ?PR?_GETSECRET?EX6_1
  +--> ?PR?_WRITE_BYTE?93C66

?PR?_WRITE_BYTE?93C66                003AH    0003H
  +--> ?PR?WRITE_ENABLE?93C66
  +--> ?PR?_WRITE_COMMAND?93C66
  +--> ?PR?CHECK_BUSY?93C66
  +--> ?PR?WRITE_DISABLE?93C66

?PR?WRITE_ENABLE?93C66               -----    -----
  +--> ?PR?_WRITE_COMMAND?93C66

?PR?WRITE_DISABLE?93C66              -----    -----
  +--> ?PR?_WRITE_COMMAND?93C66



SYMBOL TABLE OF MODULE:  ex6-1 (KEYPAD)

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

  -------         MODULE        KEYPAD
  C:0000H         SYMBOL        _ICE_DUMMY_
  D:00A0H         PUBLIC        P2
  C:0ECDH         PUBLIC        keypad_scan
  C:11DEH         PUBLIC        gotkey
  C:1255H         PUBLIC        key_code
  C:12C1H         PUBLIC        delay_forKB
  C:1265H         PUBLIC        ksp
  -------         PROC          DELAY_FORKB
  -------         DO            
  D:0007H         SYMBOL        i
  D:0006H         SYMBOL        j
  -------         ENDDO         
  C:12C1H         LINE#         30
BL51 BANKED LINKER/LOCATER V5.12                                                      09/15/2005  09:54:54  PAGE 5


  C:12C1H         LINE#         32
  C:12C3H         LINE#         33
  C:12CDH         LINE#         35
  -------         ENDPROC       DELAY_FORKB
  -------         PROC          KEYPAD_SCAN
  -------         DO            
  D:0004H         SYMBOL        key
  D:0005H         SYMBOL        i
  -------         ENDDO         
  C:0ECDH         LINE#         39
  C:0ECDH         LINE#         40
  C:0ECDH         LINE#         43
  C:0ED0H         LINE#         44
  C:0ED5H         LINE#         45
  C:0ED5H         LINE#         46
  C:0ED7H         LINE#         47
  C:0ED7H         LINE#         48
  C:0EF7H         LINE#         49
  C:0F02H         LINE#         50
  C:0F02H         LINE#         51
  C:0F05H         LINE#         52
  C:0F07H         LINE#         53
  C:0F2FH         LINE#         54
  C:0F2FH         LINE#         55
  C:0F30H         LINE#         56
  C:0F30H         LINE#         57
  C:0F30H         LINE#         58
  -------         ENDPROC       KEYPAD_SCAN
  -------         PROC          GOTKEY
  -------         DO            
  D:0007H         SYMBOL        temp
  D:0006H         SYMBOL        i
  -------         ENDDO         
  C:11DEH         LINE#         62
  C:11DEH         LINE#         63
  C:11DEH         LINE#         66
  C:11E1H         LINE#         67
  C:11E3H         LINE#         68
  C:11FBH         LINE#         69
  C:11FFH         LINE#         70
  C:1201H         LINE#         71
  -------         ENDPROC       GOTKEY
  -------         ENDMOD        KEYPAD

  -------         MODULE        LCD
  C:0000H         SYMBOL        _ICE_DUMMY_
  D:0090H         PUBLIC        P1
  C:1293H         PUBLIC        _write_LCD_command
  C:1190H         PUBLIC        _display_LCD_string
  C:1202H         PUBLIC        _gotoxy
  C:12F9H         PUBLIC        cursor_blink
  B:00B0H.3       PUBLIC        P3_3
  B:00B0H.4       PUBLIC        P3_4
  B:00B0H.5       PUBLIC        P3_5
  C:12B3H         PUBLIC        clear_LCD
  C:1300H         PUBLIC        cursor_off
  C:12A3H         PUBLIC        _write_LCD_data
BL51 BANKED LINKER/LOCATER V5.12                                                      09/15/2005  09:54:54  PAGE 6


  C:126DH         PUBLIC        init_LCD
  C:12E6H         PUBLIC        int2charLCD
  C:10E5H         PUBLIC        _display_LCD_number
  -------         PROC          _WRITE_LCD_COMMAND
  D:0006H         SYMBOL        command
  C:1293H         LINE#         8
  C:1293H         LINE#         9
  C:1293H         LINE#         10
  C:1295H         LINE#         11
  C:1297H         LINE#         12
  C:1299H         LINE#         13
  C:129BH         LINE#         14
  C:129EH         LINE#         15
  C:12A0H         LINE#         16
  C:12A2H         LINE#         17
  -------         ENDPROC       _WRITE_LCD_COMMAND
  -------         PROC          _WRITE_LCD_DATA
  D:0006H         SYMBOL        LCDdata
  C:12A3H         LINE#         18
  C:12A3H         LINE#         19
  C:12A3H         LINE#         20
  C:12A5H         LINE#         21
  C:12A7H         LINE#         22
  C:12A9H         LINE#         23
  C:12ABH         LINE#         24
  C:12AEH         LINE#         25
  C:12B0H         LINE#         26
  C:12B2H         LINE#         27
  -------         ENDPROC       _WRITE_LCD_DATA
  -------         PROC          INIT_LCD
  C:126DH         LINE#         28
  C:126DH         LINE#         29
  C:126DH         LINE#         30
  C:1274H         LINE#         31
  C:127BH         LINE#         32
  -------         ENDPROC       INIT_LCD
  -------         PROC          CLEAR_LCD
  C:12B3H         LINE#         34
  C:12B3H         LINE#         35
  C:12B3H         LINE#         36
  C:12BAH         LINE#         37
  -------         ENDPROC       CLEAR_LCD
  -------         PROC          CURSOR_BLINK
  C:12F9H         LINE#         39
  C:12F9H         LINE#         40
  C:12F9H         LINE#         41
  -------         ENDPROC       CURSOR_BLINK
  -------         PROC          CURSOR_OFF
  C:1300H         LINE#         44
  C:1300H         LINE#         45
  C:1300H         LINE#         46
  -------         ENDPROC       CURSOR_OFF
  -------         PROC          _DISPLAY_LCD_STRING
  D:003BH         SYMBOL        p
  C:1190H         LINE#         49
  C:1196H         LINE#         50
  C:1196H         LINE#         51
BL51 BANKED LINKER/LOCATER V5.12                                                      09/15/2005  09:54:54  PAGE 7


  C:11A2H         LINE#         52
  C:11A2H         LINE#         53
  C:11A9H         LINE#         54
  C:11B4H         LINE#         55
  C:11B6H         LINE#         56
  -------         ENDPROC       _DISPLAY_LCD_STRING
  -------         PROC          _DISPLAY_LCD_NUMBER
  D:0007H         SYMBOL        number
  -------         DO            
  D:0006H         SYMBOL        x
  D:003BH         SYMBOL        y

⌨️ 快捷键说明

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