博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RTOS 在 stm32f407 探索者上的移植(二) FreeRTOS v9.0.0 移植
阅读量:4283 次
发布时间:2019-05-27

本文共 1677 字,大约阅读时间需要 5 分钟。

freertos 移植考虑最大的问题 是 	1.FreeRTOSConfig.h 的修改	2.内存管理方案的选择	3.编译方案及处理器的选择 : FreeRTOS/Source/portable/GCC/ARM_CM4F
  • freertos 代码下载
https://sourceforge.net/projects/freertos/files/FreeRTOS/代码托管网站上可以选择代码版本 //下载FreeRTOSv9.0.0.ziphttp://www.freertos.org/官方网站只能下载最新版,且为exe,运行exe会解压出代码
  • 基础代码为 中的代码

  • 移植过程1 文件复制

mkdir FreeRTOS_9_0_0/CORE -pcp ../FreeRTOSv9.0.0/FreeRTOS/Source/*.c FreeRTOS_9_0_0/COREmkdir FreeRTOS_9_0_0/PORT -pcp ../FreeRTOSv9.0.0/FreeRTOS/Source/portable/MemMang/heap_4.c   FreeRTOS_9_0_0/PORT #内存管理方案,有5个,选了heap_4cp ../FreeRTOSv9.0.0/FreeRTOS/Source/portable/GCC/ARM_CM4F/*  FreeRTOS_9_0_0/PORT    #因为是arm-gcc方案,所以选择了 GCC,因为是stm32f407,所以选择了ARM_CM4Fcp ../FreeRTOSv9.0.0/FreeRTOS/Demo/CORTEX_M4F_STM32F407ZG-SK/FreeRTOSConfig.h FreeRTOS_9_0_0/PORT/   #核心配置文件,因为是stm32f407,所以选择了 CORTEX_M4F_STM32F407ZG-SK
  • 文件修改,保证编译
FreeRTOS_9_0_0/PORT/FreeRTOSConfig.h87c87< #if defined (__ICCARM__)||defined(__CC_ARM) ||defined(__GNUC__)---> #ifdef __ICCARM__93,94c93,94< #define configUSE_IDLE_HOOK                           0< #define configUSE_TICK_HOOK                           0---> #define configUSE_IDLE_HOOK                           1> #define configUSE_TICK_HOOK                           1106c106< #define configCHECK_FOR_STACK_OVERFLOW        0---> #define configCHECK_FOR_STACK_OVERFLOW        2108c108< #define configUSE_MALLOC_FAILED_HOOK  0---> #define configUSE_MALLOC_FAILED_HOOK  1
  • 文件修改(只有一处,SysTick_Handler),保证运行
FreeRTOS_9_0_0/PORT/FreeRTOSConfig.h//#define xPortSysTickHandler SysTick_Handler // 注释该句 void SysTick_Handler(void) {
if (xTaskGetSchedulerState() != taskSCHEDULER_NOT_STARTED){
xPortSysTickHandler() } }

转载地址:http://tgngi.baihongyu.com/

你可能感兴趣的文章
PHP制作验证码
查看>>
常用的CSS Hack技术集锦
查看>>
IE 8兼容:X-UA-Compatible的解释
查看>>
关于form.submit()不能提交表单的错误原因
查看>>
初识HTML 5:关于它的三个三
查看>>
Canvas入门(1):绘制矩形、圆、直线、曲线等基本图形
查看>>
Canvas入门(2):图形渐变和图像形变换
查看>>
Canvas入门(3):图像处理和绘制文字
查看>>
《千与千寻》给读者带来了什么?
查看>>
JQuery笔记:JQuery和JavaScript的联系与区别
查看>>
PHP的MySQL扩展:PHP访问MySQL的常用扩展函数
查看>>
PHP实现分页:文本分页和数字分页
查看>>
博客收录集的源代码分享,需要那就快来吧
查看>>
杂谈:HTML 5的消息通知机制
查看>>
Ajax异步请求PHP数据
查看>>
百家搜索:在网站中添加Google、百度等搜索引擎
查看>>
关于坛友的一个布局问题的解答
查看>>
网页抓取:PHP实现网页爬虫方式小结
查看>>
国民岳父的“屁民理论”
查看>>
我为什么要写博客?
查看>>