FreeRTOS入门-qemu运行及资料
先介绍一个模拟树莓派3的qumu可以运行的一套FreeRTOS代码可以用于学习FreeRTOS。1. 代码下载gitclonehttps://github.com/eggman/FreeRTOS-raspi32. gcc编译器下载安装打开网址https://developer.arm.com/downloads/-/gnu-a点击后下载执行下面解压命令解压到~/bin文件下这样就有了aarch64 工具链然后添加环境变量在~/.bashrc中添加PATH~/bin/gcc-arm-10.3-2021.07-x86_64-aarch64-none-elf/bin:${PATH}关闭当前终端重新打开一个或者执行source ~/.bashrc立即生效.3. 编译代码目录执行make4. 运行代码目录执行make run以上运行的模拟树莓派3 Xilinx Cortex-A53平台。5. FreeRTOS学习资料推荐freeRTOS中文文档https://www.bookstack.cn/read/freeRTOS_Document/readme.md用户指南、移植指南、API等https://docs.aws.amazon.com/zh_cn/freertos/?iddocs_gatewaycsdn系列文档https://blog.csdn.net/zhzht19861011/category_9265276.html野火资料资料https://doc.embedfire.com/rtos/freertos/zh/latest/zero_to_one/creating_project.html视频https://www.bilibili.com/video/av57449565/?p2spm_id_frompageDriver6. AS平台中的FreeRTOSAS系统运行起来的时候我们可以看到下面打印InitOS就是初始化RTOSStart OS就是运行OS首先看下代码中这两个函数都在as/com/as.infrastructure/system/kernel/Os.h中有定义用到RTOS的代码都需要通过Os.h中的声明然后再分发到某种类型的RTOS实现Os.h是RTOS和跑在其上面的应用代码的中介屏蔽了各种RTOS的差异是各种RTOS接口的一种抽象然后具体使用那种RTOS在编译脚本中设计具体为as/com/as.infrastructure/system/kernel/SConscript这个MODULES例如我们使用的x86平台上一节我们提到了怎么新加TASKFreeRTOS入门-概念介绍OS与AUTOSAR研究FreeRTOS入门-概念介绍#include“OS.h”TASK(BasicTask){.../*User Code*/...TerminateTask();}之前一个文章AUTOSAR入门-SoAd模块和TcpIp模块AUTOSAR入门-SoAd模块和TcpIp模块3.1节里面就有接收网络报文的TASK更深入的机制还没研究另外AS中现在使用的是ASKAR的RTOS不是FreeRTOS想在AS中运行起来的可以尝试下。或者把最新的Acrcore代码移植到FreeRTOS上也可以尝试。后记FreeRTOS的一些资料分享给大家写的很简略需要的自取。个人文章汇总https://thatway1989.github.io