欢迎来到天天文库
浏览记录
ID:15752222
大小:305.06 KB
页数:13页
时间:2018-08-05
《嵌入式操作系统_freertos_移植》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、www.armrunc.comhttp://armrunc.taobao.comARCARCFreeRTOS支持www.armrunc.comhttp://armrunc.taobao.comChangeHistory版本号更改描述(armrunc)作者修改时间1.0.0第一版armrunc2012-03-04ARCwww.armrunc.comhttp://armrunc.taobao.comARC目录第19章FreeRTOS.............................................
2、............................................319.1FreeRTOS简介................................................................................319.2FreeRTOS应用实例-----创建任务.................................................319.2.1实例描述....................................
3、............................................319.2.2硬件设计................................................................................319.2.3软件设计................................................................................3(armrunc)ARCwww.armrunc.comhttp://
4、armrunc.taobao.comARC第19章FreeRTOS19.1FreeRTOS简介FreeRTOS是一个可移植的、开源的小型实时内核,可以免费下载并且可以免费用于商业软件。FreeRTOS支持多种处理器架构,包括ARM7、ARM9、Cortex-M3、AVR、PIC和MSP430等。FreeRTOS系统的主要特点如下:完全免费,使用没有限制,包括商业应用。优先级调度,相同优先级任务可轮转调度,同时可设置为可波多内核或者不可剥夺内核;任务可选择是否共享堆栈,并且没有任务数目限制;消息队列,二值信号量
5、,计数信号量,递归互斥体;时间管理;内存管理。19.2FreeRTOS应用实例-----创建任务19.2.1实例描述本实例移植FreeRTOS到ARC开发板。为了是移植过程清晰,我们只创建了一个任务,这个任务只实现了最简单的跑马灯功能。(armrunc)19.2.2硬件设计该实例用到了ARCARC平台上的两个LED灯,电路图参考LED那一章节。19.2.3软件设计首先到FreeRTOS官方网站http://www.freertos.org/下载软件,该实例基于版本7.1.0。在本地创建一个freertos710目
6、录,目录结构如下:www.armrunc.comhttp://armrunc.taobao.comARC拷贝FreeRTOS以下文件到Source文件夹。拷贝FreeRTOS以下文件到freertos710Sourceinclude文件夹。在freertos710Sourceportable文件夹(armrunc)中创建以下文件夹。拷贝FreeRTOS以下文件到freertos710SourceportableMemMang文件夹。ARC在freertos710SourceportableKei
7、l文件内创建ARM_CM3文件。拷贝FreeRTOS以下文件到freertos710SourceportableKeilARM_CM3文件夹。针对STM32CORTEXM3内核,修改port.c文件,具体更改如下:增加voidSVC_Handler(void)__attribute__((alias("vPortSVCHandler")));使得SVC_Handler是vPortSVCHandler的别名,也就是他们两个实际是一个函数。www.armrunc.comhttp://armrunc.taobao
8、.comARC增加voidPendSV_Handler(void)__attribute__((alias("xPortPendSVHandler")));增加voidSysTick_Handler(void)__attribute__((alias("xPortSysTickHandler")));具体代码请参考文件port.c。在文件f
此文档下载收益归作者所有