从网上查到,这个工程是用gcc-
ARM-none-eabi-4_8+Cygwin64+ Makefile文件来实现编译的,Makefile文件里包含了多个工程,但是具体我也不懂,我没学过Makefile。
我最不喜欢的就是这个工程每次编译都要用命令行来编译,我觉得比较麻烦。
所以,我希望各位网友指教一下,如何把这个工程改成MDK工程,让我在MDK环境下也可以方便编译???
或者是把这个工程如何移植到eclipse,方便编译就行! 谢谢!!!
我悬赏30金币,希望各位网友可以帮忙解决我这个问题!
不管是哪一个芯片,有些文件是都需要添加进到你的工程中去的,这些公共文件是:build_config.c
version.c
$(TARGET_SRC)
config/config.c
config/runtime_config.c
common/maths.c
common/printf.c
common/typeconversion.c
main.c
mw.c
flight/altitudehold.c
flight/failsafe.c
flight/flight.c
flight/imu.c
flight/mixer.c
drivers/bus_i2c_soft.c
drivers/serial.c
drivers/sound_beeper.c
drivers/system.c
io/beeper.c
io/rc_controls.c
io/rc_curves.c
io/serial.c
io/serial_cli.c
io/serial_msp.c
io/statusindicator.c
rx/rx.c
rx/pwm.c
rx/msp.c
rx/sbus.c
rx/sumd.c
rx/sumh.c
rx/spektrum.c
rx/xbus.c
sensors/acceleration.c
sensors/battery.c
sensors/boardalignment.c
sensors/compass.c
sensors/gyro.c
sensors/initialisation.c
$(CMSIS_SRC)
$(DEVICE_STDPERIPH_SRC)
像$(TARGET_SRC) 这样的东西是makefile中的变量。在找的时候,$就是一个简单的字符,说明后面的东西是个变量,实际上在看的时候,只需要看$后面括号中的东西就行了。比如TARGET_SRC,也就是目标文件,在makefile中,找到了TARGET_SRC = $(notdir $(wildcard $(TARGET_DIR)/*.c)),也就是TARGET_DIR中的所有的.C文件,而这个Target是根据你的选择来设置的,具体的可以根据你的芯片来确定,具体的可以去看src/main/target里面的所有文件夹,根据你的芯片,将target文件夹中选择一个,把里面的所有源文件拷贝到你的工程中。
将源文件拷贝到工程的时候,不要忘记把对用的头文件添加到你的工程中,添加完之后,记得在你的KEIL中设置一下头文件的路径。
他的F303的芯片使用的是硬件浮点,你也可以在keil中设置硬件浮点,如果你的是103系列芯片,那就不用设置硬件浮点的,直接使用软件浮点就行。
工程中对应的.ld文件不用管,那是gcc用的,KEIL不需要使用。另外,记得把启动文件,那个汇编文件换掉。自己下载一个ST官方的库文件,找到里面的KEIL使用的启动文件,换掉工程中的启动文件。
根据你使用的芯片设置宏定义。这个就要具体看你的芯片了。
暂时就这些,如果还有不懂的地方,可以再下面评论,
一周热门 更多>