移植mbed到stm32L053R8 nucleo

最近一直想做mbed到stm32的移植,在网上找到一位大神的移植过程,就转载过来参考一下,链接在上面,先学习,然后自己再做一遍移植,会把自己的移植的具体细节和过程中遇到的问题分享给大家。这位大婶是做的移植mbed到stm32L053R8 nucleo,咱们都来学习一下哈。过程如下:

移植过程如下:
1使用mbed在线编译器导出一个mbed工程到keil,mbed在线编译器网址:http://developer.mbed.org/,注册一个账号,然后选择你的板子型号
 
2.由于我自己的板子是L053的就选择这一块,然后点击右上角  mbed的在线编译器如下图所示
 
3.点击左上角的NEW,会出现下图所示的列表,这是编译器自带的几个例子,随便选择一个就够了,比如我选择了一个“display a message on pc using uart”,然后输入工程名字xxx,最后点确定。
 
4.在左上角工程出点右键会出下图列表,选择“导出工程”,会出现一个对话框,目前支持keil编译器的离线导出
  
到此mbed的离线工程 的导出完毕(这个keil工程可以编译下载调试,但是看不到一些底层代码),现在要加如mbed的源代码使其能查看底层代码即F12的功能

5.先下载附件中的mbed的源代码,移植时需要用。然后将上一步导出的工程解压出来会出现如下图所示的几个文件及文件夹,可以删除.hg文件夹 .hgignre和mbed.bld文件,然后新建USER文件夹(根据个人而定,我喜欢将工程文件及main文件放到USER下,不喜欢太乱了......),然后将几个剩余文件剪切到USER中
 
主目录下只剩下两个文件夹,等下编译后会自动生成一个build文件夹,删除mbed文件夹下所有文件
6.解压mbed源码文件,拷贝xxx\mbed-master\libraries\mbed目录下的api、common、hal、targets 文件夹到之前工程中的mbed目录。targets目录里有两个文件夹cmsis和hal,这两个文件夹里面的内容有选择的保留,比如说我的板子是L053的只保留cmsis\TARGET_STM\TARGET_NUCLEO_L053R8和hal\TARGET_STM\TARGET_NUCLEO_L053R8,还有保留cmsis文件夹下的与内核相关的文件,删除下图中红色框框内的文件夹
cmsis目录下删除文件夹                                                      cmsis\TARGET_STM目录下删除文件夹  
 
hal目录下删除文件夹                                                       hal\TARGET_STM目录下删除文件夹  
 
6.打开keil目录下的工程文件在添加4个group,然后向每个group中添加相应文件夹下的.c和.cpp文件,注意core组下的两个文件是在mbed\targets\cmsis\TARGET_STM\TARGET_NUCLEO_L053R8\TOOLCHAIN_ARM_MICRO目录下的sys.cpp和startup_stm32l053xx.s,添加文件完成后点确定
 
7.在include path下添加.h文件所在的目录,删除之前的路径,添加好后如图所示
 
8.将Linker下的Scatter file链接到mbed\targets\cmsis\TARGET_STM\TARGET_NUCLEO_L053R8\TOOLCHAIN_ARM_MICRO下的stm32l053r8.sct文件然后删除
Misc controls里面的所有链接,配置和如图所示
 
9.最后就可以执行编译了(编译的过程有点长),一个完整的离线mbed工程就完成了,可以执行调试、下载等功能,最简便的是可以直接复制一个build文件夹下的xxx.bin文件到虚拟出的磁盘,程序就可以在开发板上运行了!!!
 
这个工程先比官方的mbed工程优点是可以查看底层代码,缺点是编译速度太慢,如果有人能优化一下,可以告诉我!!
mbed源码http://bbs.eeworld.com.cn/forum.php?mod=attachment&aid=MTc0ODIxfDkxMDBlMDE1OTY3MDFmMmY2NzI2ZDJjYmE4NWVmODg3fDE0MjA1Mjk1NzU%3D&request=yes&_f=.zip
keil工程http://bbs.eeworld.com.cn/forum.php?mod=attachment&aid=MTc0ODIyfGJjNDViMDJkN2VlNTQ4MjUyMjg0NWE5YjU2ZDdiMDk0fDE0MjA1Mjk1NzU%3D&request=yes&_f=.zip

13.jpg (29.75 KB, 下载次数: 0)

13.jpg
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值