Разработка облегченной системы OpenHarmony [3] Компиляция и запись кода
Разработка облегченной системы OpenHarmony [3] Компиляция и запись кода

3.1 Каталог исходного кода

После загрузки кода вы можете войти в каталог кода:

Здесь мы сосредоточимся на еще нескольких важных папках:

1 папка продавца

В этой папке хранятся конфигурации, связанные с производителем, включая конфигурации компонентов и конфигурации, связанные с HDF. Каталог кода выглядит следующим образом:

Вы можете видеть, что есть папка hisilicon, под которой находятся Hi3516DV300, hispark_aries и т.д., среди которых плата разработки hi3861 соответствует hispark_pegasus

Внутри находятся следующие файлы:

Более важным является файл конфигурации config.json, который определяет тип ядра и используемые подсистемы. Мы объясним это подробно позже.

2 папка устройства

В этой папке хранится исходный код, относящийся к конкретным платам и чипам разработки. Здесь OpenHarmony разделен на две части: SoC и Board. Среди них SoC содержит код, относящийся к конкретному чипу, в том числе драйвер, относящийся к плате микросхемы, относится к коду, относящемуся к плате разработки, который конкретно относится к плате разработки;

Цель такой конструкции — отличить SoC от платы и обеспечить возможность повторного использования кода, связанного с SoC. Потому что в будущем может появиться один SOC с несколькими платами.

Среди них соответствующий SOC платы разработки WiFi IoT от Runhe — это папка hi3861v100, а соответствующая плата — hispark_pegasus.

3-арочная папка

В этой папке хранится код для конкретной архитектуры чипа. Путь к папке:

kernel/liteos_m/arch

Путь кода следующий:

Таким образом, OpenHarmony реализовал три уровня изоляции: ARCH (архитектура), soc (чип) и board (плата разработки), уменьшая связанность кода. Дизайн относительно разумный.

4 папки приложений

В этой папке хранится код, связанный с приложением. Нам нужно добавить его в эту папку, когда мы будем писать код позже.

3.2 Компиляция

Облегченная система компилируется с помощью hb и выполняется в корневом каталоге кода.

hb set

При первом входе вам может быть предложено ввести путь. Просто введите (английская точка).

Здесь выбираем wifiiot_hispark_pegasus

Затем введите:

hb build -f

Начать компиляцию

Когда вы увидите следующее, это означает, что компиляция прошла успешно:

Скомпилированная прошивка находится по адресу: out/hispark_pegasus/wifiiot_hispark_pegasus/.

Среди них Hi3861_wifiiot_app_allinone.bin — это то, что мы хотим записать на плату разработки.

3.3 Сжигание

(1) Запись на основе метода vscode.

OpenHarmony можно записать на основе vscode, но этот метод более сложен и пока не рекомендуется здесь.

(2) Запись с помощью инструмента hiburn.

Используйте USB-кабель для подключения к макетной плате 3861, как показано на рисунке:

(1) Откройте инструмент HiBurn,
(2) Нажмите «Выбрать файл», чтобы выбрать файл Hi3861_wifiiot_app_allinone.bin для загрузки.
(3) Установите флажок «Автозапись».
(4) Нажмите кнопку «Подключиться».
(5) В это время нажмите кнопку сброса RST на плате разработки, и вы увидите, что программа начала загрузку:
(6) Обратите внимание, что после загрузки нажимаем кнопку отключения, иначе мы его снова сбросим и запишем заново. Мы также можем отключить программу HiBurn.

3.4 Эффект операции

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

Это связано с тем, что тест xts включен по умолчанию, и плата разработки выполнит тест xts после запуска системы.

Если вы увидите следующее сообщение, это означает, что тест xts пройден.

напиши в конце

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

  • Лайки, репосты и ваши «лайки и комментарии» — движущая сила моего творчества;
  • сосредоточиться на Редактор,В то же время вы можете рассчитывать на последующие статьи🚀,Делитесь оригинальными знаниями время от времени;
  • Если вы хотите получить более полные знания о последних знаниях Хунмэна, вы можете следить за станцией B: Ma Niu Classroom Hongmeng Development;
boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose