获取freertos 模拟器源码一共有2种途径,一个是托管的(例子多,简单,各例子独立 ),一个是官方的(复杂):
托管的(下载了可以直接用):https://udomain.dl.sourceforge.net/project/freertos/FreeRTOS/V9.0.0/source-code-for-book-examples.zip
官方的:
- 下载代码
- 需要下载 2 份代码,每个代码都是一个仓,分别是
- FreeRTOS
- FreeRTOS-Kernel
- 对于模拟器而言, FreeRTOS是主工程, FreeRTOS-Kernel 是依赖项,这里需要注意一点:依赖项用的都不是最新的代码节点,具体节点在下能看到:
- 下载freertos ,可以直接用 git 下载GitHub - FreeRTOS/FreeRTOS: 'Classic' FreeRTOS distribution. Started as Git clone of FreeRTOS SourceForge SVN repo. Submodules the kernel.'Classic' FreeRTOS distribution. Started as Git clone of FreeRTOS SourceForge SVN repo. Submodules the kernel. - GitHub - FreeRTOS/FreeRTOS: 'Classic' FreeRTOS distribution. Started as Git clone of FreeRTOS SourceForge SVN repo. Submodules the kernel.
https://github.com/FreeRTOS/FreeRTOS.git, 如果没有git,可以下载 zip 包,2种方式下载的都没有依赖仓。
- 下载 剩余的 依赖仓代码,直接点击 2 中的依赖项链接,就能跳转到对应仓库的对应节点,把 zip 包 下载下来,并解压,整体代码如下:
- 需要下载 2 份代码,每个代码都是一个仓,分别是
- 移动代码到固定位置
- 将 FreeRTOS-Kernel 的所有代码放到 lFreeRTOS-main\FreeRTOS\Source;
- 整体如图;
- 运行 sln 文件
- 运行 FreeRTOS-main\FreeRTOS\Demo\WIN32-MSVC\WIN32.sln 工程文件
- 运行 FreeRTOS-main\FreeRTOS\Demo\WIN32-MSVC\WIN32.sln 工程文件
- demo 修改
- 整个工程的入口
- 在main函数里有2个例子的分支,一个是简单的,一个是复杂的,简单的是main_blinky(), 复杂的是 main_full(), 用宏 mainCREATE_SIMPLE_BLINKY_DEMO_ONLY 隔开,可以将 此宏 改为 1, 运行简单的例子看看效果
- 整个工程的入口