Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Структура программы на языке Си.Содержание книги
Поиск на нашем сайте
Программа на языке Си это текстовый файл, обычно с расширением. c; Текст программы называют исходным. Весь исполняемый код программы на Си находится в функциях - т.е. в фигурных скобках { исполняемый код программы } Программа на Си имеет определенную структуру: 1) заголовок; 2) включение необходимых внешних файлов - #include 3) ваши определения для удобства работы - #define 4) объявление глобальных переменных и констант 5) описание функций - обработчиков прерываний 6) описание других функций используемых в программе 7) функция main <- это единственный обязательный пункт! Это не жесткий порядок а ориентировочный! Иногда п.6 это прототипы функций, а сами функции описываются полностью после п.7 Прототип функции - показывает образец того как применять функцию в программе, какие значения в нее передаются и если она возвращает какое-то значение то прототип указывает тип возвращаемых данных. Прототип не имеет скобок { } а после скобок () ставится; Функция - имеет { "тело" } в фигурных скобках. Тело это код на Си определяющий то что делает функция. ; после вызова функции не ставится! Программа на Си начинает работу с функции main(). По необходимости из main() вызываются другие функции программы, из которых может быть вызов следующих функций, по завершении работы функции программа возвращается по той же цепочке как вызывались функции. main(){ вызов функции_1; //программа перейдет в функцию_1 строка программы; // будет выполнятся после Пример программы на Си /* пункт 1 заголовок программы Он оформляется как комментарий, и обычно содержит информацию - о названии, назначении, версии и авторе программы // пункт 2 включение внешних файлов /* перед компиляцией, препроцессор компилятора вставит вместо этой строчки содержимое (текст) заголовочного файла "хидера" mega16.h - этот файл содержит перечень регистров имеющихся в МК ATmega16 и соответствие их названий их физическим адресам в МК. Следует указать какой МК вы используете в свойствах проекта в компиляторе */ #include <delay.h> /* сделать паузу N (число) микросек. Это должна быть константа - НЕ переменная!!! delay_us(12 + 7*3); delay_ms(x); /* сделать паузу x милиСек delay_ms(3280); // пункт 3 определения пользователя #define ADC_BUSY PINB.0 #define - Это удобно! Но ВОВСЕ не обязательно.
Например: #define invbit(p,n) (p=p^bit(n)) Здесь переменные величины это 'p' и 'n'. Теперь для инвертирования бита 5 в регистре PORTB вам достаточно написать в программе: invbit(PORTB,5); Кроме того в самой правой части эти переменные величины могут быть связаны и арифметическими операциями и таких переменных может быть много.
|
||||||||
Последнее изменение этой страницы: 2016-12-14; просмотров: 375; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.119.106.66 (0.005 с.) |