Обзор раздела «Разработка»¶
Этот раздел поможет превратить работающую плату 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, графике, аудио, хранению данных, управлению питанием и подготовке к производству.
До реализации функций продукта настройте и зафиксируйте воспроизводимую базовую конфигурацию:
- Выберите точную конфигурацию платы SDK в разделе Конфигурация платы.
- Убедитесь, что штатный цикл Сборка, прошивка и мониторинг последовательного вывода выполняется успешно.
- Сохраните версию SDK или коммит, имя платы, команды сборки и прошивки, параметры последовательного порта и журнал загрузки.
- Начните с наиболее подходящего примера, особенно если он уже задействует самую сложную подсистему продукта.
Эти записи станут точкой отсчёта при изменениях приложения, переносе на другие платы, анализе ошибок тестирования и восстановлении устройств в полевых условиях.
Найдите рекомендации по задаче¶
| Задача | Начните здесь | Затем используйте |
|---|---|---|
| Собрать прошивку, загрузить её в плату и проверить вывод последовательного порта | Сборка, прошивка и мониторинг последовательного вывода | Инструменты для автоматизированной прошивки, трассировки и анализа сбоев. |
| Адаптировать прошивку к отладочной плате, модулю или собственной аппаратуре | Конфигурация платы | Руководство по соответствующей аппаратуре и наиболее подходящий пример для этой платы. |
| Повторно использовать драйвер или слой промежуточного ПО в нескольких проектах | Компоненты и sf_pkg |
Минимальный пример и документированные границы конфигурации. |
| Реализовать конкретную периферию или подсистему | Заметки по применению SiFli-SDK | Официальное руководство SDK по ссылке: в нём указаны точные API, символы конфигурации и команды. |
| Начать разработку продукта с уже работающего кода | Примеры | Подходящую конфигурацию платы; после каждого изменения проводите тестирование. |
| Диагностировать сбой или собрать данные для проверки продукта | Отладка и диагностика | Журналы и анализ сбоев. |
| Изменить загрузочную разметку, хранение данных, обновление, USB или энергопотребление | Темы по прошивке | Перед изменением кода изучите раздел о разметке разделов, обновлении, USB, питании или журналировании. |
Заметки по применению SiFli-SDK¶
Заметки сгруппированы по задачам интеграции, а не в порядке каталога SDK. Начните с нужной подсистемы. Перед адаптацией конфигурации или команды проверьте указанные семейства микросхем, конфигурацию платы, выпуск 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, пакет, ветка или коммит использовались для сборки прошивки?
- Какие команды сборки, прошивки, мониторинга и полного восстановления проверены?
- Какой пример или тест подтверждает работу каждой необходимой периферии и подсистемы продукта?
- Проверены ли разметка разделов, поведение при обновлении, целевое энергопотребление и процедура декодирования данных о сбоях?
Если на какой-то вопрос нет ответа, результат всё ещё может быть полезным прототипом, но воспроизводимой базовой конфигурацией продукта он пока не является.
Последнее обновление: