SDK目录说明
# SDK目录介绍
SDK = 底层固件core + Luat上层脚本包。
Luat上层脚本 = lib库+应用脚本demo示例。
## 一、SDK目录结构
```
└── 底层固件core #下载地址:https://doc.openluat.com/article/1334#13core_71
│──LuatOS-HMI_V4002_RDA8910.pac #每次发布版本,底层固件core压缩包中有6个不同功能组合的固件,金牛座开发板选择LuatOS-HMI_VXXXX_RDA8910.pac的固件包即可。
└──Luat上层脚本包 #下载地址:https://doc.openluat.com/article/1334#Luat_100
└── demo #demo中提供了不同功能的示例代码,任何一个demo都可以直接下载到开发板上跑起来测试。
└── lib #这是官方为方便用户进一步做应用开发写的lib库,一般情况下,不需要用户修改,直接引用就行。
```
## 二、如何获取底层core固件?
### 1、官方doc社区获取core固件
- 官方每一个内测通过的底层core固件版本都会更新到[合宙Air720U&724U&722U Lua 固件更新说明](https://doc.openluat.com/article/1334),并同时发布版本releasenote。
- 根据展锐基线不同分为1.2和1.3版本,现在出厂的都是1.3基线版本,金牛座开发用户直接从1.3core下载地址下载您需要的版本的core压缩包,解压后会发现除了readme.txt还有12个文件(6个【.bin】文件+6个【.pac】文件),【.bin】为远程升级文件,【.pac】需要下载的固件版本,金牛座开发板用户选择LuatOS-HMI_VXXXX_RDA8910.pac的固件包即可。其他固件的功能说明见readme.txt。

### 2、在线定制固件
- 如果我们发的常规固件版本不能满足您的产品需求,合宙又提供了[在线定制固件](https://doc.openluat.com/shareArticle/Vf34iUQh9em7c)的功能,定制自己需要的功能组合的版本。在满足功能的同时也能最大化保留Lua运行和存储空间。

## 三、如何获取luat上层脚本包?
### 1、官方doc社区获取luat上层脚本包
- luat上层脚本包跟底层core固件版本并不是同步更新,每一个内测通过的luat上层脚本包会更新到[合宙Air720U&724U&722U Lua 固件更新说明](https://doc.openluat.com/article/1334),并同时发布版本releasenote。
- Luat上层脚本包主要由demo+lib组成,解压下载后的Luat上层脚本包有三个文件夹:demo、lib、doc 。demo是各个功能的示例代码,包含UI开发、应用开发、驱动开发,可以直接下载到开发板中测试,lib是合宙官方为方便用户进一步做应用开发写的lib库,一般情况下不需要修改lib,直接引用即可,doc是注释文件。

### 2、码云上获取luat上层脚本包
- [合宙Luat / LuatOS-Air](https://gitee.com/openLuat/Luat_Lua_Air724U/tree/master)这是合宙LuatOS-Air开发的开源地址,由于金牛座开发板上的模块本身也是Cat.1模块,开发方式同LuatOS-Air,LuatOS-Air系的luat上层脚本包都可以直接从这个地方下载,跟doc社区[合宙Air720U&724U&722U Lua 固件更新说明](https://doc.openluat.com/article/1334)的luat上层脚本包完全一致。

- product目录下的金牛座开发板文件夹下有金牛座配套的各种demo跟实战项目

## 四、举例说明
假如有一个项目,需要在金牛座开发板上实现mqtt+uart+ui界面的功能,我们如何通过合宙提供的SDK相关资源快速入门。一般会经历下面4个步骤。
### 1、如何选择固件版本
通过[固件下载地址](https://doc.openluat.com/article/1334#13core_71)下载底层core固件,这里下载的是V4002版本的core固件版本,解压后包含文件如下所示,mqtt,uart通用功能,所有固件都支持,ui界面功能,需选择带HMI字样的版本,这里我们选择LuatOS-HMI_V4002_RDA8910.pac固件版本。详细功能描述见下图所示readme.txt文件。

如需要使用矢量字库点击右侧链接:[矢量字库使用说明](https://hmi.wiki.luatos.com/doc/65042949/e6zPC3k9/HlFrwW4x)
### 2、如何选择lib库
通过[上层脚本(demo+lib)](https://doc.openluat.com/article/1334#Luat_100)下载lib库,一般选择最新版本的lib库。
### 3、需要熟悉那些demo
- 通过[上层脚本(demo+lib)](https://doc.openluat.com/article/1334#Luat_100)下载demo脚本,参考其文件夹下的mqtt和uart的2个demo。
- product目录下的[金牛座开发版](https://gitee.com/openLuat/Luat_Lua_Air724U/tree/master/product/%E9%87%91%E7%89%9B%E5%BA%A7%E5%BC%80%E5%8F%91%E6%9D%BF)文件夹下有金牛座配套的各种demo跟实战项目。UI方面的应用可以参考其下面的1.widgets(lvgl各控件使用demo)和3.project\电力集中器(485采集数据通过mqtt上报并通过UI显示的应用)。
### 4、开始项目开发
上面步骤3已经熟悉并跑通了本项目开发所需要的单个功能后,可以开始新建一个项目把单个功能组合到一个工程中开始尝试项目开发了。