Hallo liebe μC Gemeinde,
ich hab ein komisches Problem mit meiner Entwicklungsumgebung. Ich kann
keine Funktionen aus dem StdPreiph des STM32 aufrufen.
Mein System:
Board: Hitex STM32PerformanceStick
Betriebssystem: Ubuntu 14.04 LTS
IDE: Eclipse mit ARM-GCC-Toolchain und OpenOCD
Vorgeschichte:
Vor einer Weile hab ich ein Olimex-Board mit STM32 eingerichtet, jetzt
soll auch der PerformanceStick noch laufen.
Herangehensweise:
- Den Stick hatte ich relativ schnell mit ARM-GCC und OpenOCD
eingerichtet
- In Eclipse habe ich ein Template-Projekt (STM32f10x) vom ARM-GCC
Plugin benutzt um mir ein Projekt zusammenstellen zulassen
- Das erstellte Projekt ließ sich sofort builden und debuggen
- Nach ein paar kleinen Änderungen haben meine USER-LEDs dann auch
geblinkt (Port und Pins anpassen)
- jetzt wollte ich schauen, ob ich auch die Interrupts in die Reihe
bekomme und hab ein TIM-Beispielprojekt (TIM9 OC Toggle) von
http://stm32-spl-doc-online.esy.es/STM32F10x_StdPeriph_Lib_V3.5.0/stm32f10x_stdperiph_lib_um_html/index2.html
verwendet
Jetzt zum Problem:
- Der Linker kann keine Funktionen aus der stm32f10x_tim.c Source
aufrufen, obwohl sie im entsprechenden Header (stm32f10x_tim.h)
deklariert sind und der Header klassisch über #include stm32f10x_tim.h
in main.c eingebunden ist
- Weiterhin ist auch seltsam, dass Typdefinitionen aus dem Header
erkannt werden
- Auch die Möglichkeit sich vom Aufruf der Funktion in main.c in die
stm32f10x.h verweisen zu lassen funktioniert, dennoch ist ein rotes
Kreuz neben der Funktion und der Builder ist nicht gewillt seine Arbeit
zu machen
- Wenn ich die Zeilen auskommentiere funktioniert alles.
Es ist bestimmt was ganz banales, aber ich komm einfach nicht drauf...