This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Executing programm from FLASH problem

Hi all!

I had finished debugging my programm at RAM with Keil monitor 166. Size of programm - 33 kb. Now I am trying to run it from flash. It writes into flash well, but when I am trying to start executing - it works for a while and than hang (about 5 seconds, more or less). When I load my old version of prog (20 kb) - it works.

Do anyone know what reason can be for this situation?
Any comments?

  • Most likely you are using memory that is not available in the Flash system (but was available while debugging the application in RAM).

    Did you review the memory requirements in the linker map file (*.M66)? Is all this memory available in the Flash target hardware?

  • HI

    I don't understand what do you mean.
    I post 2 map files - old (working) one and new.
    Can you show what is wrong.

    OLD:

    L166 LINKER/LOCATER V5.21, INVOKED BY:
    C:\KEIL\C166\BIN\L166.EXE STARTUP.obj, main.obj, keyboard.obj, lcd.obj, capcom.obj, serial.obj, tests.obj, TRAPS.obj TO
    >> RS_tiny RTX166TINY VECTAB (0X0) CLASSES (ICODE (0X0-0XF9FF), NCODE (0X0-0XF9FF), FCONST (0X0-0XF9FF), HCONST (0X0-0XF
    >> 9FF), XCONST (0X0-0XF9FF), NCONST (0X4000-0X7FFF), NDATA (0X20000-0X23FFF), NDATA0 (0X20000-0X23FFF), SDATA (0XFA00-0
    >> XFDFF), SDATA0 (0XFA00-0XFDFF), IDATA (0XFA00-0XFDFF), IDATA0 (0XFA00-0XFDFF), FDATA (0X20000-0X3FFFF), FDATA0 (0X200
    >> 00-0X3FFFF), HDATA (0X20000-0X3FFFF), HDATA0 (0X20000-0X3FFFF), XDATA (0X20000-0X3FFFF), XDATA0 (0X20000-0X3FFFF)) CI
    >> NITTAB (0X0-0XF9FF)
    
    
    CPU TYPE:     C167 or derivative
    CPU MODE:     SEGMENTED
    MEMORY MODEL: SMALL WITH DOUBLE PRECISION FLOATING POINT ARITHMETIC
    
    
    
    INTERRUPT PROCEDURES OF MODULE:  RS_tiny (?C_STARTUP)
    
    
    INTERRUPT PROCEDURE                 INT  INTERRUPT NAME
    =======================================================
    ?C_RESET                              0  RESET
    timer3_irq                           35  T3INT
    timer1interrupt                      33  T1INT
    serial_receive                       46  S1RINT
    serial_transmit                      45  S1TINT
    NMI_trap                              2  ---
    STKOF_trap                            4  ---
    STKUF_trap                            6  ---
    Class_B_trap                         10  ---
    timer_interrupt                      32  RTX_TIMER
    
    
    TASK TABLE OF MODULE:  RS_tiny (?C_STARTUP)
    
    TASK NAME                         TASKID   PRIORITY   REG-BANK
    ==============================================================
    init                                 0         0      ---
    CheckBit                             1         0      ---
    GetRsData                            2         0      ---
    MainLoop                             3         0      ---
    
    
    
    MEMORY MAP OF MODULE:  RS_tiny (?C_STARTUP)
    
    
    START     STOP      LENGTH    TYPE  RTYP  ALIGN  TGR  GRP  COMB  CLASS   SECTION NAME
    =====================================================================================
    000000H   000003H   000004H   ---   ---   ---    ---  ---  ---   * INTVECTOR TABLE *
    000004H   000007H   000004H   CODE  REL   WORD   ---    2  PRIV  NCODE   ?RTX2?CODE
    000008H   00000BH   000004H   ---   ---   ---    ---  ---  ---   * INTVECTOR TABLE *
    000010H   000013H   000004H   ---   ---   ---    ---  ---  ---   * INTVECTOR TABLE *
    000018H   00001BH   000004H   ---   ---   ---    ---  ---  ---   * INTVECTOR TABLE *
    000028H   00002BH   000004H   ---   ---   ---    ---  ---  ---   * INTVECTOR TABLE *
    00002CH   000049H   00001EH   CONST ABS   WORD   ---  ---  PRIV  ---     ?C_CLRMEMSEC
    L166 LINKER/LOCATER V5.21                                                             07/18/2007  13:16:39  PAGE 3
    
    
    ................
    
    Program Size: data=5137(near=5137) const=2676(near=2194) code=17518
    L166 RUN COMPLETE.  0 WARNING(S),  0 ERROR(S)
    
    

    .

    Keil dialog configuration:

    ROM: start:0x0, size: 0xFA00
    RAM: 0x20000, 0x20000

    to be continued

  • 
    
    00004AH   000059H   000010H   CODE  REL   WORD   ---    2  PUBL  NCODE   ?PR?TRAPS
    000080H   000087H   000008H   ---   ---   ---    ---  ---  ---   * INTVECTOR TABLE *
    00008CH   00008FH   000004H   ---   ---   ---    ---  ---  ---   * INTVECTOR TABLE *
    0000B4H   0000BBH   000008H   ---   ---   ---    ---  ---  ---   * INTVECTOR TABLE *
    0000BCH   00027FH   0001C4H   XDATA REL   WORD   ---  ---  GLOB  ---     ?C_INITSEC
    000280H   0003F3H   000174H   CODE  REL   WORD   ---  ---  PRIV  ICODE   ?C_STARTUP_CODE
    0003F4H   001427H   001034H   CODE  REL   WORD   ---    2  PUBL  NCODE   ?PR?LCD
    001428H   00222BH   000E04H   CODE  REL   WORD   ---    2  PUBL  NCODE   ?C_LIB_CODE
    00222CH   002BE5H   0009BAH   CODE  REL   WORD   ---    2  PUBL  NCODE   ?PR?MAIN
    002BE6H   003333H   00074EH   CODE  REL   WORD   ---    2  PUBL  NCODE   ?PR?KEYBOARD
    003334H   003A3DH   00070AH   CODE  REL   WORD   ---    2  PUBL  NCODE   ?PR?TESTS
    003A3EH   003FDDH   0005A0H   CODE  REL   WORD   ---    2  PRIV  NCODE   ?RTX?CODE
    004000H   004715H   000716H   DATA  REL   BYTE   ---    3  PUBL  NCONST  ?NC?LCD
    004716H   0047ADH   000098H   DATA  REL   WORD   ---    3  PUBL  NCONST  ?C_LIB_NCONST
    0047AEH   00481FH   000072H   DATA  REL   WORD   ---    3  PUBL  NCONST  ?NC?MAIN
    004820H   004879H   00005AH   DATA  REL   WORD   ---    3  PUBL  NCONST  ?NC??PRNFMT
    00487AH   004889H   000010H   DATA  REL   BYTE   ---    3  PUBL  NCONST  ?NC?TESTS
    00488AH   004891H   000008H   CONST REL   WORD   ---    3  PRIV  NCONST  ?RTX?CONST1?S
    004892H   004C89H   0003F8H   CODE  REL   WORD   ---    2  PUBL  NCODE   ?PR?CAPCOM
    004C8AH   004F8DH   000304H   CODE  REL   WORD   ---    2  PUBL  NCODE   ?PR?SERIAL
    00FA00H   00FBFFH   000200H   ---   ---   ---    ---  ---  ---   * SYSTEM STACK *
    00FC00H   00FC1FH   000020H   DATA  ---   BYTE   ---  ---  ---   *REG*   ?C_MAINREGISTERS
    00FC20H   00FC3FH   000020H   DATA  ---   BYTE   ---  ---  ---   *REG*   INTREGS
    00FD00H.0 00FD00H.3 000000H.4 BIT   REL   BIT    ---  ---  PUBL  BIT0    ?BI0?SERIAL
    020000H   020FFFH   001000H   DATA  REL   WORD   ---    1  PUBL  NDATA   ?C_USERSTACK
    021000H   021007H   000008H   DATA  REL   WORD   ---    1  PRIV  NDATA   ?RTX?DATA1?S
    021008H   02100FH   000008H   DATA  REL   WORD   ---    1  PRIV  NDATA   ?RTX?DATA3?S
    021010H   021017H   000008H   DATA  REL   WORD   ---    1  PRIV  NDATA   ?RTX?DATA4?S
    021018H   02101BH   000004H   DATA  REL   BYTE   ---    1  PRIV  NDATA   ?RTX?DATA2?S
    02101CH   02101EH   000003H   DATA  REL   WORD   ---    1  PRIV  NDATA   ?RTX?DATA0
    021020H   02123BH   00021CH   DATA  REL   WORD   ---    1  PUBL  NDATA0  ?ND0?SERIAL
    02123CH   02133BH   000100H   DATA  REL   BYTE   ---    1  PUBL  NDATA0  ?ND0?LCD
    02133CH   0213D7H   00009CH   DATA  REL   WORD   ---    1  PUBL  NDATA0  ?ND0?MAIN
    0213D8H   021405H   00002EH   DATA  REL   WORD   ---    1  PUBL  NDATA0  ?ND0?CAPCOM
    021406H   02140FH   00000AH   DATA  REL   WORD   ---    1  PUBL  NDATA0  ?ND0?TESTS
    021410H   021411H   000002H   DATA  REL   BYTE   ---    1  PUBL  NDATA0  ?ND0?KEYBOARD
    
    
    
    GROUP LIST OF MODULE:  RS_tiny (?C_STARTUP)
    
    
    GROUP NAME                           TYPE  TGR  GRP  CLASS       SECTION NAME
    =============================================================================
    NDATA                                DATA  ---    1  NDATA       ?C_USERSTACK
                                                         NDATA0      ?ND0?MAIN
                                                         NDATA0      ?ND0?KEYBOARD
                                                         NDATA0      ?ND0?LCD
                                                         NDATA0      ?ND0?CAPCOM
                                                         NDATA0      ?ND0?SERIAL
                                                         NDATA0      ?ND0?TESTS
                                                         NDATA       ?RTX?DATA0
                                                         NDATA       ?RTX?DATA1?S
                                                         NDATA       ?RTX?DATA2?S
                                                         NDATA       ?RTX?DATA3?S
                                                         NDATA       ?RTX?DATA4?S
    
    L166 LINKER/LOCATER V5.21                                                             07/18/2007  13:16:39  PAGE 4
    
    
    NCODE                                CODE  ---    2  NCODE       ?PR?MAIN
                                                         NCODE       ?PR?KEYBOARD
                                                         NCODE       ?PR?LCD
                                                         NCODE       ?PR?CAPCOM
                                                         NCODE       ?PR?SERIAL
                                                         NCODE       ?PR?TESTS
                                                         NCODE       ?PR?TRAPS
                                                         NCODE       ?RTX?CODE
                                                         NCODE       ?RTX2?CODE
                                                         NCODE       ?C_LIB_CODE
    
    NCONST                               DATA  ---    3  NCONST      ?NC?MAIN
                                                         NCONST      ?NC?LCD
                                                         NCONST      ?NC?TESTS
                                                         NCONST      ?RTX?CONST1?S
                                                         NCONST      ?NC??PRNFMT
                                                         NCONST      ?C_LIB_NCONST
    
    

    .

  • new one:

    L166 LINKER/LOCATER V5.21                                                               07/19/2007  18:32:41  PAGE 1
    
    
    L166 LINKER/LOCATER V5.21, INVOKED BY:
    C:\KEIL\C166\BIN\L166.EXE STARTUP.obj, main.obj, keyboard.obj, lcd.obj, capcom.obj, serial.obj, tests.obj, TRAPS.obj TO
    >> RS_tiny RTX166TINY VECTAB (0X0) CLASSES (ICODE (0X0-0XF9FF), NCODE (0X0-0XF9FF), FCONST (0X0-0XF9FF), HCONST (0X0-0XF
    >> 9FF), XCONST (0X0-0XF9FF), NCONST (0X4000-0X7FFF), NDATA (0X20000-0X23FFF), NDATA0 (0X20000-0X23FFF), SDATA (0XFA00-0
    >> XFDFF), SDATA0 (0XFA00-0XFDFF), IDATA (0XFA00-0XFDFF), IDATA0 (0XFA00-0XFDFF), FDATA (0X20000-0X3FFFF), FDATA0 (0X200
    >> 00-0X3FFFF), HDATA (0X20000-0X3FFFF), HDATA0 (0X20000-0X3FFFF), XDATA (0X20000-0X3FFFF), XDATA0 (0X20000-0X3FFFF)) CI
    >> NITTAB (0X0-0XF9FF)
    
    
    
    INTERRUPT PROCEDURES OF MODULE:  RS_tiny (?C_STARTUP)
    
    
    INTERRUPT PROCEDURE                 INT  INTERRUPT NAME
    =======================================================
    ?C_RESET                              0  RESET
    GPT1_viTmr2                          34  ---
    timer3_irq                           35  T3INT
    timer1interrupt                      33  T1INT
    serial_receive                       46  S1RINT
    serial_transmit                      45  S1TINT
    NMI_trap                              2  ---
    STKOF_trap                            4  ---
    STKUF_trap                            6  ---
    Class_B_trap                         10  ---
    timer_interrupt                      32  RTX_TIMER
    
    
    TASK TABLE OF MODULE:  RS_tiny (?C_STARTUP)
    
    TASK NAME                         TASKID   PRIORITY   REG-BANK
    ==============================================================
    init                                 0         0      ---
    CheckBit                             1         0      ---
    GetRsData                            2         0      ---
    MainLoop                             3         0      ---
    
    
    
    MEMORY MAP OF MODULE:  RS_tiny (?C_STARTUP)
    
    
    START     STOP      LENGTH    TYPE  RTYP  ALIGN  TGR  GRP  COMB  CLASS   SECTION NAME
    =====================================================================================
    000000H   000003H   000004H   ---   ---   ---    ---  ---  ---   * INTVECTOR TABLE *
    000004H   000007H   000004H   CODE  REL   WORD   ---    2  PRIV  NCODE   ?RTX2?CODE
    000008H   00000BH   000004H   ---   ---   ---    ---  ---  ---   * INTVECTOR TABLE *
    000010H   000013H   000004H   ---   ---   ---    ---  ---  ---   * INTVECTOR TABLE *
    000018H   00001BH   000004H   ---   ---   ---    ---  ---  ---   * INTVECTOR TABLE *
    000028H   00002BH   000004H   ---   ---   ---    ---  ---  ---   * INTVECTOR TABLE *
    00002CH   000049H   00001EH   CONST ABS   WORD   ---  ---  PRIV  ---     ?C_CLRMEMSEC
    00004AH   000059H   000010H   CODE  REL   WORD   ---    2  PUBL  NCODE   ?PR?TRAPS
    L166 LINKER/LOCATER V5.21                                                             07/19/2007  18:32:41  PAGE 3
    
    
    000080H   00008FH   000010H   ---   ---   ---    ---  ---  ---   * INTVECTOR TABLE *
    0000B4H   0000BBH   000008H   ---   ---   ---    ---  ---  ---   * INTVECTOR TABLE *
    0000BCH   00051FH   000464H   XDATA REL   WORD   ---  ---  GLOB  ---     ?C_INITSEC
    000520H   000693H   000174H   CODE  REL   WORD   ---  ---  PRIV  ICODE   ?C_STARTUP_CODE
    000694H   002E05H   002772H   CODE  REL   WORD   ---    2  PUBL  NCODE   ?PR?MAIN
    002E06H   003BF1H   000DECH   CODE  REL   WORD   ---    2  PUBL  NCODE   ?C_LIB_CODE
    003BF2H   003FC7H   0003D6H   CODE  REL   WORD   ---    2  PUBL  NCODE   ?PR?SERIAL
    004000H   0048FFH   000900H   DATA  REL   BYTE   ---    3  PUBL  NCONST  ?NC?LCD
    004900H   004997H   000098H   DATA  REL   WORD   ---    3  PUBL  NCONST  ?C_LIB_NCONST
    004998H   0049F1H   00005AH   DATA  REL   WORD   ---    3  PUBL  NCONST  ?NC??PRNFMT
    0049F2H   004A01H   000010H   DATA  REL   BYTE   ---    3  PUBL  NCONST  ?NC?TESTS
    004A02H   004A09H   000008H   CONST REL   WORD   ---    3  PRIV  NCONST  ?RTX?CONST1?S
    004A0AH   004A0FH   000006H   DATA  REL   WORD   ---    3  PUBL  NCONST  ?NC?MAIN
    004A10H   006FB9H   0025AAH   CODE  REL   WORD   ---    2  PUBL  NCODE   ?PR?LCD
    006FBAH   007559H   0005A0H   CODE  REL   WORD   ---    2  PRIV  NCODE   ?RTX?CODE
    00755AH   007AA1H   000548H   CODE  REL   WORD   ---    2  PUBL  NCODE   ?PR?KEYBOARD
    007AA2H   007DF3H   000352H   CODE  REL   WORD   ---    2  PUBL  NCODE   ?PR?CAPCOM
    007DF4H   00809DH   0002AAH   CODE  REL   WORD   ---    2  PUBL  NCODE   ?PR?TESTS
    00FA00H   00FBFFH   000200H   ---   ---   ---    ---  ---  ---   * SYSTEM STACK *
    00FC00H   00FC1FH   000020H   DATA  ---   BYTE   ---  ---  ---   *REG*   ?C_MAINREGISTERS
    00FC20H   00FC3FH   000020H   DATA  ---   BYTE   ---  ---  ---   *REG*   INTREGS
    00FD00H.0 00FD00H.3 000000H.4 BIT   REL   BIT    ---  ---  PUBL  BIT0    ?BI0?SERIAL
    020000H   022FFFH   003000H   DATA  REL   WORD   ---    1  PUBL  NDATA   ?C_USERSTACK
    023000H   023007H   000008H   DATA  REL   WORD   ---    1  PRIV  NDATA   ?RTX?DATA1?S
    023008H   02300FH   000008H   DATA  REL   WORD   ---    1  PRIV  NDATA   ?RTX?DATA3?S
    023010H   023017H   000008H   DATA  REL   WORD   ---    1  PRIV  NDATA   ?RTX?DATA4?S
    023018H   02301BH   000004H   DATA  REL   BYTE   ---    1  PRIV  NDATA   ?RTX?DATA2?S
    02301CH   02301EH   000003H   DATA  REL   WORD   ---    1  PRIV  NDATA   ?RTX?DATA0
    023020H   023275H   000256H   DATA  REL   WORD   ---    1  PUBL  NDATA0  ?ND0?MAIN
    023276H   023491H   00021CH   DATA  REL   WORD   ---    1  PUBL  NDATA0  ?ND0?SERIAL
    023492H   023597H   000106H   DATA  REL   WORD   ---    1  PUBL  NDATA0  ?ND0?LCD
    023598H   0235C5H   00002EH   DATA  REL   WORD   ---    1  PUBL  NDATA0  ?ND0?CAPCOM
    0235C6H   0235D0H   00000BH   DATA  REL   WORD   ---    1  PUBL  NDATA0  ?ND0?TESTS
    0235D1H   0235D2H   000002H   DATA  REL   BYTE   ---    1  PUBL  NDATA0  ?ND0?KEYBOARD
    
    

    .

  • 
    
    
    GROUP LIST OF MODULE:  RS_tiny (?C_STARTUP)
    
    
    GROUP NAME                           TYPE  TGR  GRP  CLASS       SECTION NAME
    =============================================================================
    NDATA                                DATA  ---    1  NDATA       ?C_USERSTACK
                                                         NDATA0      ?ND0?MAIN
                                                         NDATA0      ?ND0?KEYBOARD
                                                         NDATA0      ?ND0?LCD
                                                         NDATA0      ?ND0?CAPCOM
                                                         NDATA0      ?ND0?SERIAL
                                                         NDATA0      ?ND0?TESTS
                                                         NDATA       ?RTX?DATA0
                                                         NDATA       ?RTX?DATA1?S
                                                         NDATA       ?RTX?DATA2?S
                                                         NDATA       ?RTX?DATA3?S
                                                         NDATA       ?RTX?DATA4?S
    
    NCODE                                CODE  ---    2  NCODE       ?PR?MAIN
                                                         NCODE       ?PR?KEYBOARD
    L166 LINKER/LOCATER V5.21                                                             07/19/2007  18:32:41  PAGE 4
    
    
                                                         NCODE       ?PR?LCD
                                                         NCODE       ?PR?CAPCOM
                                                         NCODE       ?PR?SERIAL
                                                         NCODE       ?PR?TESTS
                                                         NCODE       ?PR?TRAPS
                                                         NCODE       ?RTX?CODE
                                                         NCODE       ?RTX2?CODE
                                                         NCODE       ?C_LIB_CODE
    
    NCONST                               DATA  ---    3  NCONST      ?NC?MAIN
                                                         NCONST      ?NC?LCD
                                                         NCONST      ?NC?TESTS
                                                         NCONST      ?RTX?CONST1?S
                                                         NCONST      ?NC??PRNFMT
                                                         NCONST      ?C_LIB_NCONST
    
    
    ....................
    
    
    Program Size: data=13778(near=13778) const=3730(near=2576) code=29002
    L166 RUN COMPLETE.  0 WARNING(S),  0 ERROR(S)
    
    

    .