Gast
#3265596
Hallo zusammen, ich programmiere für einen STM32F103 Microcontroller. Meine Programmierumgebung besteht aus: - Eclipse Juno - CDT GCC Cross Compiler Support - Codesourcery G++ arm-2013.05 oder arm-2010q1 - ST-Link GDB server 1.4.0 - ST-Link V2 Debugger Mein Quellcode lässt sich fehlerfrei compilieren und linken. Die Ausführung ist grundsätzlich auch kein Problem. Lediglich bei der Ausführung einer Float-Operation bzw. beim Deklarieren einer Float-Variablen geht der uC in den HardFault-Handler. Der uC hat keine FPU und deshalb compiliere und linke ich mit dem Flag -mfloat-abi=soft (ist so an verschiedenen Stellen des Webs so beschrieben.). Ich habe inzwischen alle Beiträge im Web gelesen, die ich zu dem Thema finden kann. Allerdings hilft mir bisher nichts weiter. Ich habe schon alles ausprobiert, das irgendwo beschrieben ist. Meine Beispiel-Quellcodezeile sieht wie folgt aus: uint32_t Var = 100; float Result = ((float)Var / 10.0); Meine Compiler-Flags sind: -c -mcpu=cortex-m3 -mthumb -mfloat-abi=soft -std=gnu99 -ffunction-sections -fdata-sections -fmessage-length=0 Meine Linker-Flags sind: -T${ProjDirPath}\stm32_128k_20k_flash.ld -mcpu=cortex-m3 -mfloat-abi=soft -mthumb -ffunction-sections -fdata-sections -Wl,--gc-sections -static Hat jemand eine Idee wo das Problem liegen könnte? Ich bin für jeden Tipp dankbar. Viele Grüße Marco