移植 freertos
以正点原子的跑马灯工程为基础,在上面扩展。在基础工程中新建一个名为 freertos 的文件夹:
创建 freertos 文件夹以后就可以将 freertos 的源码添加到这个文件夹中,添加完以后 如图所示:
portable 文件夹,我们只需要留下 keil、memmang 和 rvds 这三个文件夹,其他的都可以删除掉:
打开基础工程,新建分组 freertos_core 和 freertos_portable,然后向这两个分组 中添加文件
分组 freertos_core 中的文件就是 freertos 源码。freertos_portable 分组中的 port.c 和
heap_4.c ,port.c 是 rvds 文件夹下的 arm_cm3 中的文件,因为 stm32f103 是 cortex-m3 内核的,因此要选择arm_cm3 中的 port.c 文件。heap_4.c 是 memmang 文件夹中的,前面说了memmang 是跟内存管理相关的,里面有 5 个 c文件:heap_1.c、heap_2.c、heap_3.c、heap_4.c 和 heap_5.c。这 5 个 c 文件是五种不同的内存管理方法。这 5个文件都可以用来作为 freertos 的内存管理文件,只是它们的实现原理不同,各有利弊。这里我们选择 heap_4.c。
添加相应的头文件路径:
头文件路径添加完成以后编译一下,看看有没有什么错误,结果会发现提示打不开 “freertosconfig.h”这个文件
这是因为缺少 freertosconfig.h 文件,这个文件在哪里找呢?你可以自己创建,显然这不是一个明智的做法。我们可以找找 freertos的官方移植工程中会不会有这个文件,打开 freertos 针对stm32f103 的移植工程文件,文件夹是cortex_stm32f103_keil,打开以后官方的移植工程中有这个文件,我们可以使用这个文件,但是建议大家使用正点原子例程中的freertosconf.h 文件,这个文件是 freertos 的系统配置文件,不同的平台其配置不同。
freertosconfig.h 是何方神圣?看名字就知道,他是 freertos的配置文件,一般的操作系统都有裁剪、配置功能,而这些裁剪及配置都是通过一个文件来完成的,基本都是通过宏定义来完成对系统的配置和裁剪的。
区块链分散式互联网能给社会带来哪些好处
FPGA设计流程“又臭又长”?从eda工具理解超级简单!
Firefly关于转换模块介绍
e络盟与Dialog半导体签署新的经营协议,进一步拓展了无线产品线
智能汽车多传感器信息融合技术及应用
在STM32F103单片机上移植FreeRTOS
魅族Note9上手评测 值不值得买
高拍仪可满足各种的应用场景以及特殊需求
闻泰科技在第三季度成功扭亏为盈 净利润1452万元
三星提供的最新Galaxy Tab S7 +评测
专访南卡骨传导产品经理:骨传导将成为耳机行业新风口
单相异步电动机有几组定子绕组及绕组常出现的故障
锂离子电池充电为什么需要3个阶段?
5个步骤轻松学会用CAM做锣带文件
中国在这一领域将领先全球,正以30%增速成长
基于Buck芯片SCT2650的升降压解决方案
电动式时间继电器原理 电动式时间继电器受什么影响
亮相到交付时隔五年,为何FF量产延迟这么久?
AMEYA360签约顶源电子(TOPPOWER)授权代理!
4月17日,HarmonyOS开发者日将于上海启幕