SDK软件组成说明
# 简介
SDK软件分为两部分:**底层固件core**+**上层Lua脚本(lib+demo)**
详细下载地址和目录结构点击右侧链接查看:[SDK下载地址](https://doc.openluat.com/article/1334) [目录结构](https://hmi.wiki.luatos.com/doc/65042949/e6zPC3k9/wK4GEEDm#nav_0)
# 名词解释
- core(又名底层软件、底层固件、内核固件)
- script或者script_LuaTask(又名上层软件,上层脚本,上层Lua脚本,Luat上层脚本)
- lib(又名lib脚本、库脚本)
- app(又名应用脚本,demo)
# 底层固件core
## core是什么
底层固件core是基于展锐平台,合宙适配,封装成一些接口给Lua脚本调用的.pac软件包,不对外开源。
底层固件core有分为1.2,1.3基线版本,现在出厂的模块都是1.3版本,详细说明见 [合宙LuatOS-Air固件须知](http://doc.openluat.com/article/2689/0)
根据功能不同默认会发6个不同的版本,详细说明见[合宙Air720U&724U&722U Lua 固件更新说明](https://doc.openluat.com/article/1334/0) 底层固件功能列表1.3基线部分
针对用户不同功能使用场景,还可以进行在线定制固件版本 [Luat固件定制系统](https://doc.openluat.com/shareArticle/Vf34iUQh9em7c)
## 如何发布
新增一些功能或者修改一些bug后,有平台研发部编译生成最新固件版本,同时会通知测试部测试,测试通过后,会更新到DOC系统上,releasenote会随版本一起释放以便您查看最新版本的修改点。详细说明见 [合宙Air720U&724U&722U Lua 固件更新说明](https://doc.openluat.com/article/1334/0)
# 上层Lua脚本
上层Lua脚本分为:lib+demo (全部对外开源)
## lib是什么
lib是通过调用底层固件提供的接口,LUA脚本层,封装的一些可以供用户使用的一些LUA接口
下载时需全部选择,会更具实际使用,自动选择所需下载的脚本
## app是什么
app是指客户通过调用库接口或lib接口,自已开发的一些应用脚本,demo也看作是一种app脚本
## 如何发布
新增一些功能或者修改一些bug后,有应用研发部提交测试部分,测试通过后提交 [gitee系统](https://gitee.com/openLuat/Luat_Lua_Air724U/tree/master/script_LuaTask) 同时也会更新到DOC系统 [Luat上层脚本包](https://doc.openluat.com/article/1334/0#Luat_100) releasenote会随版本一起释放以便您查看最新版本的修改点 [上层脚本更新说明](https://doc.openluat.com/article/1334/0#_380)
# 举例说明
假如有一个项目,需要实现mqtt+uart+ui界面的功能,我们如何来用SDK。
## 如何选择合适的固件
默认所有版本都支持mqtt和uart我们可以选择所有的版本,但UI界面开发我们会用MIPI屏和LVGL这里就需要选择支持这2种功能的固件版本,通过前面对底层固件core的介绍,我们这里可以选用**LuatOS-HMI_V4002_RDA8910.pac**作为底层软件包 [1.3底层core下载地址](https://doc.openluat.com/article/1334/0#13core_71)
如果需要用到矢量字库参考 [矢量字库使用说明](https://hmi.wiki.luatos.com/doc/65042949/e6zPC3k9/HlFrwW4x#nav_0)
## 如何选择lib库
lib库直接选择最新的库文件即可,从 [Luat上层脚本包](https://doc.openluat.com/article/1334/0#Luat_100)下载最新的脚本报, lib库有封装好的mqtt.lua脚本库,通过require"mqtt"直接加载进来用就可以。[Luat上层脚本包目录结构](https://hmi.wiki.luatos.com/doc/65042949/e6zPC3k9/wK4GEEDm#nav_6)
## 如何写应用脚本
mqtt,uart,ui在demo文件夹下都有对应的demo可以参考,直接根据demo修改即可,可以先每个demo都跑通,然后在根据自已的需要写自己的应用脚本 。mqtt跟ui的demo都支持在线模拟,可以通过[LuatIDE导入工程](https://hmi.wiki.luatos.com/doc/65042949/e6zPC3k9/drjtxz61#nav_8)导入后在线模拟熟悉一遍。
## 其它参考文档
软件开发指南-》UI开发指南
[UI开发指南](https://hmi.wiki.luatos.com/doc/65042949/e6zPC3k9/fQBsg4yn)
软件开发指南-》应用开发指南-》MQTT(消息传输协议)
[MQTT(消息传输协议)](https://hmi.wiki.luatos.com/doc/65042949/e6zPC3k9/EGV9Unsl)
软件开发指南-》驱动开发指南-》UART设备
[UART设备](https://hmi.wiki.luatos.com/doc/65042949/e6zPC3k9/kwCIEjED)