跳转至

开发概览

本节帮助你把已经能运行的 SF32 开发板推进为可维护的产品固件。完成首个 hello_world 后,可在这里选择开发板配置、稳定地构建和烧录、基于最接近的示例开发、集成产品功能、定位故障,以及规划升级和恢复路径。

首次运行开发板请参阅快速开始;选择器件和开发板请参阅SF32 产品;原理图和量产硬件设计请参阅硬件;理解架构背景请参阅学习。当你需要工程工作流和面向具体任务的实现指导时,请使用本节。

SiFli-Solution

SiFli-Solution 是思澈科技(SiFli)的另一套软件包,μForge.io 目前尚未收录。本文仅覆盖 SiFli-SDK 和下文列出的社区路径。如果产品需要更完整的显示设备方案,请参阅官方 SiFli Solution 文档,并直接联系思澈科技(SiFli)。复杂产品采用这一路线时,可能还需要思澈科技(SiFli)团队直接深入参与。

建立 SiFli-SDK 基线

SiFli-SDK 是思澈科技(SiFli)面向 SF32 固件的官方软件包,以 RT-Thread 为基础,也是参考开发路径。除非有明确理由评估其他生态,否则应从这里开始:它在开发板支持、蓝牙(Bluetooth)、图形、音频、存储、电源管理和量产开发方面的文档覆盖范围最广。

在开发产品功能前,先建立并记录一个可复现的基线:

  1. 在开发板配置中选择与目标开发板完全对应的 SDK 配置。
  2. 成功运行构建、烧录和监视日常流程。
  3. 保存 SDK 发行版或提交、开发板名称、构建命令、烧录命令、串口设置和启动日志。
  4. 从最接近的示例开始,优先选择已经覆盖产品中最难子系统的示例。

这份记录是后续修改应用、移植开发板、分析测试故障和现场恢复时的参照基线。

按任务查找指导

表:SF32 开发任务
任务 首先阅读 接着使用
构建并烧录固件,查看串口输出 构建、烧录和监视 使用工具了解脚本化烧录、追踪和崩溃分析工具。
让固件匹配开发板、模组或自定义硬件 开发板配置 对应的硬件设计指南和最接近的开发板专用示例。
在多个工程间复用驱动或中间件 组件和 sf_pkg 最小示例以及已文档化的配置边界。
实现具体外设或子系统 SiFli-SDK 应用笔记 链接的官方 SDK 使用指南,获取准确 API、配置符号和命令。
从已运行的代码开始产品开发 示例 匹配的开发板配置,并在每次改动后进行测试。
定位故障或收集产品验证证据 调试与诊断 日志与崩溃分析。
修改启动布局、存储、升级、USB 或功耗行为 固件专题 修改代码前先阅读对应的分区、升级、USB、电源或日志专题。

SiFli-SDK 应用笔记

应用笔记按集成任务组织,而非照搬 SDK 目录顺序。先查阅与当前子系统相关的内容;复用配置或命令前,再确认文中标出的芯片系列范围、开发板配置、SDK 版本和硬件前提条件。

表:SiFli-SDK 应用笔记路径
表:开发章节导航
区域 用途
SiFli-SDK 建立受支持的参考工作流:配置、构建、烧录、可复用组件和诊断。
SiFli-SDK 应用笔记 将 SDK 应用于 GPADC、传感器、外部 Flash、低功耗、诊断、RF 或蓝牙测试等聚焦任务。
示例 为具体的开发板和产品中最难的子系统选择并改造已运行的实现。
工具 为工作流选择下载、监视、追踪、崩溃、资源和量产工具。
固件专题 对分区、OTA/DFU、USB、电源管理和诊断证据做跨模块的产品决策。
实验性 / 社区 在各页面所述范围和成熟度限制下评估 Zephyr、Arduino、MicroPython 或 Rust。

审慎评估社区路径

实验性 / 社区面向有理由在参考 SDK 路径之外开展工作的团队,并不表示这些路径具有同等的量产支持。

表:社区路径的适用性
路径 适用情况 应视为
Zephyr 需要 Zephyr API、设备树(devicetree)、Kconfig,或进行下游开发板适配工作。 面向特定开发板的下游评估路径。
Arduino 需要在其支持的开发板上编写 Sketch 或快速完成外设原型。 Beta 阶段、开发板范围受限的路径。
MicroPython 正在评估未来的脚本支持。 在出现可复现的公开移植版本前的状态页。
Rust 能够评估 HAL/PAC 工作并向上游贡献修复。 社区仍在推进中的路径。

在决定将产品建立在这些路径之一上之前,应在目标开发板上验证每个必需外设、Flash 布局、调试方法和恢复流程。将已测试的版本、配置、命令和结果与产品源代码一同保存。

产品就绪的开发证据

在将某条固件开发路径视为已具备产品化条件前,应能回答以下问题:

  • 测试了哪种芯片、开发板或自定义硬件版本,以及哪项配置?
  • 哪个 SDK、软件包、分支或提交生成了固件?
  • 哪些构建、烧录、监视和完整恢复命令已经验证可用?
  • 哪个示例或测试证明了每个必需外设和产品子系统?
  • 已验证哪种分区布局、升级行为、功耗目标和崩溃信息解码流程?

只要有一项无法回答,这项工作仍可能是有价值的原型,但还不是可复现的产品基线。

最后更新: