STM32CUBE+KEIL+FREERTOS+LWIP+Compiler V6使用方法

解决STM32CUBE+FREERTOS+LWIP+Compiler V6编译错误的方法
2019年5月22日
0 前言:
使用STM32CUBE+KEIL默认Compiler V5编译Freertos+Lwip异常慢,CPU占用过高,电脑卡顿,新出的Compiler V6能大幅度提升编译速度,故研究更换编译器。
1 所用版本和例子MCU
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、CUBE使能FREERTOS CMSIS_V1 和LWIP后,生成KEIL代码打开
此时使用默认的CompilerV5编译,时间为4分43秒,电脑为I5 7代
在这里插入图片描述

3、修改为CompilerV6编译器编译
3.1替换文件port.c portmacro.h
CUBE生成的port.c portmacro.h不支持GNU,内部有大量的内联汇编,需更换为GCC版本
在这里插入图片描述
将freertos源码中的GCC/ARM_CM4F内的port.c portmacro.h替换到项目目录
在这里插入图片描述

3.2修改keil选项
在这里插入图片描述
在这里插入图片描述

-D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -D__NOINLINE="__attribute__ ( (noinline) )"

此时编译,如只有FREERTOS没有LWIP则能编译通过了

3.3修改LWIP相关代码
注释掉
在这里插入图片描述
增加宏定义
在这里插入图片描述
修改LWIP代码主要就是增加
#define __CC_ARM
有网友知道其他方法如在KEIL里直接配置???请留言???
4、编译
freertos+lwip总用时31s,如果单独freertos更快,约15S
在这里插入图片描述

联系QQ 117013107
如对你有帮助,欢迎留言

  • 7
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值