系统相关
首页 > 系统相关> > 物联网之实时操作系统-FreeRTOS(run in linux)

物联网之实时操作系统-FreeRTOS(run in linux)

作者:互联网

前言:了解FreeRTOS第一步肯定是搭建可以运行的环境,不管是移植到STM32还是哪里都阔以,有自己敲代码的实践总比只捧着书看来的印象深刻,所以为了方便,本猿查阅点资料,把FreeRTOS运行在linux上来方便学习!


本篇目标:搭建FreeRTOS可用的环境来运行,并学习基本的一些功能。
材料准备:


文件介绍

  1. 官方这份 FreeRTOS-simulator-for-Linux 资料demo里面包含了很多linux外设和FreeRTOS的使用,但是内核版本很低,很久没有往上迭代了,有些参数发生了变化,也不方便于最新版本的学习,所以只拿来作为移植的参考。
  2. 修改后的移植工程 Freertos_in_linux 借鉴了官方的移植,改变了一些编译结构,将demo分成不同的文件夹进行编译测试,同时将FreeRTOS的版本更新到了v10.2.1,方便与最新的进行同步学习了解。
.
├── output
├── Posix_GCC_Simulator
│   ├── FreeRTOS_Posix
│   │   ├── config.h				//demo 配置文件
│   │   ├── Debug					//demo 编译相关文件
│   │   ├── FreeRTOSConfig.h		//FreeRTOS 配置文件
│   │   ├── FreeRTOS_Kernel			//FreeRTOS 内核文件
│   │   ├── Release
│   │   └── study_demo				//demo 工程,直接脚本可以编译,待更新
│   │       ├── rtos_message_3
│   │       ├── rtos_sem_4
│   │       ├── rtos_start_1
│   │       └── rtos_task_2
│   └── Readme.txt
├── Posix_GCC_Simulator_6.0.4.zip
└── README.md

运行

# 编译
cd Posix_GCC_Simulator/FreeRTOS_Posix/study_demo/rtos_start_1/
sh build.sh

# 运行
./rtos_start_1_app.bin

# 清除
sh build.sh clean

运行输出

[13:18:49] jinhao:rtos_start_1 git:(master) $ ./rtos_start_1_app.bin 
[log ] main.c:79 | Freertos v10.2.1 start 
Running as PID: 9367
Timer Resolution for Run TimeStats is 100 ticks per second.
[log ] main.c:43 | creat_task
[log ] main.c:55 | this is creat task:idle-0
[log ] main.c:55 | this is creat task:idle-1
[log ] main.c:55 | this is creat task:idle-2
[log ] main.c:55 | this is creat task:idle-3
[log ] main.c:55 | this is creat task:idle-4
[log ] main.c:55 | this is creat task:idle-5
[log ] main.c:55 | this is creat task:idle-6
[log ] main.c:55 | this is creat task:idle-7
[log ] main.c:55 | this is creat task:idle-8
[log ] main.c:55 | this is creat task:idle-9
[log ] main.c:63 | delete creat task

小结

后续物联网的一些应用工程可以直接搭建在demo上面,毕竟linux的资源还是很足够的,用于了解协议数据还是比较方便快捷的。

Tuu

Tuu-锦浩 发布了15 篇原创文章 · 获赞 51 · 访问量 5万+ 私信 关注

标签:task,run,log,FreeRTOS,55,实时操作系统,creat,linux,main
来源: https://blog.csdn.net/q361750389/article/details/104105862