你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

FreeRTOS V8.1.2移植到Cortex-M0(STM32F042C6)

[复制链接]
Dylan疾风闪电 发布时间:2014-9-24 15:40
自己DIY了一块STM32F042C6的DemoBoard。
一天突发奇想,想要把FreeRTOS移植到板子上。
头一次移植,苦恼于网上找不断Keil CM0 下移植的直接例程,程序调试也老是在xTaskCreate失败。
 
今天程序终于调好了,能够开始跑FreeRTOS了。
程序功能:
1.LED指示灯
2.USART1 & USART2  中断接收,轮询发送
3.CAN 中断接收,轮询发送
 
4.RTC
 
献上代码,请多指点。
 
代码未经整理,比较乱,请各位看官见谅。(该文件可直接导入eclipse C/C++工程,方便浏览。)
FreeRTOS-STM32CM0-Demo.rar (592.1 KB, 下载次数: 819)
收藏 4 评论18 发布时间:2014-9-24 15:40

举报

18个回答
Dylan疾风闪电 回答时间:2014-9-24 16:00:26

RE:FreeRTOS V8.1.2移植到Cortex-M0(STM32F042C6)

移植很简单,核心是不断调整FreeRTOSConfig.h配置到合适的参数。
--------------------------------------
#define configUSE_PREEMPTION                                                1
#define configUSE_IDLE_HOOK                                                        0 
#define configUSE_TICK_HOOK                                                        0 
#define configCPU_CLOCK_HZ                                                        ( ( uint32_t ) 48000000 )
#define configTICK_RATE_HZ                                                        ( ( TickType_t ) 1000 ) 
#define configMAX_PRIORITIES                                                ( ( unsigned portBASE_TYPE ) 10 ) 
#define configMINIMAL_STACK_SIZE                                        ( ( unsigned short ) 60 ) 
#define configTOTAL_HEAP_SIZE                                                ( ( size_t ) ( 3400 ) )                        /* 计算入Keil-ZI. */
#define configMAX_TASK_NAME_LEN                                                ( 16 )
#define configUSE_TRACE_FACILITY                                        1
#define configUSE_16_BIT_TICKS                                                0
#define configIDLE_SHOULD_YIELD                                                1
#define configUSE_MUTEXES                                       1
#define configQUEUE_REGISTRY_SIZE                                        8
#define configCHECK_FOR_STACK_OVERFLOW                                0
#define configUSE_RECURSIVE_MUTEXES                                        1
#define configUSE_MALLOC_FAILED_HOOK                                0
#define configUSE_APPLICATION_TASK_TAG                                0
#define configUSE_COUNTING_SEMAPHORES                                1
#define configGENERATE_RUN_TIME_STATS                                0
/* Co-routine definitions. */
#define configUSE_CO_ROUTINES                                                 0
#define configMAX_CO_ROUTINE_PRIORITIES                         2
/* Software timer definitions. */
#define configUSE_TIMERS                                                        1
#define configTIMER_TASK_PRIORITY                                        ( 2 )
#define configTIMER_QUEUE_LENGTH                                        5
#define configTIMER_TASK_STACK_DEPTH                                ( 80 )
/* Set the following definitions to 1 to include the API function, or zero
to exclude the API function. */
#define INCLUDE_vTaskPrioritySet                                        1
#define INCLUDE_uxTaskPriorityGet                                        1
#define INCLUDE_vTaskDelete                                                        1
#define INCLUDE_vTaskCleanUpResources                                1
#define INCLUDE_vTaskSuspend                                                1
#define INCLUDE_vTaskDelayUntil                                                1
#define INCLUDE_vTaskDelay                                                        1

/* Normal assert() semantics without relying on the provision of an assert.h
header file. */
#define configASSERT( x )                                                         if( ( x ) == 0 ) { taskDISABLE_INTERRUPTS(); for( ;; ); }
沐紫 回答时间:2014-9-24 17:04:33

RE:FreeRTOS V8.1.2移植到Cortex-M0(STM32F042C6)

支持下
霹雳之火 回答时间:2014-9-25 08:25:22

RE:FreeRTOS V8.1.2移植到Cortex-M0(STM32F042C6)

谢谢分享
nawt 回答时间:2014-10-1 10:13:43

RE:FreeRTOS V8.1.2移植到Cortex-M0(STM32F042C6)

謝謝分享,學習一下freertos如何porting到其他stm板子上
亚古捷斯 回答时间:2015-1-13 16:52:59
多谢分享!
喵吉豆豆 回答时间:2015-10-21 19:15:49
正好需要,谢谢
alexsunmiu 回答时间:2016-3-8 09:19:55
software.c 貌似有几个变量未定义?
今日头条 回答时间:2016-6-29 14:08:05
以前看到有帖子好像要改汇编? 要改吗?
whtt 回答时间:2016-6-29 16:58:27
支持支持
12下一页

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版