FreeRTOS的学习经历(1)移植C8T6

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:

根据网上多位老师的教程移植成功,后面包含了一些自己的报错和解决方法
这是我移植后的文件,移植过程中有些文件太长直接从这里复制就好
链接:https://pan.baidu.com/s/1dmsXzC5_gTP8HNdoKOlpTQ?pwd=1111
提取码:1111


提示:以下是本篇文章正文内容,下面案例可供参考

一、下载FreeRTOSV9.0.0

点击:FreeRTOS

在这里插入图片描述
在这个页面等一会就会自动下载

在这里插入图片描述
解压后是这样的
在这里插入图片描述

二、开始移植

1.随便找一个文件

我直接使用的是江科大的OLED,方便后面调试
不放源码了,没有的可以去b站搜索一下留个三联吧!
在这里插入图片描述
解压出来是这样的
在这里插入图片描述

2.新建文件夹FreeRTOS/port

打开FreeRTOS文件下的Source
在这个文件里找到下面两个文件,复制到FreeRTOS/port里面加粗样式
**
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
然后把include和下面的.c文件复制过来
结果是这样的(和全复制长得也差不多哈哈)
在这里插入图片描述

3.复制FreeRTOSConfig.h

粘贴在无所谓,我习惯在user里
(这个文件就是基本配置文件,刚学没多久,我也不是很会配置,借用网上开源的一个文件)
从开头给的百度网盘里面找,在USER文件里
在这里插入图片描述

4.复制system文件

我放在FreeRTOS文件里面了,复制到你自己的工程下
在这里插入图片描述

三、在工程里进行添加

1.添加文件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述添加路径
就是上面.c文件对应的.h文件所在位置

在这里插入图片描述

2.编译

很好,现在有两个错误
在这里插入图片描述
这个是因为FreeRTOS自带了这两个函数,需要我们注释掉原来的函数
在stm32f10x_it.c里找到下面两个函数
SVC_Handler
PendSV_Handler
在这里插入图片描述
现在编译就没错误了
但是这还没完,还没有写中断函数
SysTick_Handler
找到这个函数进行编写
在这里插入图片描述

extern void xPortSysTickHandler(void);
void SysTick_Handler(void)
{
	if(xTaskGetSchedulerState()!=taskSCHEDULER_NOT_STARTED)//xTaskGetSchedulerStateÅжÏϵͳÊÇ·ñÒѾ­ÔËÐÐ
    {
        xPortSysTickHandler();	
    }
}

然后添加头文件

#include "stm32f10x_it.h"
#include "FreeRTOS.h"		//FreeRTOSʹÓÃ		  
#include "task.h" 

好了,现在基本使用就OK了
动态创建下次更新~

  • 15
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值