Целесообразен ли переход на встраиваемую разработку на полпути? (После десяти лет помолвки предлагаю не делать, пожалеете)
Целесообразен ли переход на встраиваемую разработку на полпути? (После десяти лет помолвки предлагаю не делать, пожалеете)

Какие способности необходимы для встроенной разработки?

Чтобы стать отличным инженером-разработчиком встраиваемых систем, вам нужно как минимум 6 конкретных способностей:

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

2. Иметь опыт программирования на языке C, поскольку встроенные приложения используют язык C для разработки приложений, поэтому, если вы не понимаете язык C, нет необходимости ни о чем говорить.

3. Будьте знакомы со встроенными системами, такими как популярная встроенная система Linux, и вы должны быть знакомы с ее кодом ядра, запускаемыми командами, методами использования и т. д. Понять характеристики разработки встроенных продуктов, технические характеристики и рабочие моменты, которые необходимо освоить.

4. Иметь самые базовые возможности разработки аппаратных и программных приложений. Например, вам необходимо понимать, как разрабатывать приложения и как решать проблемы совместимости аппаратного и программного обеспечения.

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

6. Иметь способность переносить трудности и продолжать учиться. Будучи инженером-разработчиком встраиваемых систем, вы должны иметь способность переносить трудности и тяжелую работу. В конце концов, разработка программного обеспечения — это работа, ориентированная на проект. Во-вторых, также нужны отличные инженеры. Чтобы иметь возможность постоянно учиться.. Способность, индустрия программного обеспечения развивается с угрожающей скоростью. Навыки и опыт разработки, которыми мы гордимся сегодня, могут устареть через два-три года. Поэтому разработчики должны иметь возможность постоянно учиться. и принимать новые вещи. Стать отличным инженером-разработчиком встраиваемых систем — это не то, что происходит в одночасье, это также достигается в результате долгосрочного обучения. На самом деле, в настоящее время таких отличных инженеров-разработчиков встраиваемых систем очень мало, и это также тот талант, на поиск которого многие компании тратят значительные средства. Судя по нынешнему рынку встроенных талантов, большинство из них — это младшие специалисты по внедренным разработкам, которые шаг за шагом растут благодаря непрерывному обучению и накоплению опыта на работе после участия в определенном встроенном обучении.

Два варианта встроенной разработки

Первая дорога: аппаратная дорога

Первый шаг: проектирование печатной платы, обычно вырезание и расширение схемы макетной платы. На основе принципиальной схемы макетной платы нарисуйте печатную плату и библиотеку пакетов и разработайте свою собственную схему.

Шаг 2. Технология SOPC обычно разрабатывается для FPGA и CPLD. Используйте языки описания оборудования, такие как VHDL, для разработки специальных микросхем, написания собственных логических схем и разработки FPGA на основе ALTER или XILINUX.

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

Первый путь: путь программного обеспечения

Первый шаг: написание и изменение загрузчика. На этом этапе вы познакомитесь со структурой оборудования ARM, изучите язык ассемблера ARM и прочтете руководство по эксплуатации чипа ARM. Это похоже на работу с микроконтроллером 51. Два лучших справочных материала для этого шага: руководство по чипу и исходный код загрузчика.

Второй шаг: трансплантация системы и разработка драйверов. Я занимался только Linux, поэтому рекомендую также изучить встроенную систему Linux. Как стандартная система, она имеет открытый исходный код, и вы можете получить множество учебных материалов. Основа всей компьютерной науки. Изучите ядро ​​и разработку драйверов. Единственный способ — прочитать больше кодов, написать больше кодов и ознакомиться с системным API. Понимание ядра Linux и драйверов устройств Linux — это редкие и хорошие книги, которые стоит прочитать.

Третий шаг: написание приложений, пересадка различных графических интерфейсов, широко используются qt и minigui. Обе идеи схожи, и вам нужно быть знакомым только с одной.

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

Рекомендуется ли заниматься встроенной разработкой?

Как инженер по встраиваемым системам, проработавший почти десять лет, если мне нужно купить дом и выйти замуж, у моей семьи нет моего. Итак, я предлагаю вам не заниматься встроенной работой. К встроенной работе нельзя относиться искренне, а к реальной работе нельзя относиться хорошо. Не смотрите на так называемых «больших парней», которые разрабатывают программное обеспечение для Интернета, финансовые алгоритмы и тому подобное. Если вы достигнете этого уровня, ваша зарплата будет вдвое или в несколько раз выше, чем у той же встроенной системы. достигли такого уровня? Более того, производители микросхем сейчас все лучше и лучше инкапсулируют драйверы и даже базовые уровни. Например, производителям HiSilicon достаточно вырезать демонстрационную плату, а затем использовать ее для создания красивого приложения. Это не имеет ничего общего со встроенными системами. . Большой. Наконец, теперь возможности разработки встроенных приложений, особенно знаменитого C, вытеснены Qt и C++. В общем, при внедрении встроенного языка, особенно чистого C, зарплат и возможностей трудоустройства становится все меньше и меньше, и разница невелика.

Как избавиться от этих неприятностей?

Послушайте меня дальше.

В основном из

  • Темы, посвященные принципам работы операционной системы
  • Темы управления процессами
  • Темы управления памятью
  • Тема стека сетевых протоколов
  • Тема о драйверах устройств
  • Тема компонента ядра
  • Тема о файловой системе
  • Практические темы проекта ядра
  • и т. д. . .

В связи с ограниченностью места, мы покажем вам его часть в виде фотографий.

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