SiFli-SDK¶
SiFli-SDK ist das offizielle Entwicklungs-SDK von SiFli für SF32-Firmware. Es stellt eine RT-Thread-basierte Entwicklungsumgebung bereit und enthält für unterstützte Targets auch No-OS-Beispiele. Außerdem umfasst es von SiFli gepflegte Board-Unterstützung und Middleware für Bereiche wie Bluetooth, Grafik, Audio, Energiemanagement, Speicher und Produktionsabläufe. Welche Funktionen verfügbar sind, hängt von Chip, Board und SDK-Version ab.
SiFli-Solution
SiFli-Solution ist ein separates SiFli-Softwarepaket und liegt außerhalb des Umfangs dieser Seite. Diese Seite und die verlinkten Entwicklungsunterlagen dokumentieren ausschließlich SiFli-SDK. Informationen zu Umfang, unterstützten Geräten und Zugangsvoraussetzungen von SiFli-Solution finden Sie in der offiziellen Dokumentation zu SiFli Solution; wenden Sie sich bei Bedarf direkt an SiFli.
Nutzen Sie Erste Schritte mit SiFli-SDK für die Erstinstallation und zum Ausführen von hello_world. Diese Seite beschreibt die Arbeit mit dem SDK, sobald die Toolchain eingerichtet und einsatzbereit ist.
Primäre Referenzen:
- SiFli-SDK-Installationsanleitung
- Liste der vom SDK unterstützten SF32LB52x-Boards
- OpenSiFli/SiFli-SDK
Wann SiFli-SDK verwendet werden sollte¶
Wählen Sie SiFli-SDK, wenn Sie Folgendes benötigen:
- Einen dokumentierten Entwicklungspfad mit von SiFli gepflegter Board-Unterstützung und Beispielen für den gewählten Chip und die gewählte SDK-Version.
- Beispiele und Middleware für Bluetooth, Display, Audio, Energiemanagement, Speicher, USB und OTA, sofern sie vom gewählten Ziel und Release unterstützt werden.
- RT-Thread-Integration und Shell-Werkzeuge.
- Board-Konfiguration über SDK-Boardnamen wie
sf32lb52-lcd_n16r8. - Zugriff auf SiFli-spezifische Middleware, Tools, Partitionslayouts und Produktionsabläufe.
Entwicklungsmodell¶
Die Seite Erste Schritte mit SiFli-SDK richtet die Toolchain ein und prüft eine funktionierende hello_world-Referenz. Halten Sie danach SDK-Revision, ausgewähltes Board, Beispiel-/Projektverzeichnis, Konfiguration und die zugehörigen Build- und Flash-Artefakte gemeinsam in einem reproduzierbaren Build-Protokoll fest. Wenn der Boardname keinen Core angibt, folgt das HCPU-Ausgabeverzeichnis häufig dem Muster build_<board_name>_hcpu/; für sf32lb52-lcd_n16r8 lautet es beispielsweise build_sf32lb52-lcd_n16r8_hcpu/. Verwenden Sie das tatsächlich für das aufgelöste Board-/Core-Ziel erzeugte Verzeichnis, statt den Namen manuell zusammenzusetzen.
Legen Sie für reproduzierbare Entwicklung einen SDK-Branch fest, dokumentieren Sie den Boardnamen, halten Sie lokale Board-Änderungen getrennt von den Herstellerdateien und nehmen Sie Konfigurationsänderungen in kleinen, überprüfbaren Schritten vor. Der detaillierte Ablauf zum Bauen, Flashen und Überwachen ist unter Bauen, Flashen und Überwachen der seriellen Ausgabe beschrieben.
Boardnamen¶
Die Boardnamen des SiFli-SDK sind SDK-spezifisch und stimmen möglicherweise nicht mit Zephyr-Boardnamen, Arduino-FQBNs oder Marketing-Boardnamen überein. Übernehmen Sie den Namen stets aus der Liste der vom SDK unterstützten Boards oder aus der Dokumentation des Beispiels.
Für SF32LB52 DevKit LCD-Boards lautet ein in Einstiegsbeispielen häufig verwendeter SDK-Boardname:
Projektstruktur¶
Die meisten SDK-Beispiele folgen dem Muster:
Zum Beispiel:
Beginnen Sie beim Aufbau von Produkt-Firmware mit dem nächstliegenden funktionierenden SDK-Beispiel und ändern Sie jeweils ein Subsystem nach dem anderen. So bleiben Board-Konfiguration, Middleware-Abhängigkeiten, Partitionsannahmen und Treiber-Setup intakt.
Konfiguration¶
Verwenden Sie im Beispielprojekt den SDK-Befehl menuconfig, um die Funktionskonfiguration für ein ausgewähltes Board anzupassen:
Typische Anpassungen sind:
- Middleware aktivieren oder deaktivieren.
- Bluetooth-Rollen oder -Profile ändern.
- Display-, Dateisystem- oder Audio-Unterstützung anpassen.
- Energiemanagement abstimmen.
- Protokollierungs- oder Shell-Optionen auswählen.
Fragen zur Produktreife¶
Beantworten Sie die folgenden Fragen, bevor Sie SiFli-SDK für einen Produkt-Branch festlegen:
- Welcher SDK-Release-Branch wird für das Produkt verbindlich festgeschrieben?
- Welche Board-Support-Dateien gehören dem Produkt, welche dem Hersteller?
- Welche Beispiele belegen die kritischen Funktionen?
- Welche Partitionstabelle wird für Fertigung und OTA verwendet?
- Welche Tools sind für das Flashen in der Fertigung freigegeben?
- Welche Protokolle sind in Builds für die Produktfreigabe aktiviert?
- Welches Wiederherstellungsimage wird für den Laborbetrieb aufbewahrt?
Praktische nächste Seiten¶
- Bauen, Flashen und Überwachen der seriellen Ausgabe
- Board-Konfiguration
- Komponenten und
sf-pkg - Beispiele — das am besten passende, nachweislich funktionierende Beispiel wählen, bevor ein Subsystem angepasst wird.
- CodeKit — nutzen Sie den VS-Code-Ablauf bei Bedarf und halten Sie SDK-Boardnamen und Build-Protokoll im gesamten Projekt konsistent.
- SDK-Anwendungshinweise
- Partitionstabellen
- Fehlersuche und Diagnose
Zuletzt aktualisiert: