Skip to content

XFusion 目录结构

作者

dotc

本文简要说明 XFusion 的目录结构。

xfusion/ : 目录结构

Bash
xfusion/
 .vscode/
 boards/ ......................... 各平台原生工程及与 XF 构建相关的对接
 build/ .......................... 
 components/ ..................... XF 内部组件
 docs/ ........................... XF 文档
 examples/ ....................... XF 例程
 plugins/ ........................ 平台 SDK XF 构建相关的对接
 ports/ .......................... 平台 SDK XF 功能相关的对接
 sdks/ ........................... 各平台 sdk及工具
 tools/ .......................... XF 相关的工具
 .editorconfig
 .gitignore
 .gitmodules
 LICENSE ......................... XF 许可证
 README.md
 XFKconfig
 export.bat ...................... XF 环境激活脚本 (win端)
 export.ps1
 export.sh ....................... XF 环境激活脚本 (linux端)
 requirements.txt ................ XF 依赖描述

boards/ :各平台原生工程及与 XF 构建相关对接。

Bash
boards/
 espressif/ <──── 厂商或平台
 esp32/ <<══════ ══ 编译目标的原生工程 (包含与XF构建相关对接)
┃   ┣ ...                 │               ║
┃   ┣ target.json <─── │ ───────║── 环境激活时,会在 boards 目录下被递归搜索的文件。(激活指令将会以该文件所在的目录名作为激活的目标名)
┃   ┗ ...                 │               ║
┣ nearlink/ <───────┘               ║
┃ ┣ bs21/ <<═══════════════ ╣
┃ ┗ ws63/ <<═══════════════ ╝
┣ README.md
┗ XFKconfig  .................... 平台描述配置文件(自动生成)

components/ :XF 内部组件。

Bash
components/
 xf_fal/ ................. XF FAL Flash 抽象层)
 ...
 xf_hal/ ................. XF HAL (硬件抽象层)
 ...
 xf_heap/ ................ XF Heap (堆内存管理)
 ...
 xf_init/ ................ XF Init (初始化管理)
 ...
 xf_log/ ................. XF Log (日志)
 ...
 xf_nal/ ................. XF NAL (网络抽象层)
 ...
 xf_net_apps/ ............ XF Net APP (网络相关应用)
 ...
 xf_osal/ ................ XF OSAL (操作系统抽象层)
 ...
 xf_sys/ ................. XF SYS (系统功能)
 ...
 xf_task/ ................ XF Task (XF 协作式调度任务)
 ...
 xf_utils/ ............... XF Utils (XF 通用功能 (工具) 集)
 ...
 xf_wal/ ................. XF WAL (无线功能抽象层)
 xf_ble/ ............... XF BLE (BLE 功能)
 xf_sle/ ............... XF SLE (SLE 功能)
 xf_wifi/ .............. XF WIFI (WiFi 功能)
 ...

docs/ :XF 文档。

examples/ :XF 例程。

Bash
examples/
 example_components/ ............. 组件例程
 ex_easy_wifi/
 README.md
 get_started/ ................... 快速开始例程
 template_project/
 xf_template/
 osal/ .......................... OSAL 例程
 event/
 kernel/
 mutex/
 notify/
 queue/
 semaphore/
 thread/
 timer/
 peripherals/ ................... 外设例程
 adc/
 dac/
 gpio/
 i2c/
 pwm/
 spi/
 timer/
 uart/
 protocols/ ..................... 协议例程
 http_request/
 icmp_echo/
 iperf/
 sockets/
 system/ ........................ 系统功能例程
 heap/
 init/
 log/
 sys/
 task/ .......................... 协作式调度任务 (XF Task) 例程
 mbus/
 ntask/
 ntask2/
 task_pool/
 trigger/
 wireless/ ...................... 无线功能例程
 ble/
 sle/
 wifi/

ports/:平台 SDK 与 XF 功能相关的对接。

Bash
ports/
 espressif/ <────── 厂商或平台
 esp32/ <<════════ ═══ 编译的目标与 XF 功能相关的对接 (此处目录名与 board 下对应的目标目录名一致)
┗ nearlink/ <─────────┘             ║
  ┗ ws63/ <<═════════════════╝

sdks/ :各平台 sdk 及工具

tools/ :XF 相关的工具。

Bash
tools/
 export_script/ ...................... XF 环境激活相关脚本
 README.md
 check_virtualenv.py ............... XF 环境激活相关脚本
 gen_kconfig.py
 get_path.py
 format_code/ ........................ 代码格式化相关
 ...