Hallo Zusammen, hat jemand schonmal die Motor Control Firmware Library von ST unter Coocox genutzt? Wenn ja wie funktioniert es und was brauche ich noch dazu außer der passenden Hardware? Gruß Steffen
das sind vorkompilierte Sourcen speziell als IAR-Projekt. Wenn du es hinbekommst hätte ich auch Interesse :-). Ich habe das mal mit Keil versucht und nicht hinbekommen. Reine C-Daten gibt STM leider nicht raus. (Stand mitte 2013) Greez Ert
Ich hätte auch Interesse :D Ich habs mit Atollic TrueStudio versucht und bin gescheitert :( Fürs erste könnte man sich jedoch die Demoversion von IAR herunterladen...
Hallo zusammen, ich bin auch gerade dabei... kann auch schon ein Projekt kompilieren, "nur" das linken funktioniert nicht. Ich bekomme einen haufen Fehler in der fogenden Art:
1 | [cc] C:\CooCox\CoIDE\workspace\mc_lib\UILibrary\src/UserInterfaceClass.c:438: undefined reference to `FOC_SetIdref' |
2 | [cc] C:\CooCox\CoIDE\workspace\mc_lib\UILibrary\src/UserInterfaceClass.c:284: undefined reference to `PID_SetKD' |
3 | [cc] C:\CooCox\CoIDE\workspace\mc_lib\UILibrary\src/UserInterfaceClass.c:303: undefined reference to `STO_GetObserverGains' |
4 | [cc] C:\CooCox\CoIDE\workspace\mc_lib\UILibrary\src/UserInterfaceClass.c:324: undefined reference to `STO_CR_GetObserverGains' |
5 | [cc] C:\CooCox\CoIDE\workspace\mc_lib\UILibrary\src/UserInterfaceClass.c:345: undefined reference to `STO_GetObserverGains' |
Ich vermute das die Funktionen in einer der Biblotheksdateien im
Verzeichniss: ...Project\EWARM\MC Library Compiled\Exe liegen.
Aber wenn ich die in den Linker einstellungen dazu schreibe (für mein
Projekt müsste es die MC_Library_STM32F303_dual_drive.a sein), gibts die
Fehlermeldung, das er die datei nicht öffnen kann.
[code]
[cc] arm-none-eabi-gcc -mcpu=cortex-m4 -mfpu=fpv4-sp-d16
-mfloat-abi=hard -mthumb -Wall -g -nostartfiles -Wl,-Map=blam1.map -Os
-Wl,--gc-sections -LC:\CooCox\CoIDE\configuration\ProgramData\blam2
-Wl,-TC:\CooCox\CoIDE\configuration\ProgramData\blam2/arm-gcc-link.ld -g
-o blam1.elf ..\obj\stm32f30x_opamp.o ..\obj\UITask.o
..\obj\stm32f30x_rcc.o
..\obj\USART_F30X_PhysicalLayerCommunication_Class.o
..\obj\stm32f30x_adc.o ..\obj\UserInterfaceClass.o ..\obj\stm32f30x_it.o
..\obj\stm32f30x_comp.o ..\obj\stm32f30x_gpio.o ..\obj\main.o
..\obj\Timebase.o ..\obj\stm32f30x_MC_it.o
..\obj\system_stm32f30x_temp.o ..\obj\syscalls.o ..\obj\stm32f30x_misc.o
..\obj\stm32f30x_tim.o ..\obj\startup_stm32f30x.o
..\obj\FrameCommunicationProtocolClass.o ..\obj\UIIRQHandlerClass.o
..\obj\stm32f30x_dac.o ..\obj\MotorControlProtocolClass.o
..\obj\stm32f30x_usart.o ..\obj\PhysicalLayerCommunication_Class.o
-L..\..\..\..\mc_lib\mc_lib\Debug\bin -lmc_lib -L..\..\..\..\mc_lib
-lmc_library_stm32f303_dual_drive
[cc] c:/programme/gnu tools arm embedded/4.8
2014q2/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/
ld.exe: cannot find -lmc_library_stm32f303_dual_drive
[code/]
Kann es sein, das es nicht funktioniert, weil die mit nem anderen
kompiler erstellt worden ist?
Leider scheinen davon auch nicht die Quellcodes zur verfügung zu stehen,
richtig??? :-(
Update:
das linken hat jetzt geklappt... es gibt nur noch eine Warnung:
[cc] c:/programme/gnu tools arm embedded/4.8
2014q2/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/bin/
ld.exe: warning:
..\..\..\..\mc_lib\libmc_library_stm32f303_dual_drive.a(IMFF_PMSM_FOCDri
veClass.o) uses 2-byte wchar_t yet the output is to use 4-byte wchar_t;
use of wchar_t values across objects may fail
leider funktioniert es noch nicht richtig. Wenn ich versuche die
Verbindung über die Motorcontroll Workbench herzustellen, gibt ein
connection failed. Ich arbeite übrigens mit dem IHM042v1 Eval board.
Jemand eine Idee?
LG
Falko
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.