Forum: Mikrocontroller und Digitale Elektronik Problem mit uVision und STM32 discovery


von stefan (Gast)


Lesenswert?

Hallo,

ich habe folgendes Problem mit uVision:

Nach dem Kompilieren wird kein Code ins Flash geladen, wenn ich auf 
"Download" klicke.
Das steht im Build-Output:
Load "C:\\Users\\Stefan\\Desktop\\Neuer 
Ordner\\Cortex_M3\\an3268\\stm32vldiscovery_package\\Project\\Demo\\MDK- 
ARM\\Debug\\DISCOVER.AXF"


Seltsamerweise wird der Code aber ins Flash geladen, wenn ich in den 
Debug Modus wechsle.

Bitte um Hilfe!


Ich verwende das STM32 Value Line Discovery und folgende uVision 
Version:

IDE-Version:
µVision V4.20.03.0
Copyright (C) 2011 ARM Ltd and ARM Germany GmbH. All rights reserved.

License Information:
Microsoft
Microsoft
LIC=----

Tool Version Numbers:
Toolchain:        MDK-Lite  Version: 4.20
Toolchain Path:    BIN40\
C Compiler:         Armcc.Exe       V4.1.0.644 [Evaluation]
Assembler:          Armasm.Exe       V4.1.0.644 [Evaluation]
Linker/Locator:     ArmLink.Exe       V4.1.0.644 [Evaluation]
Librarian:             ArmAr.Exe       V4.1.0.644 [Evaluation]
Hex Converter:      FromElf.Exe       V4.1.0.644 [Evaluation]
CPU DLL:               SARMCM3.DLL       V4.20
Dialog DLL:         DARMSTM.DLL       V1.62
Target DLL:             STLink\ST-LINKIII-KEIL.dll       V1.5.6
Dialog DLL:         TARMSTM.DLL       V1.60

von Robert B. (robertb)


Lesenswert?

Hi!

Das ist ein bekanntes Verhalten beim ST Discovery und dem ST Link in 
Verbindung mit Keil. Imho gibt es dafür keine Lösung - wie von dir 
richtig bemerkt funktioniert es aber über das Debugging problemlos.

Grüße
Robert

von thorstendb (Gast)


Lesenswert?

> Nach dem Kompilieren wird kein Code ins Flash geladen, wenn ich auf
> "Download" klicke.
> Seltsamerweise wird der Code aber ins Flash geladen, wenn ich in den
> Debug Modus wechsle.

Hi,

ich kenne den ST Link und seine Eigenarten nicht, das normale Verhalten 
von µVision ist aber:

Flash Download: Läd das Programm ins Flash

Project -> Options for Target:

-> Utilities
[x] Update Target before Debugging
flashed den Code neu, wenn er sich geändert hat seit der letzten Debug 
Session

-> Debug
[x] Load App at Startup
Läd die Applikation in den internen Speicher von µVision (läd u.a. auch 
Debug Symbole etc).

Soll eine App aus dem (externen) (S)RAM laufen, muss dieses Häkcken aus 
sein, und ein .ini file angegeben werden, in welchem gewisse 
Vorbereitungen vorgenommen werden (z.B. ExtRAM initialisiert) und die 
App geladen wird.
1
FUNC void Setup (void) {
2
  SP = _RDWORD(0x10000000);                          // Setup Stack Pointer
3
  PC = _RDWORD(0x10000004);                          // Setup Program Counter
4
  _WDWORD(0xE000ED08, 0x10000000);                   // Setup Vector Table Offset Register
5
}
6
7
LOAD Obj\Blinky.axf INCREMENTAL                      // Download
8
9
Setup();                                             // Setup for Running
10
11
/*g, main  */


VG,
/th.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.