创建工程一定要将IDE切换到Lanuncher界面来,并且选择电脑连接的板子,再来创建,否则硬件外设配置就不对,编译也报没有定义的错。在Simplicity IDE 的菜单栏:
Project - New - silicon labs AppBuilder Project
选择Customizable network coprocessor(NCP) applications
根据自己的需要选择,这里选择硬件流控的demo
C:\Users\Administrator\SimplicityStudio\v4_workspace\ncp-uart-hw
路径改成如下:
D:\siliconlabs\SimplicityStudio\v4\developer\ncp-uart-hw
从文件ncp-configuration.h中的路径看,在创建工程时IDE会自动关联工程文件与sdk的路径依赖关系的,理论上讲工程路径在哪里都行!不要求在同一个盘符下!我现在的路径就是D:\siliconlabs\v4_workspace编译也没有问题
注意:现在不建议把工程目录和sdk混在一起,只是必须注意工程创建时一定要在launcher界面,配置文件必须是电脑连接的板子开头而不是custom开关,否则很多定义找不到,硬件配置也不对!
Next:
不能选设备,否则生成时候就会报错!
next完成之后出现的界面如下:
双击IAR工程文件,在IAR IDE里进行编译,不要用Simlipicity studio 调用IAR!
官方例程自带的GCC不行都需要IAR来编译才跑的成功
如果创建工程时不再launcher界面创建,红框里就不是brd4161a开头的配置文件,就是custom开头的配置文件,结果硬件配置就不对了,编译也报错。
注意确认下芯片型号和编译器,编译器不能选GCC,只能选IAR。
接着配置IO口引脚,特别是usart引脚,“open hardware configurator”
配置好之后,点击“Genatator”生成工程代码!
编译ok
最后生成了.gbl文件!!!
.gbl文件是用于给bootloader识别的文件,升级(不是烧录工具烧录)固件只能用.gbl格式的文件。
今天我发现即使是官方的例程用GCC编译烧录进去都没法运行。
========================分割线====================
向NCP工程添加文件,就把文件放到ncp-uart-hw工程目录下面即可,
simplicity studio会实时自己加载进去,就参入编译了,删除也是直接把文件夹删除掉然后simplicity studio就移除了。
==============分割线==============
如何切换升级工程的SDK?
在工程在特性选项卡页面,切换到目的sdk
从Ember 6.3.1切换到Ember6.4.0
点击Apply--ok
然后就点击编译
从编译的console看,确实是连接到6.4.0的sdk编译的