Solution目录结构
主目录组成
Solution 软件的主目录核心分为 SDK 和 Solution 两个子目录,二者分工明确,共同支撑开发流程,具体说明如下:
SDK 子目录
基于 SDK 2.X 稳定版本构建,仅在以下必要场景随 Solution 版本同步更新,避免频繁变更影响稳定性:
漏洞修复:修复 SDK 原生存在的功能bug或兼容性问题;
功能集成:新增 Solution 框架依赖的核心功能(如特定硬件驱动、通信协议适配);
性能优化:针对 Solution 场景做底层性能调优(如内存占用、运行效率提升);
需求补充:若需集成未包含的功能,可向开发组提需求,或自行合入代码(需遵循 SDK 代码规范)。
Solution 子目录
Solution 开发的核心目录,包含从框架到工具、从组件到例程的完整开发资源,支持客户按需选用组件,快速搭建产品并推进量产。目录结构如下图所示

Solutiont子目录详细介绍
Solution 子目录是开发核心目录,包含 framework(主框架)、components(组件库)、examples(示例工程)、tools(开发工具) 四大核心模块,各模块功能、目录组织及使用逻辑如下:
framework
提供 Solution 运行的底层核心框架,涵盖 UI 调度、基础组件、系统服务及板级配置模板,是所有应用开发的“地基”,确保功能兼容性与稳定性。
核心组成
子目录/文件 |
功能说明 |
---|---|
|
UI 调度主框架:负责应用间调度切换、应用内页面管理、 |
|
基础 UI 组件库:封装按钮、列表、图表、弹窗、进度条等常用控件,支持自定义样 |
|
系统服务层,向上提供统一调用接口。包括IPC通信机制、线程、多语言、flashdb、 |
|
板级配置模板目录:存放每个板级相关的配置文件,包括: |
关键注意事项
配置加载逻辑:ButterFli 开发工具选择板级配置时,会自动载入
__template__
下的文件初始化工程,无需手动复制;文件修改规则:若需调整 flash 分区、链接地址、外设参数,必须直接修改
__template__
下的对应文件——若修改 HCPU/LCPU/Simulator 目录下的同名文件,编译时会被模板文件覆盖,导致修改失效。
目录结构
components(组件库目录)
提供解耦式功能组件,覆盖通信、硬件适配、系统服务等场景,组件间独立无强依赖,支持按需集成,灵活搭建产品功能,避免冗余代码,降低开发与维护成本。
组件分类与功能
组件目录 |
功能说明 |
---|---|
|
集成支付宝相关功能组件 |
|
应用工具组件 |
|
电池管理用户相关组件 |
|
蓝牙低功耗(BLE)通信组件 |
|
传统蓝牙(BT)组件 |
|
按键用户相关组件 |
|
通话功能组件 |
|
通用通信组件 |
|
实时数据库组件 |
|
文件操作系统组件 |
|
LCPU服务组件 |
|
消息管理组件 |
|
MicroPython 支撑组件 |
|
音乐播放组件 |
|
NVM存储组件 |
|
NXP GUI Builder适配组件 |
|
OTA 升级组件 |
|
低功耗相关电源管理组件 |
|
QuickJS 引擎组件 |
|
传感器算法及调度组件 |
|
Squareline Studio 适配组件, |
|
TF 卡管理组件 |
|
TF 卡安装工具组件 |
|
USB 大容量存储组件 |
|
天气服务组件 |
|
小智 AI 交互组件 |
使用逻辑
组件通过menuconfig“宏定义开关”控制是否集成;
目录结构
examples
包含产品例程,覆盖新手入门到量产参考的需求,代码注释清晰,可直接参考复用,降低学习与开发成本。
目录组织规则
带下划线前缀(_XXX):非板级工程,通用演示或工具适配类,不绑定具体硬件;
不带下划线前缀:板级工程,绑定特定硬件方案(如手表、宫格终端),可直接编译烧录验证。
各子目录详细说明
子目录名称 |
工程类型 |
功能说明 |
---|---|---|
|
通用组件demo |
展示单个组件的基础用法,目前持续补充完善, |
|
动态应用示例 |
动态应用/表盘开发示例,支持 3 种开发方式: |
|
GUI 仿真工程 |
仅用于 GUI_Builder 工具的 PC 仿真:根据用户设置分辨率 |
|
手表板级工程 |
手表类产品例程,包含蜂窝菜单、平铺界面、表盘框架 |
|
宫格板级工程 |
极简宫格菜单工程,无平铺和表盘框架, |
|
单应用板级工程 |
无默认应用的“空框架”工程:烧录后开机黑屏(日志正常), |
|
基础入门工程 |
最简单的应用示例,演示如何基于 Solution 框架创建应用 |
板级工程内部结构
每个不带下划线的板级工程(如 watch
、gride_view
、container
),内部按“功能模块”标准化组织,方便定位代码,典型结构如下:
(包含 application
(应用代码)、project
(工程)、resource
(资源)等子目录)
tools(工具目录)
提供 Solution 开发全流程所需的开发辅助工具与产线工具,覆盖“开发-调试-量产”各环节,提升效率并保障量产稳定性。
开发工具ButterFli:一站式开发工具,集成工程创建、编译、烧录、调试功能
产线烧写工具Impeller:16 通道并行烧录工具(支持 SWD/UART 模式)
GUI_Builder工具:可视化 UI 开发工具,零编程制作表盘/应用
Graphics_convert:图形转换工具,提供图片、视频的转换,主要用于外置SD/TF卡的资源