Читаем Занимательно о микроконтроллерах полностью

Функция начинается с заголовка, в который входит тип возвращаемого значения, имя функции и круглые скобки, внутри которых объявляются параметры функции. Параметр — это определяемая функцией переменная, которая принимает передаваемый функции аргумент. Во всех функциях, которые ничего не возвращают, вместо типа возвращаемого значения указывается ключевое слово void. Исполняемые операторы, составляющие тело функции, заключаются в фигурные скобки.

Все переменные и константы обязательно должны быть объявлены до первого использования.

При разработке программы для микроконтроллеров всегда необходимо иметь перед глазами принципиальную схему устройства, для которого пишется программа, т. к. схема и программа тесно связаны между собой и дополняют друг друга. Для иллюстрации простейшей программы, написанной на языке программирования С-51, воспользуемся схемой, приведенной на рис. 9.5.

Рис. 9.5.Пример простейшей схемы устройства, построенного с использованием микроконтроллера

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

#include

void main (void)

{P0«=0;         //Зажигание светодиода

while(1);      //Бесконечный цикл

Программа начинается с оператора присваивания P0 = 0. Следующий оператор, while (1), обеспечивает зацикливание программы. Это сделано для того, чтобы микроконтроллер не выполнял больше никаких действий. В противном случае он перейдет к следующей ячейке памяти программ и будет выполнять команды, которые мы не записывали.

Обратите внимание на то, что язык программирования «знает», где находится порт Р0. Эту информацию он получает из команды включения файла, содержащейся в операторе #inciude.

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

#include

void svGorit(void)

{P0=0;          //Зажигание светодиода

void main(void)

{svGorit();   //Вызов функции с именем svGorit

while(1);     //Бесконечный цикл

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

Элементы языка С-51

В предыдущих главах мы уже выяснили, что программы пишутся как обычные текстовые файлы. При этом программа-транслятор с языка программирования должна однозначно преобразовывать этот текст в машинные коды процессора. Для этого в исходном тексте программы должны быть использованы только определенные символы кодовых таблиц. Недопустимо использование форматирования (выделение жирным, подчеркивание или курсив). Рассмотрим набор символов, допустимых при написании программ на языке С-51.

Используемые символы алфавита

В исходном тексте программы, написанной на языке программирования С-51, используется часть ASCII- или ANSI-символов. Множество символов, используемых в языке программирования С, можно разделить на пять групп:

1. Символы, используемые для образования ключевых слов и идентификаторов, приведены в табл. 9.1. В эту группу входят прописные и строчные буквы английского алфавита, а также символ подчеркивания. Следует отметить, что в языке программирования С-51 различаются прописные и строчные буквы. Например, идентификаторы start и Start будут считаться различными. Цифры, кроме применения в ключевых словах и идентификаторах, могут быть использованы для записи числовых констант, хотя могут быть использованы и в идентификаторах констант и переменных.

2. Группа прописных и строчных букв русского алфавита приведена в табл. 9.2. Эти буквы могут быть использованы в комментариях к исходному тексту программы и строковых константах.

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

Перейти на страницу:

Похожие книги

Электроника для начинающих (2-е издание)
Электроника для начинающих (2-е издание)

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

Чарльз Платт

Радиоэлектроника / Технические науки
PIC-микроконтроллеры. Все, что вам необходимо знать
PIC-микроконтроллеры. Все, что вам необходимо знать

Данная книга представляет собой исчерпывающее руководство по микроконтроллерам семейства PIC компании Microchip, являющегося промышленным стандартом в области встраиваемых цифровых устройств. В книге подробно описывается архитектура и система команд 8-битных микроконтроллеров PIC, на конкретных примерах изучается работа их периферийных модулей.В первой части излагаются основы цифровой схемотехники, математической логики и архитектуры вычислительных систем. Вторая часть посвящена различным аспектам программирования PIC-микроконтроллеров среднего уровня: описывается набор команд, рассматривается написание программ на ассемблере и языке высокого уровня (Си), а также поддержка подпрограмм и прерываний. В третьей части изучаются аппаратные аспекты взаимодействия микроконтроллера с окружающим миром и обработки прерываний. Рассматриваются такие вопросы, как параллельный и последовательный ввод/вывод данных, временные соотношения, обработка аналоговых сигналов и использование EEPROM. В заключение приводится пример разработки реального устройства. На этом примере также демонстрируются простейшие методики отладки и тестирования, применяемые при разработке реальных устройств.Книга рассчитана на самый широкий круг читателей — от любителей до инженеров, при этом для понимания содержащегося в ней материала вовсе не требуется каких-то специальных знаний в области программирования, электроники или цифровой схемотехники. Эта книга будет также полезна студентам, обучающимся по специальностям «Радиоэлектроника» и «Вычислительная техника», которые смогут использовать ее в качестве учебного пособия при прослушивании соответствующих курсов или выполнении курсовых проектов.

Сид Катцен

Радиоэлектроника
Электроника для начинающих
Электроника для начинающих

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

Паоло Аливерти , Чарльз Платт

Радиоэлектроника / Технические науки