IAR软件移植FreeRTOS操作系统软件
1、 前言
1.1 FreeRTOS操作系统的移植,自己在移植过程中遇到的一些问题。将它记录下来,希望对读者有帮助。大家共同成长
1.2 FreeRTOS有官方的源码,但是太过于庞大不适合我们用。
2、准备
从FreeRTOS官方下载一份源码,到本地。
说明:FreeRTOS官方源码地址:https://www.freertos.org/a00111.html
下载FreeRTOS源码的版本,图片来自FreeRTOS官方的页面
3、先展示一下结果,移植完的代码目录结果,编译无错误无警告。
3.1 代码结果目录
3.2 编译无错误无警告
4、现在我们正式开始移植
1、在本地IAR工程新建一个FreeRTOS,由于我这里写的有误RTOS
本地下载FreeRTOS关于源码
2、移植source中的文件夹,将官方源码中source目录源码全部移植到我们建立的IAR工程FreeRTOS文件中。
3、在本地IAR工程中RTOS中portable进行裁剪,只保留以下两个文件夹。
IAR:IAR软件启动的文件
MemMang:内存管理的源代码
4、在IAR软件中新建两个组,并添加文件。这两个组FreeRTOS_CORE和FreeRTOS_PORTABLE
4.1 FreeRTOS_CORE组
4.2 FreeRTOS_PORTABLE
由于我是用的stm32f4xx的系列在移植FreeRTOS源码选择CM4F相关的文件。
memMangs是内存管理中,我选择heap_4.c,至于其他几个没有细看了。
5、在IAR软件添加头文件
6、开始编译。
1、FreeRTOSConfig.h 找不到。
这是因为缺少FreeRTOSConfig.h文件,我们也可以自己创建,这不是明智的选择。我们选择从官网源码中寻找。
它是FreeRTOS的配置文件,一般都是操作裁剪,配置通过此文件完成。通过宏实现的。
2、重复定义
这是由于 port.c 中与 stm32f4xx_it.c ,都有关于三个函数 SVC_Handler PendSV_Handler SysTick_Handler定义,所有我们屏蔽 stm32f4xx_it.c的三个。
3、 hook相关的函数
修改前
修改后的
这些报错的函数末尾都是以 hook结尾的,这是因为freertosconfig.h 开始了这些函数。我们关闭就可以了 configUSE_IDLE_HOOK configUSE_TICK_HOOK configUSE_MALLOC_FAILED_HOOK configCHECK_FOR_STACK_OVERFLOW 将他们设置为0
修改之后再次编译,发现没有报错。
注:
1、若有侵权,请联系作者删除。
2、欢迎各位点评,在评论区留言。
3、期待你的点赞,是对作者最大的鼓励
IAR软件移植FreeRTOS操作系统软件相关推荐
- 在做嵌入式开发的时候难免手抖,IAR软件窗口恢复操作
- 转发:stm32 移植 freertos
原链接:http://www.51hei.com/bbs/dpj-106526-1.html 看到一篇stm32移植freertos的文章,讲述的最完整. 前言: 由于之前听过太多人抱怨移植FreeR ...
- FreeRTOS学习及移植笔记之二:在IAR和STM32F103VET上移植FreeRTOS
上一次,我们简单的测试了FreeRTOS的基于IAR EWARMv6.4和STM32F103VET6平台的Demo,对其有了一个基本认识.接下来我们开始自己移植FreeRTOS的过程. 1.创建 ...
- 正版软件 |Windows 10 家庭版操作系统软件 终身授权
正版Windows 10 家庭版操作系统,一款非常适合家庭用户的操作系统,它综合了多个功能和特性,提供更好的用户体验和更高的可靠性,是完美地适应于家庭和教育高校等各种使用场景. Windows 10 ...
- Cortex M33处理器下移植FreeRTOS V10.2.0的操作记录
1.前言 本文记录了本人使用Keil V5.28向Cortex M33处理器下的一款MCU进行FreeRTOS V10.2.0的移植操作,过程中描述如存在不当或错误之处欢迎指正. 2.FreeRTOS ...
- 【正版软件】Windows 11/10 专业工作站版操作系统软件 终身使用,支持迁移。
使用人群:数据科学家.CAD 专业人员.研究人员.媒体制作团队.平面设计师和动画师 Windows 11/10 专业工作站版操作系统软件,专为具有高级工作负载和数据需求的人设计. Windows 11 ...
- stm32f429igt6跑linux,TouchGFX在STM32F429IGT6上的移植(FreeRTOS版本)
TouchGFX在STM32F429IGT6上的移植(FreeRTOS版本) TouchGFX在STM32F429IGT6上的移植(FreeRTOS版本) 目录 一.移植环境 二.应用框架 三.Tou ...
- GD32F407 移植FreeRTOS+Lwip
文章目录 移植过程 移植FreeRTOS 源码拷贝 FreeRTOSConfig.h 注意事项 移植LWIP 源码拷贝与编译 初始化 移植过程 freeRTOS V10.4.5 下载 https:// ...
- IAR中移植UCOS II系统以及sourceInsight 使用
ucos 学习笔记 1 sourceInsight 使用 CSDN参考链接 新建工程 第一步:project中new project 第二步:在高亮部分输入工程的地址,工程文件夹与IAR工程文件夹放在 ...
- 操作系统软件层次结构及硬件资源管理能力设计
先阅读计算机硬件结构历史简介: https://blog.csdn.net/starcraft501/article/details/100806378 操作系统层次结构 操作系统软件可以分为两部分: ...
最新文章
- 长春8中2021年高考 成绩查询,长春八中2018高考喜报成绩、本科重本上线人数情况...
- 手把手教你入门和实践特征工程 的全方位万字笔记,附代码下载
- T-SQL 实用函数总结
- 目前网络时间服务有哪几种协议?
- 关联规则mlxtend的应用
- 若依启动sentinel教程
- 双击背面截图_如何通过点击iPhone背面快速截图,只需一个简单设置
- 团队作业第六次-团队Github实战训练
- oracle优化方法,九大Oracle性能优化基本方法详解
- ADNI影像数据解析及下载
- eplan p8详细安装步骤文库_EPLAN_P8_2.1.6 安装步骤
- 应届生比老员工更吃香?为什么大厂都在抢应届生
- ubuntu 下使用unixbench 这种benchmark 工具测试系统性能
- 大数据发展前景及发展战略分析
- 什么是网易企业邮箱客户端专有协议?
- python中fun函数求1+2…+n_功能:编写函数fun求1!+2!+3!+ …… +n!的和,在main函 数中由键盘输入n值,并输出运算结果。请编写fun 函数...
- Python读取中文路径时的处理
- 周转时间,平均周转时间,带权周转时间
- 获取手机屏幕上点击位置的坐标
- duet二重奏hp_《二重奏》Duet
热门文章
- ReactNative配合node.js实现的公司通讯录管理app
- java IO流:字节流、字符流
- 手机CAD如何快速看图下载?
- android autolayout教程,Android中AutoLayout的使用
- LaTeX数学符号大全
- python调用arcpy函数_AGS Python开发-ArcPy开发基础
- 韩顺平--Java坦克大战
- Chrome谷歌浏览器登入指引
- 如何在HTML中输入英语音标符号,电脑上如何输入国际音标?
- sob攻略超详细攻略_【五一四天旅游攻略】凤凰古城和长沙旅游攻略,超详细!可以参考...