[APM32E1] APM32E103 FreeRTOS适配

[复制链接]
1240|6
 楼主| lc115647 发表于 2024-11-25 17:09 | 显示全部楼层 |阅读模式
1、认识FreeRTOS源码
1.1 Demo文件
文件夹里面是 FreeRTOS 的相关例程,其中有不同MCU的不同例程,可以选STM32F103作为参考例程
    1732525467614.jpg
1.2 License文件
  这个文件夹里面就是相关的许可信息,要用 FreeRTOS 做产品的得仔细看看。可以忽略
1.3 Source文件
1732525494739.jpg
include 文件夹是一些头文件,移植的时候是需要的;
下面的 .C  文件是 FreeRTOS 的源码文件,移植的时候是需要的;
portable 文件夹里面的东西是 FreeRTOS 系统和具体的硬件之间的连接桥梁。不同的编译环境,不同的 MCU,其桥梁应该是不同的,一般就用到下面5个文件夹里面的文件。
GCC、IAR、Keil 对应的是不同编译环境
MenMang 内存管理
RVDS MDK编译环境需要的文件
1732525518694.jpg
2、移植FreeRTOS源码
在keil下面添加以下公用文件
1732525568976.jpg
使用AC5编译时, port.c文件选择路径可以选择RVDS下面的ARM_CM3内核即可,同时加载相应路径下的头文件即可
1732525590708.jpg
使用AC6编译时, port.c文件选择路径建议选择GCC下面ARM_CM3内核即可,同时加载相应路径下的头文件即可,AC5和AC6语法规则上面会有很大的区别,使用RVDS下面的文件编译时类似下面的汇编写**报错。
1732525627045.jpg
1732525632195.jpg





神话编织者 发表于 2025-5-31 17:17 | 显示全部楼层
楼主  在移植E103的时候,选择AC6的话会出现什么情况啊?
有什么解决办法吗?
天体书记 发表于 2025-5-31 18:00 | 显示全部楼层
现在国内RT-Thread实时操作系统很是火。不考虑一下?
 楼主| lc115647 发表于 2025-6-12 21:13 | 显示全部楼层
神话编织者 发表于 2025-5-31 17:17
楼主  在移植E103的时候,选择AC6的话会出现什么情况啊?
有什么解决办法吗?
...

AC6的语法有区别,会报错
 楼主| lc115647 发表于 2025-6-12 21:13 | 显示全部楼层
天体书记 发表于 2025-5-31 18:00
现在国内RT-Thread实时操作系统很是火。不考虑一下?

SDK里面也有示例
神话编织者 发表于 2025-7-17 19:55 | 显示全部楼层
lc115647 发表于 2025-6-12 21:13
AC6的语法有区别,会报错

发现了。
现在老的项目也不想维护了,仍然使用了AC5来凑合着用呢
黄昏收获 发表于 2025-7-21 15:23 | 显示全部楼层
还是FreeRTOS的移植简单,加速项目开发了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

20

主题

29

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部