Что такое встроенная программа C и ее структура для начинающих

Попробуйте наш инструмент устранения неполадок





Ранее многие встраиваемые приложения были разработаны с использованием программирования на уровне сборки. Однако они не обеспечивали переносимости. Этот недостаток был преодолен с появлением различных языков высокого уровня, таких как C, Pascal и COBOL. Однако именно язык C получил широкое распространение для встраиваемых систем, и продолжает это делать. Написанный код на C более надежен, масштабируем и переносим, ​​и, по сути, его гораздо легче понять. Встроенное программирование на C - это душа процессора, работающего внутри каждого Встроенная система мы сталкиваемся в нашей повседневной жизни с мобильными телефонами, стиральными машинами и цифровыми фотоаппаратами. Каждый процессор связан со встроенным программным обеспечением. Первое и самое главное - это встроенное программное обеспечение, которое решает, что встроенная система функционирует. Встроенный язык C наиболее часто используется для запрограммировать микроконтроллер .

Что такое язык C?

Язык C был разработан Деннисом Ритчи в 1969 году. Он представляет собой набор из одной или нескольких функций, и каждая функция представляет собой набор операторов, выполняющих определенную задачу.
Язык C - это язык среднего уровня, поскольку он поддерживает приложения высокого уровня и приложения низкого уровня. Прежде чем вдаваться в подробности встроенного программирования на C, мы должны узнать об организации памяти RAM.




Основные особенности языка C включают следующее.

  • Язык C - это программное обеспечение, разработанное с различными ключевыми словами, типами данных, переменными, константами и т. Д.
  • Встроенный C - это общий термин, используемый для языка программирования, написанного на C, который связан с конкретной архитектурой оборудования.
  • Embedded C - это расширение языка C с некоторыми дополнительными файлами заголовков. Эти файлы заголовков могут изменяться от контроллера к контроллеру.
  • В микроконтроллер 8051 #include используется.

Что такое встроенное программирование на C

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



Встроенное программирование на C

Встроенное программирование на C

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

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


Встроенное системное программирование

Как мы обсуждали ранее, проектирование встраиваемой системы может быть выполнено с использованием аппаратного и программного обеспечения. Например, в простой встроенной системе процессор является основным модулем, который работает как сердце системы. Здесь процессор - это не что иное, как микропроцессор, DSP, микроконтроллер, CPLD и FPGA. Все эти процессоры являются программируемыми, что определяет работу устройства.

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

Поэтому встроенное системное программирование очень важно для процессора. Для встроенных систем доступны различные языки программирования, такие как C, C ++, язык ассемблера, JAVA, сценарий JAVA, Visual Basic и т. Д. Таким образом, этот язык программирования играет ключевую роль при создании встроенной системы, но выбор языка очень важен.

Шаги по созданию встроенной программы на C

Для разработки встроенной программы на языке c используются следующие этапы.

  • Комментарии
  • Директивы процессора
  • Конфигурация порта
  • Глобальные переменные
  • Основная функция / основная функция
  • Объявление переменной
  • Логика программы

Комментарии

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

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

C = a + b / * складываем две переменные, значение которых хранится в другой переменной C * /

Однострочный комментарий

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

Многострочный комментарий

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

Директивы процессора

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

как следующее.

#включают
#включают
Сбит LED = P2 ^ 3
Главный()
{
Светодиод = 0x0ff
Задерживать()
Светодиод = 0x00
}
#определять
#включают
#define LED P0
Главный()
{
Светодиод = 0x0ff
Задерживать()
Светодиод = 0x00
}

В приведенной выше программе директива #include обычно используется для включения стандартных библиотек, таких как study и. h используется для разрешения функций ввода-вывода с использованием библиотеки «C». Директива #define обычно используется для описания серии переменных и распределения значений путем выполнения процесса в рамках определенной инструкции, например макросов.

Конфигурация порта

Микроконтроллер имеет несколько портов, каждый из которых имеет разные контакты. Эти контакты могут использоваться для управления устройствами сопряжения. Объявление этих контактов может быть выполнено в программе с помощью ключевых слов. Ключевые слова во встроенной программе c являются стандартными, а также предопределенными, такими как bit, sbit, SFR, которые используются для определения битов и одиночного контакта в программе.

Есть определенные слова, которые зарезервированы для выполнения определенных задач. Эти слова известны как ключевые слова. Они являются стандартными и предопределены во Embedded C. Ключевые слова всегда пишутся строчными буквами. Эти ключевые слова необходимо определить до написания основной программы. Основные функции ключевых слов включают следующее.

#включают
Сбит a = P 2 ^ 2
SFR 0x00 = PoRT0
Бит C
главный()
{
…………… ..
…………… ..
}

sbit

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

Синтаксис этого типа данных: имя переменной sbit = бит SFR

Пример: sbit a = P2 ^ 1

Если мы назначим p2.1 как переменную «a», тогда мы можем использовать «a» вместо p2.1 в любом месте программы, что снизит сложность программы.

Кусочек

Этот тип данных в основном используется для разрешения битовой адресуемой памяти оперативной памяти, например от 20h до 2fh.

Синтаксис этого типа данных: имя битовой переменной

Пример: бит c

Это установка битовой последовательности в небольшой области данных, которая в основном используется с помощью программы для запоминания чего-либо.

SFR

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

Синтаксис этого типа данных: имя переменной SFR = адрес SFR для регистра SFR

Пример: SFR port0 = 0 × 80

Если мы выделяем 0 × 80 как «port0», после этого мы можем использовать 0 × 80 вместо port0 в любом месте языка программирования, чтобы уменьшить сложность программы.

Регистр SFR

SFR означает регистр специальных функций. В микроконтроллере 8051 он включает в себя оперативную память объемом 256 байтов, которая разделена на два основных элемента: первый элемент размером 128 байтов в основном используется для хранения данных, тогда как другой элемент размером 128 байтов в основном используется для регистров SFR. Все периферийные устройства, такие как таймеры, счетчики и порты ввода / вывода, хранятся в регистре SFR, и каждый элемент включает один адрес.

Глобальные переменные

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

#включают
Беззнаковое int a, c = 10
Главный()
{
……………
………… ..
}

Основная функция / основная функция

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

#включают
Главный()
{
……………
………… ..
}

Объявление переменной

Имя, подобное переменной, используется для хранения значений, но эта переменная должна быть сначала объявлена, прежде чем использоваться в программе. В объявлении переменной указывается ее имя, а также тип данных. Здесь тип данных - это не что иное, как представление данных хранилища. Во встроенном программировании на C используются четыре основных типа данных, такие как целое число, число с плавающей запятой, символ для хранения данных в памяти. Размер типа данных, а также диапазон могут быть определены в зависимости от компилятора.

Тип данных относится к обширной системе для объявления переменных разных типов, таких как целые, символьные, числа с плавающей запятой и т. Д. Встроенное программное обеспечение C использует четыре типа данных, которые используются для хранения данных в памяти.

«Char» используется для хранения любого отдельного символа «int» используется для хранения целочисленного значения, а «float» используется для хранения любого точного значения с плавающей запятой. Размер и диапазон различных типов данных на 32-битной машине приведены в следующей таблице. Размер и диапазон могут отличаться на машинах с разными размерами слов.

  • Размер данных типа char / signed char составляет 1 байт, а его диапазон - от -128 до +128.
  • Тип данных unsigned char составляет 1 байт, а его диапазон - от 0 до 255.
  • Размер типа данных Int / signed int составляет 2 байта, а его диапазон составляет от -32768 до 32767
  • Размер беззнакового типа данных int составляет 2 байта, а его диапазон - от 0 до 65535.

Главный()
{
Беззнаковые int a, b, c
}

Структура встроенной программы на C показана ниже.

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

{

  • локальные переменные
  • заявления
  • ………… ..
  • ………… ..

}

  • веселье (1)

{

  • локальные переменные
  • заявления
  • ………… ..
  • ………… ..

}

Логика программы

Логика программы - это план переулка, который появляется в теории за предсказуемыми результатами действий программы. Он объясняет утверждение, иначе теория относительно того, почему встроенная программа будет работать, и показывает признанные эффекты действий в противном случае ресурсы.

Главный
{
Светодиод = 0x0f
задержка (100)
Светодиод = 0x00
задержка (100)
}

Основные факторы встроенной программы C

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

Размер программы

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

Скорость программы

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

Портативность

Для разных встроенных процессоров может быть выполнена компиляция аналогичных программ.

  • Простая реализация
  • Простое обслуживание
  • Читаемость

Различия между программой C и встроенной программой C

На самом деле разница между встроенным программированием на C и C не так уж велика, кроме операционной среды и некоторых расширений. Эти языки программирования являются стандартами ISO и также имеют примерно одинаковый синтаксис, функции, типы данных и т. Д. Основные различия между программированием на C и программированием на встроенном c включают следующее.

Язык C

Встроенный язык C

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

Встроенный язык C используется для разработки приложений на основе микроконтроллеров.
Язык C - это не расширение какого-либо языка программирования, а язык программирования общего назначения.Embedded C - это расширение языка программирования C, включающее в себя различные функции, такие как адресация ввода-вывода, арифметика с фиксированной точкой, адресация множественной памяти и т. Д.

Он обрабатывает естественное развитие в природеПроцессы перекрестного развития в природе
Независимо от аппаратной архитектурыЭто зависит от аппаратной архитектуры микроконтроллера и других устройств.
Компиляторы языка C зависят от операционной системыВстроенные компиляторы C не зависят от ОС
В языке C для выполнения программы используются стандартные компиляторы.Во встроенном языке C используются определенные компиляторы.
Популярные компиляторы, используемые в этом языке: GCC, Borland turbo C, Intel C ++ и т. Д.Популярные компиляторы, используемые в этом языке: Keil, BiPOM Electronics и green hill.
Формат языка C - свободный форматЕго формат в основном зависит от типа используемого микропроцессора.
Оптимизация этого языка - это нормальноОптимизация этого языка на высоком уровне
Его очень легко изменять и читатьНелегко изменять и читать
Исправить ошибку легкоИсправление ошибок этого языка сложно

Примеры встроенных программ C

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

Пример-1

Пример-1

Пример-2

Пример-2

Пример-3

Пример-3

Пример-4

Пример-4

Преимущества

В преимущества встроенной программы на c g включают следующее.

  • Это очень просто понять.
  • Он выполняет аналогичную задачу постоянно, поэтому нет необходимости менять оборудование, например дополнительную память или место для хранения.
  • Он выполняет просто одну задачу сразу
  • Стоимость оборудования, используемого во встроенном c, обычно очень низка.
  • Встраиваемые приложения чрезвычайно подходят для различных отраслей промышленности.
  • На разработку прикладной программы уходит меньше времени.
  • Это снижает сложность программы.
  • Легко проверить и понять.
  • Он переносится с одного контроллера на другой.

Недостатки

В недостатки встроенного программирования на c включая следующее.

  • Одновременно он выполняет только одну задачу, но не может выполнять несколько задач.
  • Если мы изменим программу, необходимо также сменить оборудование.
  • Он поддерживает только аппаратную систему.
  • Проблема с масштабируемостью
  • У него есть ограничение, такое как ограниченная память в противном случае совместимость компьютера.

Приложения встроенной программы C

В приложения встроенного программирования c включая следующее.

  • Встроенное программирование на C используется в отраслях для разных целей.
  • Язык программирования, используемый в приложениях, - это проверка скорости на шоссе, управление светофором, управление уличным освещением, отслеживание транспортного средства, искусственный интеллект, домашняя автоматизация и автоматическая регулировка интенсивности.

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

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