Перейти к содержанию

Обзор раздела «Разработка»

Этот раздел поможет превратить работающую плату SF32 в прошивку продукта, которую удобно сопровождать. После первого успешного запуска hello_world здесь можно выбрать конфигурацию платы, настроить повторяемую сборку и прошивку, адаптировать подходящий пример, интегрировать функции продукта, диагностировать сбои и спланировать обновление и восстановление.

Для первого запуска платы используйте раздел Начало работы; для выбора устройства и отладочной платы — Продукты SF32; для схем и аппаратуры, готовой к производству, — Аппаратная часть; для основ архитектуры — База знаний. Этот раздел предназначен для инженерного процесса и практических рекомендаций по реализации конкретных задач.

SiFli-Solution

SiFli-Solution — отдельный программный пакет компании SiFli, который μForge.io пока не документирует. Здесь рассматриваются только SiFli-SDK и перечисленные ниже альтернативные пути сообщества. Если продукту требуется более комплексное решение для устройств с дисплеем, изучите официальную документацию SiFli Solution и обратитесь непосредственно в SiFli. Для сложного продукта на этой основе может потребоваться углублённое непосредственное участие SiFli.

Подготовьте базовую конфигурацию SiFli-SDK

SiFli-SDK — официальный программный пакет SiFli на базе RT-Thread и основной путь разработки прошивки для SF32. Начните с него, если нет конкретной причины оценивать другую экосистему: для него доступна наиболее полная документация по поддержке плат, Bluetooth, графике, аудио, хранению данных, управлению питанием и подготовке к производству.

До реализации функций продукта настройте и зафиксируйте воспроизводимую базовую конфигурацию:

  1. Выберите точную конфигурацию платы SDK в разделе Конфигурация платы.
  2. Убедитесь, что штатный цикл Сборка, прошивка и мониторинг последовательного вывода выполняется успешно.
  3. Сохраните версию SDK или коммит, имя платы, команды сборки и прошивки, параметры последовательного порта и журнал загрузки.
  4. Начните с наиболее подходящего примера, особенно если он уже задействует самую сложную подсистему продукта.

Эти записи станут точкой отсчёта при изменениях приложения, переносе на другие платы, анализе ошибок тестирования и восстановлении устройств в полевых условиях.

Найдите рекомендации по задаче

Таблица: задачи разработки SF32
Задача Начните здесь Затем используйте
Собрать прошивку, загрузить её в плату и проверить вывод последовательного порта Сборка, прошивка и мониторинг последовательного вывода Инструменты для автоматизированной прошивки, трассировки и анализа сбоев.
Адаптировать прошивку к отладочной плате, модулю или собственной аппаратуре Конфигурация платы Руководство по соответствующей аппаратуре и наиболее подходящий пример для этой платы.
Повторно использовать драйвер или слой промежуточного ПО в нескольких проектах Компоненты и sf_pkg Минимальный пример и документированные границы конфигурации.
Реализовать конкретную периферию или подсистему Заметки по применению SiFli-SDK Официальное руководство SDK по ссылке: в нём указаны точные API, символы конфигурации и команды.
Начать разработку продукта с уже работающего кода Примеры Подходящую конфигурацию платы; после каждого изменения проводите тестирование.
Диагностировать сбой или собрать данные для проверки продукта Отладка и диагностика Журналы и анализ сбоев.
Изменить загрузочную разметку, хранение данных, обновление, USB или энергопотребление Темы по прошивке Перед изменением кода изучите раздел о разметке разделов, обновлении, USB, питании или журналировании.

Заметки по применению SiFli-SDK

Заметки сгруппированы по задачам интеграции, а не в порядке каталога SDK. Начните с нужной подсистемы. Перед адаптацией конфигурации или команды проверьте указанные семейства микросхем, конфигурацию платы, выпуск SDK и требования к аппаратуре.

Таблица: заметки по применению SiFli-SDK
Инженерная задача С чего начать
Аналоговые сигналы и датчики Измерения с помощью GPADC · Подключение датчиков и чтение данных
Хранение данных и графические ресурсы Работа с внешней флеш-памятью · Сжатие графических ресурсов с помощью EZIP
Надёжность, энергопотребление и отладка Настройка сторожевого таймера · Настройка режимов энергосбережения и измерение тока · Сбор журналов и анализ сбоев
Проверка RF и Bluetooth RF-тестирование с SiFli-SDK · Сигнальные испытания Bluetooth · Проверка отдельных RF-операций Bluetooth
Таблица: структура раздела «Разработка»
Раздел Назначение
SiFli-SDK Настройте поддерживаемый эталонный процесс: конфигурация, сборка, прошивка, повторно используемые компоненты и диагностика.
Заметки по применению SiFli-SDK Применение SDK для конкретных задач: ADC, датчики, внешняя флеш-память, низкое энергопотребление, диагностика, RF- и Bluetooth-тестирование.
Примеры Выбор и адаптация работающей реализации для конкретной платы и самой сложной подсистемы продукта.
Инструменты Подбор средств загрузки, мониторинга, трассировки, анализа сбоев, обработки ресурсов и подготовки к производству.
Темы по прошивке Решения для всего продукта: разделы памяти, OTA/DFU, USB, управление питанием и сбор диагностических данных.
Эксперименты и сообщество Оценка Zephyr, Arduino, MicroPython или Rust с учётом области применения и зрелости, описанных на соответствующих страницах.

Взвешенно оценивайте экспериментальные пути сообщества

Группа Эксперименты и сообщество предназначена для команд, которым по конкретной причине требуется выйти за рамки основного пути с SDK. Это не означает, что уровень поддержки серийного производства сопоставим с SiFli-SDK.

Таблица: соответствие путей сообщества задачам
Путь Рассматривайте, если Учитывайте, что это
Zephyr Нужны API Zephyr, devicetree, Kconfig или доработка поддержки платы в downstream-ветке. Путь оценки downstream-разработки с поддержкой конкретной платы.
Arduino Нужны скетчи или быстрый прототип периферии на поддерживаемой плате. Бета-путь, ограниченный одной поддерживаемой платой.
MicroPython Оценивается возможность запуска скриптов в будущем. Информационная страница до появления воспроизводимого общедоступного порта.
Rust Есть возможность оценить работу с HAL/PAC и предложить исправления в исходный проект. Проект сообщества, который ещё находится в разработке.

Прежде чем строить продукт на одном из этих путей, проверьте на конкретной плате всю требуемую периферию, разметку флеш-памяти, методы отладки и процедуру восстановления. Зафиксируйте проверенную ревизию, конфигурацию, команды и результаты вместе с исходным кодом продукта.

Проверьте готовность прошивки к применению в продукте

Прежде чем считать выбранный путь разработки прошивки пригодным для применения в продукте, убедитесь, что можете ответить на вопросы:

  • Для какого чипа и какой ревизии платы или собственной аппаратуры проводились испытания и какая конфигурация использовалась?
  • Какая версия SDK, пакет, ветка или коммит использовались для сборки прошивки?
  • Какие команды сборки, прошивки, мониторинга и полного восстановления проверены?
  • Какой пример или тест подтверждает работу каждой необходимой периферии и подсистемы продукта?
  • Проверены ли разметка разделов, поведение при обновлении, целевое энергопотребление и процедура декодирования данных о сбоях?

Если на какой-то вопрос нет ответа, результат всё ещё может быть полезным прототипом, но воспроизводимой базовой конфигурацией продукта он пока не является.

Последнее обновление: