前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >IAR(EWARM)下移植FreeRTOS到STM32F10x笔记

IAR(EWARM)下移植FreeRTOS到STM32F10x笔记

作者头像
用户4645519
发布2020-09-07 10:19:31
1K0
发布2020-09-07 10:19:31
举报
文章被收录于专栏:嵌入式学习嵌入式学习

为了这个移植,国庆都没有好好出去玩,在公司里弄这个移植,因为公司开发的工具是IAR(32K限制版的,没有版权的,编译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是的头文件是只读的,又因为STM32F103VCT6是256KFlash的,属于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,然后编译。

Note:FreeRTOS的工程使用的早期的stm32的固件库的,2006年的!我晕了,都12年了,怎么就不更新呢?v7.2.0的demo里也是老的固件库,估计是稳定吧,这里要懂得修改了。还有移植FreeRTOS的时候,不要忘了添加mammap的heap_2.c的文件,把它从FreeRTOSV710\Source\portable\MemMang拷贝到你的source目录下,

点击download and debug之后全速运行,就有LED闪烁了。很高兴啊!

最后我附上工程文件,各位网友可以参考,不对的地方欢迎指正!

下载请到http://bbs.21ic.com/frame.php?frameon=yes&referer=http%3A//bbs.21ic.com/icnewest.html

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2012-10-07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档