打印

IAR(EWARM)下移植FreeRTOS到STM32实例

[复制链接]
7582|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wdliming|  楼主 | 2012-10-7 22:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 wdliming 于 2012-10-7 22:39 编辑

Toggle LED的实例,在我的板子上可以运行,具体的抑制过程如下:
IAREWARM)下移植FreeRTOSSTM32F10x笔记         为了这个移植,国庆都没有好好出去玩,在公司里弄这个移植,因为公司开发的工具是IAR32K限制版的,没有版权的,编译FreeRTOS还是搓搓有余的~),在网上下载了移植实例,但都是用Keil编译的,我也是无奈,要是这样的话,我也就不用费心了,本想把Keil的文件一直到IAR当中,可是编译是通过了,可是怎么就是不行,我估计就是两个编译器软件里面有很多集成的功能的不同把,于是我放弃了这条路,试试官网的Demo,在Demo的基础上改改,应该可以吧,弄了好久,今天终于移植成功,特此记录一下。
         FreeRTOS官网下载FreeRTOSV7.1.0版本的,免费的!压缩版很小的,解压出来倒是挺大的,看来这个解压工具(7zip)还是真厉害!解压出来的文件当中有一个Demo文件,里面就是FreeRTOS在各种处理器上不同的编译器上编译的例子,于是我选择CORTEX_STM32F103_IAR这个文件,同时做了个备份,以免改了不成功,还有原来的。
这里我copy了一份,改名为DQ_CORTEX_STM32F103_IAR,因为我的STM32的板子是DQ的,下面是我的工程的结构,先看看。这里Utilities的文件时我自己添加的,里面的文件是我参考Keil的,和编译器没有什么关系的,都是C语言的,所以我就改了改拿过来用了,有C语言基础的一般能看懂,其实我的水平也不咋地~~还是原来作者写的好多了。
改好之后,记得在IAR-EWAM的工程里添加两个C文件,这里我截个图吧,还有在工程的Options…里添加额外的头文件目录。箭头的就是所加的路径,那样编译器就可以找到了,(题外话:其实这是IDE工具帮我们完成了很多事情,其实在Linux里有个makefile的,makefile的编写也是要加头文件路径的,具体的可以参考《和我一起写makefile》,那里,你可以学到很多有关编译的知识,当然,也只是皮毛罢了,写GCC的那个Richard Matthew Stallman才是牛人!)。
首先选择你的处理器,我选的是stm32f10xxc
然后再Defined Symbols额外的添加两个宏定义,STM32F10X_HD USE_STDPERIPH_DRIVER,后来验证,不加也是可以的,因为这两个实在固件库3.5.0时我加的,因为在固件库3.5.0是的头文件是只读的,又因为STM32F103VCT6256KFlash的,属于high density型的。

工程目录如下:


然后再Linker选项里的Override Default打上勾,默认是选择编译器的generic_cortex.icf的,这里我们选择之后,添加STM32F10x_FLASH.icf文件,这个STM32F10x_FLASH.icf是在我们新版本的固件库的目录下,具体是STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\iar,可以拷贝到当前的工程目录下,调试器选择ST-LINK,模式为JTAG,然后编译。
NoteFreeRTOS的工程使用的早期的stm32的固件库的,2006年的!我晕了,都12年了,怎么就不更新呢?v7.2.0demo里也是老的固件库,估计是稳定吧,这里要懂得修改了。还有移植FreeRTOS的时候,不要忘了添加mammapheap_2.c的文件,把它从FreeRTOSV710\Source\portable\MemMang拷贝到你的source目录下,
点击download and debug之后全速运行,就有LED闪烁了。很高兴啊!
最后我附上工程文件,各位网友可以参考,不对的地方欢迎指正!
DQ_CORTEX_STM32F103_IAR.haozip01.zip (4 MB) DQ_CORTEX_STM32F103_IAR.haozip02.zip (4 MB) DQ_CORTEX_STM32F103_IAR.haozip03.zip (963.76 KB)
本分卷由2345好压(Haozip)生成,请使用2345好压来解压。
2345好压下载地址:http://www.haozip.com/
分卷文件共有以下3个:
DQ_CORTEX_STM32F103_IAR.haozip01.zip
DQ_CORTEX_STM32F103_IAR.haozip02.zip
DQ_CORTEX_STM32F103_IAR.haozip03.zip
为了更方便的合并分卷文件,本说明文件请勿删除,谢谢!
沙发
qoopp| | 2013-7-8 11:24 | 只看该作者
thank for you share!

使用特权

评论回复
板凳
zbr3550| | 2015-1-26 08:59 | 只看该作者
多谢分享~

使用特权

评论回复
地板
wyl19880823| | 2015-7-2 15:39 | 只看该作者
多谢,多谢

使用特权

评论回复
5
newphj| | 2016-2-11 21:03 | 只看该作者
谢谢分享。。。都是用Ucos的,想要用用FreeRTOS

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:我的未来不是梦

76

主题

913

帖子

4

粉丝