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

Zephyr upstream

Плата sf32lb52_devkit_lcd поддерживается и сопровождается в основной ветке Zephyr начиная с v4.3.0. См. примечания к выпуску v4.3.0 и документацию платы SF32LB52 DevKit LCD. В этом руководстве создаётся рабочая область v4.3.0, собирается первый пример и прошивается плата. Для более широкого набора официальных функций SF32 используйте SiFli-SDK.

Проверьте список функций платы

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

Что понадобится

Оборудование

  • SF32LB52 DevKit LCD на базе модуля SF32LB52x-MOD-N16R8 с микроконтроллером SF32LB525UC6, 8 MB OPI-PSRAM и 128 Mb QSPI-NOR.
  • Кабель данных USB Type-C, подключённый к интерфейсу USB-UART платы.

Программное обеспечение

  • Хостовая ОС, поддерживаемая Zephyr v4.3.0; требования к ней указаны в руководстве Getting Started.
  • Хост-зависимости Zephyr и Zephyr SDK для цели ARM Cortex-M, установленные согласно этому руководству.
  • Git, Python 3 и pip.

Подготовьте инструменты

Сначала установите хост-зависимости и Zephyr SDK по руководству Getting Started для Zephyr v4.3.0. Затем создайте окружение Python и инициализируйте рабочую область с соответствующим тегом Zephyr:

python3 -m venv ~/zephyr-venv
source ~/zephyr-venv/bin/activate
pip install west
west init -m https://github.com/zephyrproject-rtos/zephyr --mr v4.3.0 ~/zephyrproject
cd ~/zephyrproject
west update
west zephyr-export
pip install -r zephyr/scripts/requirements.txt

Оставьте это окружение Python активным на время сборки и прошивки.

Проверьте плату

Убедитесь, что цель есть в рабочей области:

west boards

Ожидаемое имя платы:

sf32lb52_devkit_lcd

Соберите Hello World

Соберите стандартный пример Hello World для Zephyr:

west build -b sf32lb52_devkit_lcd samples/hello_world --pristine

Успешная сборка подтверждает, что цель платы и инструментальная цепочка доступны в рабочей области. Она не проверяет работу всех периферийных устройств платы.

Прошейте плату

В конфигурации платы в основной ветке Zephyr sftool указан как штатный инструмент для прошивки. Установите OpenSiFli sftool, убедитесь, что он доступен через PATH, и переведите плату в режим последовательной загрузки согласно документации платы. Затем выполните:

west flash

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

Откройте последовательную консоль

Конфигурация платы в основной ветке Zephyr направляет консоль Zephyr на usart1 со скоростью 1000000 бод. Откройте этот UART в терминале последовательного порта и проверьте вывод:

Hello World! sf32lb52_devkit_lcd

Выберите следующий пример

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

Устранение неполадок

Таблица: устранение неполадок
Симптом Проверка
west boards не показывает цель SF32 Убедитесь, что рабочая область инициализирована на основе основного репозитория Zephyr версии v4.3.0 или новее и что west update завершился.
Сборка завершается ошибкой до компиляции Убедитесь, что окружение Python активно, Zephyr SDK для ARM Cortex-M установлен, а зависимости v4.3.0 загружены.
Плата собирается, но не прошивается Убедитесь, что sftool установлен и доступен через PATH, выбран правильный последовательный порт, а плата находится в режиме последовательной загрузки.
Нет вывода в последовательный порт Проверьте usart1, скорость 1000000 бод, подключение USB-UART и не открыт ли порт в другом терминале.
Пример периферии завершается ошибкой Проверьте таблицу поддерживаемых функций платы и конфигурацию примера; базовая цель платы не обязательно включает все периферийные устройства.

Перед интеграцией в продукт

  • Изучите таблицу поддерживаемых функций платы в основной ветке Zephyr и конфигурацию нужного примера.
  • Проверьте необходимые интерфейсы, производительность, использование памяти и энергопотребление на целевой плате с конфигурацией продукта. Успешная сборка Hello World является лишь проверкой инструментальной цепочки.
  • Сравните функциональный охват цели из основной ветки Zephyr с SiFli-SDK, если проекту нужна функция, не указанная или не проверенная для этой цели Zephyr.

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