详解IoT Studio创建工程的机制
摘要:当我们看到IoT Studio中的工程模板时,一点击创建就能自动生成一个工程,是不是很神奇?本篇文章主要来详解这其中的机制。
环境:Win10+VScode1.44.2+Iot Studio0.9.0
IoT Studio0.9.0是内测版本,暂时还未发布,请大家耐心等待。
LiteOS_Lab的仓库地址:https://github.com/LiteOS/LiteOS_Lab
一、SDK介绍
当我们安装好了IoT Studio会自动下载一些依赖,例如ARM GCC工具链、J-Link驱动等等还有我们的SDK,目前最新SDK是2.1版本的,大家可以可以到LiteOS_Lab的仓库下载尝鲜,首先带大家看看SDK目录,IoT Studio的SDK目录默认安装到C:\Users\你的用户名\.iotlink\sdk\IoT_LINK中,目录如下:
targets文件夹就是我们今天的主角,现在我们随便打开一个targets文件夹中的工程模板,例如STM32L431_BearPi,下图这些文件夹我在这个汇总贴中的帖子中详细说过,我们今天重点说下.config、iot_config.h、Kconfig和Demo文件夹:
二、IoT Studio介绍
打开IoT Studio后,点击创建工程,可以看见选择一个①硬件平台和②基于示例工程创建。
①硬件平台和②基于示例工程创建是怎么来的?
①硬件平台:IoT Studio会读取SDK中的sdk\IoT_LINK\targets文件夹中的所有工程模板的文件夹名称,看到的STM32L476RG_NB476就是这其中的一个文件夹
②基于示例工程创建:你可以看到这里有一个use_coap_demo,这个是IoT Studio去读取STM32L476RG_NB476\Demos文件夹中的实例文件夹名称显示的,我们只有一个。
现在你可以填写工程名称和选择路径并点击确定,就会在指定路径下创建一个刚刚选择的工程,现在我们来看一下SDK配置,还记得前面说过的Kconfig吗?
看到了吧,这些配置选项都是IoT Studio通过读取Kconfig显示出来的,首先第一个被读取kconfig,位于工程目录下的kconfig,然后又读取SDK中iot_link/Kconfig,然后分别读取各个组件的kconfig,到这里我相信细心的同学可以发现,SDK配置中已经配置好了,这些配置是哪里来的?现在就要开始介绍我们Demo文件夹中的defaults.sdkconfig,每一在Demo文件夹中的独立Demo都有一个自己的defaults.sdkconfig,其中写了使用该Demo时kconfig需要如何配置,这个文件就需要我们根据自己制作的Demo用到的组件来写了,你也可以通过在IoT Studio配置中,配置好点击应用,将生成的.config中的内容复制到你自己的Demo中的defaults.sdkconfig中。
我们现在可以测试性的修改部分配置,然后点击应用,你可以发现工程目录下的.config和iot_config.h都被修改为了相应的配置以供Makefile读取控制编译,是不是很神奇?
三、总结一下
如果你需要自己制作你开发板的工程模板你至少需要制作以下文件
targets中的以XXX芯片开头的文件夹存放工程模板
工程模板/Demo文件夹中写入你的相应Demo和defaults.sdkconfig以及修改Demo文件下的user_demo.mk文件还有kconfig
其他文件的修改及制作在汇总帖中的帖子中已经讲解过了
PS:在制作和使用过程中有啥问题都欢迎大家留言或者发帖!
- 点赞
- 收藏
- 关注作者
评论(0)