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

uVision crashes when using ULINK

Hello.

I am using uVision and the codesourcery compiler for ARM cortex-3m. Target is STM32F103ZE on the ST eval board.

Project sompiles and links but when I attempt to download to flash or debug the code uVision crashes.

Any ideas?

Parents
  • I've used one of those ST boards:

    The ST-EVAL board doesn't need much to get it going. You just need to set up the "options" and check on the board settings... that's what I remember ... I think.

    (That is if you are using the ULINK JTAG emulator)

    I'm sure you've got this Project/Target section covered with 'codesourcery' but just in case you need to validate the setup, you might want to load up some example project....

    Projects -->  Options for Target 'Target'
    
    (or whatever your project name is... e.g.)
    Projects -->  Options for Target 'Murmur-Maker 2000'
    Projects -->  Options for Target 'Systole Snubber v7.39e'
    Projects -->  Options for Target 'Known Functional Example'
    
    

    TARGET (tab)

     Xtal (MHz): [ 8.0 ]
    [ ] Use Cross-Module Optimization
    [X] Use MicroLIB
    Operating system: [ None ]
    Read/Only Memory Areas
    default off-chip  Start     Size        Startup
    [ ]     ROM1   [           ][         ] [ ]
    [ ]     ROM2   [           ][         ] [ ]
    [ ]     ROM3   [           ][         ] [ ]
    
    [X]     IROM1: [ 0x8000000 ][ 0x80000 ] [X]
    [ ]     IROM2: [           ][         ] [ ]
    Read/Write Memory Areas
    default off-chip  Start     Size        NoInit NoInit?! = "How strange.
    [ ]     RAM1   [           ][         ] [ ] Why would anyone impose such a rule?"
    [ ]     RAM2   [           ][         ] [ ]  ('humour')
    [ ]     RAM3   [           ][         ] [ ]
    
    [X]     IROM1: [ 0x2000000 ][ 0x10000 ] [ ]
    [ ]     IROM2: [           ][         ] [ ]
    
    

    DEBUG (tab) Especially for the uVision ULINK thing...

    Debug Tab:
    
    [*] Use: ULINK Cortex Debugger  [Settings]
    [X] Load Application at Startup (up to you)
    [ ] Run to main( ) (up to you)
    Driver DLL:
    [ SARMCM3.DLL ]
    Parameter:
    [             ]
    Dialog DLL:
    [ TARMSTM.DLL ]
    Parameter:
    [ -pSTM32F103ZE ]
    


    DEBUG--->Settings
    DEBUG--->Settings-->Debug Tab

    
    [X] SWJ   Port: [SW]
         Max Clock: [5MHz]
    Connect: [Normal]         Reset [Autodetec]
    [X] Reset after Connect
    Cache Options
    [X] Cache Code      [ ] Verify Code Download
    [X] Cache Memory    [ ] Download to Flash
    

    DEBUG--->Settings-->Trace tab

    Core Clock [  72.000000 ] MHz
    [ ] Trace Enable  (up to you)
    


    DEBUG--->Settings-->Flash Download tab

    Download Function
    [ ] Erase Full Chip     [X] Program
    [X] Erase Sectors       [X] Verify
    [ ] Do not Erase        [ ] Reset and Run
    RAM for Algorithm
    Start: [ 0x20000000 ]  Size: [ 0x0800 ]
    Programming Algorithm
    ST32F10x 512kB Flash   on-chip Flash    512k   08000000H - 0807FFFFH
    Start: [ 0x08000000 ] Size [ 0x00080000 ]
    Note: use the 'Add' button to select it
    

    This should allow you to run some basic code. You will have to modify the settings to meet your specific needs, but this should 'work' enough for you to make sure it is possible to Flash and not crash.

    As far as board configuration settings... you'll have to make sure that your BOOT0 and BOOT1 switches are proper: both set to zero on the lab unit.

    Go through the "UM0488 User manual STM3210E-EVAL"

    www.st.com/.../14220.pdf

    and ensure that the jumpers are set for your needs.

    --Cpt. Vince Foster
    2nd Cannon Place
    Fort Marcy Park, VA

Reply
  • I've used one of those ST boards:

    The ST-EVAL board doesn't need much to get it going. You just need to set up the "options" and check on the board settings... that's what I remember ... I think.

    (That is if you are using the ULINK JTAG emulator)

    I'm sure you've got this Project/Target section covered with 'codesourcery' but just in case you need to validate the setup, you might want to load up some example project....

    Projects -->  Options for Target 'Target'
    
    (or whatever your project name is... e.g.)
    Projects -->  Options for Target 'Murmur-Maker 2000'
    Projects -->  Options for Target 'Systole Snubber v7.39e'
    Projects -->  Options for Target 'Known Functional Example'
    
    

    TARGET (tab)

     Xtal (MHz): [ 8.0 ]
    [ ] Use Cross-Module Optimization
    [X] Use MicroLIB
    Operating system: [ None ]
    Read/Only Memory Areas
    default off-chip  Start     Size        Startup
    [ ]     ROM1   [           ][         ] [ ]
    [ ]     ROM2   [           ][         ] [ ]
    [ ]     ROM3   [           ][         ] [ ]
    
    [X]     IROM1: [ 0x8000000 ][ 0x80000 ] [X]
    [ ]     IROM2: [           ][         ] [ ]
    Read/Write Memory Areas
    default off-chip  Start     Size        NoInit NoInit?! = "How strange.
    [ ]     RAM1   [           ][         ] [ ] Why would anyone impose such a rule?"
    [ ]     RAM2   [           ][         ] [ ]  ('humour')
    [ ]     RAM3   [           ][         ] [ ]
    
    [X]     IROM1: [ 0x2000000 ][ 0x10000 ] [ ]
    [ ]     IROM2: [           ][         ] [ ]
    
    

    DEBUG (tab) Especially for the uVision ULINK thing...

    Debug Tab:
    
    [*] Use: ULINK Cortex Debugger  [Settings]
    [X] Load Application at Startup (up to you)
    [ ] Run to main( ) (up to you)
    Driver DLL:
    [ SARMCM3.DLL ]
    Parameter:
    [             ]
    Dialog DLL:
    [ TARMSTM.DLL ]
    Parameter:
    [ -pSTM32F103ZE ]
    


    DEBUG--->Settings
    DEBUG--->Settings-->Debug Tab

    
    [X] SWJ   Port: [SW]
         Max Clock: [5MHz]
    Connect: [Normal]         Reset [Autodetec]
    [X] Reset after Connect
    Cache Options
    [X] Cache Code      [ ] Verify Code Download
    [X] Cache Memory    [ ] Download to Flash
    

    DEBUG--->Settings-->Trace tab

    Core Clock [  72.000000 ] MHz
    [ ] Trace Enable  (up to you)
    


    DEBUG--->Settings-->Flash Download tab

    Download Function
    [ ] Erase Full Chip     [X] Program
    [X] Erase Sectors       [X] Verify
    [ ] Do not Erase        [ ] Reset and Run
    RAM for Algorithm
    Start: [ 0x20000000 ]  Size: [ 0x0800 ]
    Programming Algorithm
    ST32F10x 512kB Flash   on-chip Flash    512k   08000000H - 0807FFFFH
    Start: [ 0x08000000 ] Size [ 0x00080000 ]
    Note: use the 'Add' button to select it
    

    This should allow you to run some basic code. You will have to modify the settings to meet your specific needs, but this should 'work' enough for you to make sure it is possible to Flash and not crash.

    As far as board configuration settings... you'll have to make sure that your BOOT0 and BOOT1 switches are proper: both set to zero on the lab unit.

    Go through the "UM0488 User manual STM3210E-EVAL"

    www.st.com/.../14220.pdf

    and ensure that the jumpers are set for your needs.

    --Cpt. Vince Foster
    2nd Cannon Place
    Fort Marcy Park, VA

Children