apache-mynewt-core-1.7.0 + apache-mynewt-nimble-1.2.0 + mcuboot-1.4.0

写这篇文档主要有两个原因:

1、mynewt 1.7.0版本里面删除了bootloader源码,使用的是开源mcuboot 工程。因此编译boot工程需要整合

2、前面 “mynewt 学习一:bleprph“ 这篇文档里面整合nimble协议栈时没有按照mynewt 工程原生文件架构处理

 

一、了解一下1.7.0更新哪些内容

 

二、整合nimble、mcuboot到工程项目里面

  1)、相关源码下载

    apache-mynewt-core-1.7.0 - https://mirrors.tuna.tsinghua.edu.cn/apache/mynewt/apache-mynewt-1.7.0/apache-mynewt-core-1.7.0.tgz

    apache-mynewt-nimble-1.2.0 - https://mirrors.tuna.tsinghua.edu.cn/apache/mynewt/apache-nimble-1.2.0/apache-mynewt-nimble-1.2.0.tgz

              mcuboot-1.4.0 - https://github.com/JuulLabs-OSS/mcuboot/archive/v1.4.0.zip

      2)、mcuboot 整合到 apache-mynewt-core-1.7.0

             将mcuboot-1.4.0\boot\ 目录下 boot_serial 、bootutil、mynewt  3个文件复制到 apache-mynewt-core-1.7.0\boot\目录下

    

               将这个文件bootutil\pkg.yml、mynewt\flash_map_backend\pkg.yml、mynewt\pkg.yml 里面的@mcuboot/ 字段删除掉,如下图:

                

 

             3)、nimble 整合到 apache-mynewt-core-1.7.0

              将apache-mynewt-nimble-1.2.0 文件夹 nimble、porting 复制到 apache-mynewt-core-1.7.0\net\ 目录下,有重复的并等的替换

              将apache-mynewt-nimble-1.2.0 文件夹 apps\bleprph 复制到 apache-mynewt-core-1.7.0\apps\ 目录下,有重复的并等的替换

              将apache-mynewt-nimble-1.2.0 文件夹 nimble\drivers\native、nimble\drivers\nrf51、nimble\drivers\nrf52 复制到 apache-mynewt-core-1.7.0\\hw\drivers\nimble\ 目录下,有重复的并等的替换

             

             

             

 

             将hw\drivers\nimble\native\pkg.yml、hw\drivers\nimble\nrf51\pkg.yml、hw\drivers\nimble\nrf52\pkg.yml 里面按如下方框里面红色字体做对应修改

            

 

           将mgmt\newtmgr\transport\ble\pkg.yml 文件按如下修改

          

 

 

 三、创建工程、编译

    

 

posted @ 2019-12-23 17:46  不在+年华  阅读(540)  评论(2编辑  收藏  举报