[应用相关]

FreeRTOS IO移植

[复制链接]
1072|13
手机看帖
扫描二维码
随时随地手机跟帖
纪国圣|  楼主 | 2020-4-5 08:57 | 显示全部楼层 |阅读模式
本帖最后由 纪国圣 于 2020-4-5 09:01 编辑

FreeRTOS IO是FreeRTOS下的一个功能组件,为用户提供一种类似于POSIX的外设驱动框架。
官网关于FreeRTOS IO介绍如下:
介绍.png
介绍2.png
官网上有关于FreeRTOS IO的使用例程,但基于的是LPC1769单片机。因此本帖以此为蓝本,介绍如何将FreeRTOS IO移植到STM32上。
硬件平台为STM32F429-Nucleo
软件平台为STM32CubeMXv5.5+keilv5(采用零级优化
                HAL库版本为V1.25
                FreeRTOS版本为10.2.1
本例程是在已移植好FreeRTOS的例程上修改。
首先解压LPC1769_FreeRTOS_Plus_Featured_Demo_002.zip文件,将LPC1769_FreeRTOS_Plus_Featured_Demo_002\FreeRTOS-Products\FreeRTOS-Plus-IO文件拷贝至工程中。
文件结构.png
其中Device和使用的硬件平台相关,为本次修改重点,其余的文件为FreeRTOS IO的源码,修改较少。
添加头文件路径和.c文件:
1.png
2.png
3.png
先屏蔽串口中断和初始化:
4.png
5.png
然后修改以下文件:
8.png
FREERTOS_DRIVER_INTERFACE配置.png
FreeRTOS_DriverInterface配置.png
FreeRTOS_IO_BSP配置.png
FREERTOS_IO_CONFIG配置.png
FreeRTOSConfig配置.png
STM32F4xx_base_board配置.png
FreeRTOS_STM32F4xx_uart.c的修改请见具体文件。
然后开一个任务,写一个非常简单的例程验证移植是否正确:
示例.png
效果如下:
7.png 通过发送字符串,可以看到开发板上的灯闪烁。
注意,在编译过程中会出现警告,按下图配置忽略警告:
6.png
至此移植完成。
官网源码: LPC1769_FreeRTOS_Plus_Featured_Demo_002.zip (1.09 MB)

使用特权

评论回复
纪国圣|  楼主 | 2020-4-12 11:10 | 显示全部楼层
大家平时不用FreeRTOS的其他组件做开发吗?

使用特权

评论回复
磨砂| | 2020-5-6 16:26 | 显示全部楼层
非常感谢楼主分享

使用特权

评论回复
晓伍| | 2020-5-6 16:27 | 显示全部楼层
英文的也看不明白啊

使用特权

评论回复
八层楼| | 2020-5-6 16:27 | 显示全部楼层
有截图  很清晰

使用特权

评论回复
观海| | 2020-5-6 16:28 | 显示全部楼层
非常不错的资料

使用特权

评论回复
一直填填| | 2022-6-24 16:48 | 显示全部楼层
mask一下

使用特权

评论回复
sadicy| | 2022-6-26 11:05 | 显示全部楼层
感觉你们做移植,怎么这么轻松

使用特权

评论回复
juliestephen| | 2022-7-10 14:09 | 显示全部楼层
这个IO是什么组件   

使用特权

评论回复
kkzz| | 2022-7-10 15:06 | 显示全部楼层
FreeRTOS没有用到这一步呢。   

使用特权

评论回复
sanxingnote7| | 2022-7-10 17:23 | 显示全部楼层
有开发FreeRTOS的教程吗?  

使用特权

评论回复
jimmhu| | 2022-7-10 19:16 | 显示全部楼层
POSIX是总线的吗   

使用特权

评论回复
hearstnorman323| | 2022-7-10 21:31 | 显示全部楼层
谢谢楼主分享的资料了。   

使用特权

评论回复
rosemoore| | 2022-7-24 22:04 | 显示全部楼层
如何自定义组件?   

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

77

主题

401

帖子

5

粉丝