本文旨在以尽可能减少操作的情况下,快速建立nRF52840芯片的工程。
既然是要快速完成,就要坚持拿来主义,把官方提供的SDK尽可能完整的搬运过来,然后根据自己的使用做修改,这里我选用的是从机蓝牙串口服务的例程进行移植。
新建存放自己工程的文件夹。
从官方SDK目录下复制下面圈起来的几个文件到我们存放自己工程的文件夹SDK目录下。
复制nRF5_SDK_16.0.0_98a08e2\examples\ble_peripheral\ble_app_uart\pca10056\s140\arm5_no_packs\ble_app_uart_pca10056_s140.uvprojx到我们存放自己工程的文件夹project目录下并重命名。
复制nRF5_SDK_16.0.0_98a08e2\examples\ble_peripheral\ble_app_uart\pca10056\s140\config\sdk_config.h到我们存放自己工程的文件夹driver目录下。.
复制nRF5_SDK_16.0.0_98a08e2\examples\ble_peripheral\ble_app_uart\main.c到我们存放自己工程的文件夹user目录下。
用记事本打开复制过来的ble_app_uart_pca10056_s140.uvprojx工程文件,按下图设置使用全部替换并保存。
用keil打开工程文件,删除并重新添加一下main.c与sdk_config.h文件,并在魔术棒C/C++ Include Paths添加 …\user …\driver两个路径,并在debug选项下配置调试方式(注意调成SWD,以及复位并运行)。
编译即可。
如果安装了多个版本的PACK包,且编译的时候出现了奇怪的bug。可以卸载其他版本的PACK包,只保留跟当前使用的SDK相匹配的PACK包,然后删除project目录下除xxx.uvprojx跟xxx.uvoptx的所有文件,关闭工程然后重新打开编译即可。(下图是卸载PACK包的方式)