最近有一个小项目,需要使用nrf52832.几个月前用的15.3版本,不像昨天下载新的sdk的时候已经是16.0.0.

这次试用有几个问题。第一是Devicefamily原先的工程默认试用的是8.27.0版本,实际上keil的pack里面最新的是8.24.1版本。

此外,之前的软件默认试用cmisis的core。而这个cmsis的版本是4.5.0.事实上,目前cmsis的版本早已升级到了5.6.0,里面包含的core版本是5.3.0.

因此需要解决这个问题。

怎么办呐?下图这两个图标很重要。

nrf5 16.0.0 mdk的几个问题

第二个图标是select software packs,第一个图标是manage runtime evrionment。简单的来说就是第二个图标负责选择本工程(project)下试用那些包(packs);而第一个图标则是选择试用刚才列举的包(packs)中那些运行环境。每个包里面可能包含多个运行环境,你可以理解为每个包有多个子包。呐cmsis来说,cmsis-core就是cmsis的子包。

好了,那怎么修改呐?

首先重新选择最新的packs来分别替换老的cmsis和nRF_DeviceFamilyPack。

nrf5 16.0.0 mdk的几个问题

再这一步会出现零一个对话框提示你core和device的Startup的选择有问题。在这个对话框将这两项的对勾去掉(uncheck)。

然后按第一个按钮,在新的包中选择刚才uncheck的两项就可以了。

nrf5 16.0.0 mdk的几个问题

此时就解决了问题。

 

另外一个可能的问题是找不到cmsis_cm4.h,这个也很好办。搜一下这个文件在sdk lib的那个部分,然后添加一下路径就ok了。

nrf5 16.0.0 mdk的几个问题

我的相对路径设置如下:..\..\..\..\..\..\components\toolchain\cmsis\include

 

有问题请在下面留言 

相关文章: