8.1 Теоретические сведения
Подпрограммы применяют в тех случаях, когда в нескольких местах алгоритма требуется выполнить идентичные действия с разными данными. Отсчет времени можно организовать с помощью подпрограмм со счетчиками, что и реализовано в алгоритме, показанном на рисунке 8.1. Часто программу разбивают на подпрограммы, чтобы упростить её чтение.
Рассмотрим сначала работу внутреннего цикла подпрограммы Timer. Сначала счетчику внутреннего циклаSch_inзадаем какое-то значениеN. Затем значение счетчикаSch_inуменьшается на 1 и проверяется: не стало ли оно нулевым. Если значение счетчика не равно нулю, то выполняется инструкция переходаGOTO M_in, повторяющая цикл. Если счетчик обнулился, программа выходит из цикла. Длительность задержки времени определяется начальной величиной счетчикаSch_inи временем выполнения инструкций подпрограммы в МК. Поскольку микропроцессор работает с высокой частотой, то часто приходится создавать внешний цикл со счетчикомSch_outдля увеличения времени задержки. Его работа аналогична. Сначала задаем значениеSch_out=W.На каждый цикл уменьшенияSch_outна единицу, внутренний цикл сработаетNраз. Время задержки будет определяться произведениемSch_outSch_inи частой работы генератора МК.
Подпрограммы пишут после инструкции GOTO$основной программы. Подпрограмма всегда начинается с имени, которое должно быть написано без пробела. Заканчивается подпрограмма инструкцией возврата в основную программуRETURN. Подпрограмма из основной программы вызывается по имени инструкцией CALL ИМЯ, например CALL Timer.Значение аккумулятораWявляется аргументом для подпрограммыTimer, определяющим длительность её работы. После завершения ее работы управление передается в главную программу на следующую инструкцию после инструкцииCALL Timer.
Yandex.RTB R-A-252273-3
- Микропроцессорные системы в электроэнергетике
- Алматы 2013
- Введение
- 1 Системы счислений. Карта памяти микроконтроллера
- 1.1 Краткие теоретические сведения
- 1.2 Задания
- 1.3 Контрольные вопросы
- 2 Изучение среды mplab. Управление оборудованием
- 2.1 Краткие теоретические сведения и задания для внеаудиторной подготовки
- "Умк-mini"
- 2.2 Исходные данные
- 2.3 Выполнение проекта на умк-7
- 4.Выполним соответствующие настройки для запуска Вашего проекта:
- 6.Запуск проекта
- 2.4 Контрольные вопросы
- 3 Сложение, вычитание. Логика
- 3.1 Теоретические сведения
- 3.2 Исходные данные и выполнение программы
- 3.4 Контрольные вопросы
- 4 Операции преобразования информации
- 4.1 Теоретические сведения
- 4.2 Исходные данные и задание
- 4.3 Контрольные вопросы
- 5 Анализ информации посредством регистра состояния
- 5.1 Теоретические сведения
- 5.2 Исходные данные
- 5.3 Порядок выполнения работы
- 5.4 Контрольные вопросы
- 6 Маскирование
- 6.1 Краткие теоретические сведения
- 6.2 Исходные данные и задание
- 6.3 Контрольные вопросы
- 7 Суммирование массива информации
- 7.1 Теоретические сведения
- 7.2 Исходные данные
- 7.3 Выполнение задания
- 7.4 Контрольные вопросы
- 8 Автоматизация окрасочной камеры. Организация подпрограмм
- 8.1 Теоретические сведения
- 8.2 Задание на проектирование.
- 8.3 Выполнение задания
- 8.4 Контрольные вопросы
- 9 Программированиеклавиатуры
- 9.1 Теоретические сведения
- 9.2 Задание на проектирование
- Фрагмент 9.1. Программирование клавиатуры.
- 9.3 Задание на выполнение
- 9.4 Контрольные вопросы
- 10 Автоматизация упаковки
- 10.1 Задание на автоматизацию упаковочной машины
- 10.2 Исходные данные
- 10.3 Выполнение задания
- 10.4 Контрольные вопросы
- 11 Программирование обработки аварийной ситуации
- 11.1 Теоретические сведения
- 11.2 Задание на проектирование и выполнение программы
- 11.3 Контрольные вопросы
- 12 Программирование таймерных функций
- 12.1 Задание на проектирование
- 12.2 Выполнение работы
- 12.3 Контрольные вопросы
- Приложение а Системы счислений
- Приложение б Карта памяти мк pic16877
- Приложение в
- Регистр Status
- Приложение д Описание инструкций мк pic
- Приложение е Модуль таймера tmr1
- Список литературы
- Содержание
- 0 50013, Алматы, Байтурсынова, 126