Встроенные системы - инструменты и периферия

Компиляторы и ассемблеры

Компилятор

Компилятор - это компьютерная программа (или набор программ), которая преобразует исходный код, написанный на языке программирования (исходный язык), в другой компьютерный язык (обычно двоичный формат). Наиболее частая причина преобразования - создание исполняемой программы. Имя «компилятор» в основном используется для программ, которые переводят исходный код с языка программирования высокого уровня на язык низкого уровня (например, язык ассемблера или машинный код).

Кросс-компилятор

Если скомпилированная программа может работать на компьютере, имеющем другой ЦП или операционную систему, чем компьютер, на котором компилятор скомпилировал программу, то этот компилятор известен как кросс-компилятор.

Декомпилятор

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

Конвертер языков

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

Компилятор, вероятно, выполнит следующие операции -

  • Preprocessing
  • Parsing
  • Семантический анализ (перевод, управляемый синтаксисом)
  • Генерация кода
  • Оптимизация кода

Ассемблеры

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

Инструменты отладки во встроенной системе

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

  • Simulators
  • Стартовые комплекты микроконтроллеров
  • Emulator

Симуляторы

Код тестируется для MCU / системы путем его моделирования на главном компьютере, используемом для разработки кода. Симуляторы пытаются смоделировать поведение всего микроконтроллера программно.

Функции тренажеров

Симулятор выполняет следующие функции -

  • Определяет семейство процессора или устройства обработки, а также его различные версии для целевой системы.

  • Контролирует подробную информацию о части исходного кода с метками и символическими аргументами по мере выполнения каждого отдельного шага.

  • Предоставляет состояние ОЗУ и смоделированных портов целевой системы для каждого отдельного шага выполнения.

  • Отслеживает реакцию системы и определяет пропускную способность.

  • Обеспечивает отслеживание вывода содержимого программного счетчика по сравнению с регистрами процессора.

  • Предоставляет подробное описание данной команды.

  • Контролирует подробную информацию о командах симулятора по мере их ввода с клавиатуры или выбора из меню.

  • Поддерживает условия (до 8, 16 или 32 условий) и безусловные точки останова.

  • Предоставляет точки останова и трассировку, которые вместе являются важным инструментом тестирования и отладки.

  • Облегчает синхронизацию внутренних периферийных устройств и задержек.

Стартовый комплект микроконтроллера

Стартовый комплект микроконтроллера состоит из -

  • Аппаратная плата (оценочная плата)
  • Системный программист
  • Некоторые программные инструменты, такие как компилятор, ассемблер, компоновщик и т. Д.
  • Иногда оценочная версия компилятора ограничивается IDE и размером кода.

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

Эмуляторы

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

Эмуляция означает способность компьютерной программы в электронном устройстве имитировать (имитировать) другую программу или устройство. Эмуляция ориентирована на воссоздание оригинальной компьютерной среды. Эмуляторы имеют возможность поддерживать более тесную связь с аутентичностью цифрового объекта. Эмулятор помогает пользователю работать с любым приложением или операционной системой на платформе так же, как программное обеспечение работает в своей исходной среде.

Периферийные устройства во встроенных системах

Встроенные системы взаимодействуют с внешним миром через свои периферийные устройства, такие как следующие & mins;

  • Интерфейсы последовательной связи (SCI), такие как RS-232, RS-422, RS-485 и т. Д.
  • Интерфейс синхронной последовательной связи, такой как I2C, SPI, SSC и ESSI
  • Универсальная последовательная шина (USB)
  • Мультимедийные карты (SD-карты, Compact Flash и т. Д.)
  • Такие сети, как Ethernet, LonWorks и т. Д.
  • Полевые шины, такие как CAN-Bus, LIN-Bus, PROFIBUS и т. Д.
  • Имеры, такие как PLL (s), Capture / Compare и Time Processing Units.
  • Дискретный ввод-вывод, также известный как ввод / вывод общего назначения (GPIO)
  • Аналого-цифровое / цифровое-аналоговое (АЦП / ЦАП)
  • Отладка, например, JTAG, ISP, ICSP, порт BDM, порты BITP и DP9

Критерии выбора микроконтроллера

Выбирая микроконтроллер, убедитесь, что он соответствует поставленной задаче и является экономически эффективным. Мы должны посмотреть, может ли 8-битный, 16-битный или 32-битный микроконтроллер лучше всего справиться с вычислительными потребностями задачи. Кроме того, при выборе микроконтроллера следует учитывать следующие моменты:

  • Speed - Какую максимальную скорость может поддерживать микроконтроллер?

  • Packaging- Это 40-контактный DIP (Dual-inline-package) или QFP (Quad flat package)? Это важно с точки зрения пространства, сборки и прототипирования конечного продукта.

  • Power Consumption - Это важный критерий для продуктов с батарейным питанием.

  • Amount of RAM and ROM на чипе.

  • Count of I/O pins and Timers на чипе.

  • Cost per Unit - Это важно с точки зрения конечной стоимости продукта, в котором будет использоваться микроконтроллер.

Кроме того, убедитесь, что у вас есть такие инструменты, как компиляторы, отладчики и ассемблеры, доступные с микроконтроллером. Самое главное, вы должны приобретать микроконтроллер из надежного источника.