三 AIR32F103 Linux环境基于标准外设库的项目模板( 二 )


printf 无法输出浮点数printf输出浮点数默认是关闭的, 打印浮点无输出. 可以在TGT_LDFLAGS中增加选项 -u _printf_float 开启, 开启后会明显增加二进制程序尺寸.
TGT_LDFLAGS += $(ARCH_FLAGS) -specs=nano.specs -specs=nosys.specs -static -lc -lm \-u _printf_float \-Wl,-Map=$(BDIR)/$(PROJECT).map \-Wl,--gc-sections \-Wl,--print-memory-usage开启后, 连接时会检查_getpid(void)_kill(pid_t pid, int sig)这两个函数是否定义, 如果没定义会报warning.
对FreeRTOS的支持运行 Examples/FreeRTOS 目录下的例子时, 需要在 Makefile 中开启对 FreeRTOS 的支持, 将需要下面的配置改为y
# Build with FreeRTOS, y:yes, n:noUSE_FREERTOS ?= n切换不同的MCU型号Makefile默认配置的是 AIR32F103CBT6 的编译选项, 如果需要切换到CCT6和RPT6, 需要在Makefile中修改两处
# CCT6不用改, RPT6需要修改为 STM32F103RBJLINK_DEVICE ?= STM32F103CB...# 对应的修改为 air32f103cct6.ld 和 air32f103rpt6.ldLDSCRIPT= Libraries/LDScripts/air32f103cbt6.ld

经验总结扩展阅读