FreeRTOS 移植到STM32记录

  • 源码下载

      移植前的准备工作,打开FreeRTOS源码下载链接,如图所示:是一个压缩包,解压出来大概有300M,不过不是所有的都需要。

      将FreeRTOS源码下载到你的电脑中,解压完后打开FreeRTOS文件,可以看到有三个文件夹 Demo、License和Source,从名字上就可以大概猜到这三个文件的作用。 

  •  新建工程

          新建一个不包含中文路径的文件夹名字为FreeRTOS,如下图所示:

       

    FreeRTOS文件夹内容如下图所示:

  

 打开工程,将相关的文件添加到工程中,完成后的树状图如下所示:

其中heap_4.c文件的路径是 FreeRTOS\FreeRTOSV9.0.0\FreeRTOS\Source\portable\MemMang,port.c件的路径是 FreeRTOS\FreeRTOSV9.0.0\FreeRTOS\Source\portable\RVDS\ARM_CM3.

  • 工程编译

文件添加到这里就结束了,进行第一次编译,如果不做更改的话可以看到Build output框的报错信息:

        原因很明显,就是 芯片的 空间不足。解决方法是  在KEIL 的DEVICE中选择 更大的空间的芯片型号,或者尝试减少工程内不必要的*.c文件,因为我实验的芯片型号是stm32f103RB,flash比较小只有128KB,根据从网上找到的办法,我都试了还是报同样的错误,大致意思都是从优化代码所用的空间来解决,最后我是通过更改系统所占用的堆大小来解决的,在文件FreeRTOSConfig.h中第121行更改,修改过后,一切正常,望我的经验能帮到你。

 

猜你喜欢

转载自www.cnblogs.com/XBbox/p/12457485.html