русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

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


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Описание программы


Дата добавления: 2015-08-06; просмотров: 624; Нарушение авторских прав


 

 

Дополнение к описанию практической работы № 7

 

В задании поставлена задача: «Разработать устройство управления одним светодиодом при помощи одной кнопки. При каждом нажатии кнопки светодиод должен поочерёдно включаться и отключаться. При первом нажатии кнопки светодиод должен включиться, при следующем – отключиться и т. д.».

Последовательность действий в словесной форме отображается так:

1. Прочитать состояние младшего разряда порта РД.0.

2. Если значение этого разряда равно единице, перейти к началу цикла (то есть продолжать читать состояние младшего разряда порта

3. Если значение разряда РД0 равно нулю, изменить состояние выхода РВ.0 на противоположное.

4. Перейти к началу цикла (то есть читать состояние РД0).

Последовательность действий (алгоритм) удобнее отображать графически.

Различные действия, выполняемые программой, отображаются прямоугольником (блоком). Их суть вписывается в прямоугольник. Допускается в одном блоке объеди-нять несколько операций. Последовательность действий показывается стрелками. Ромбик реализует разветвление программы по условию, которое записано внутр. Если условие истинно, то надо идти по пути, обозначенному словом «Да». Если нет, - то по пути «Нет». Прямоугольник со скруглёнными боками – начало и конец алгоритма.

Алгоритм поставленной задачи – на рисунке.

 

 

Первые два блока – установка вершины стека и программирование портов ввода – вывода. Основной цикл обведён штриховой линией.

Первая операция – чтение состояния младшего разряда порта Д.

Вторая операция – сравнение значения содержимого разряда с единицей. Если РД0 =1, то программа возвращается к началу цикла.

Если РД0 = 1, то программа идёт по стрелке «Нет», где выполняется третья операция.

Третья операция - сравнение, при котором проверяется состояние светодиода (горит или не горит) и по результату которого светодиод должен переключиться в другое сос-тояние. Если светодиод не горит (РВ0 = 1), то разряд сбрасывается на ноль (0=>РВ0), то



есть разряду РВ0 присваивается значение «0», и программа возвращается к началу цикла. Если светодиод горит (РВ0 = 0), то разряду присваивается значение 1 (1=>РВ0), после чего программа возвращается к началу цикла.

Очевидно, основной цикл является бесконечным.

Алгоритм простой, но программа по нему работать не будет, так как скорость работы МК такова, что за время нажатия кнопки основной цикл будет выполнен сотни раз. При каждом проходе программа будет обнаруживать нажатие кнопки и переключать свето-диод. Так быстро, что это будет восприниматься, как свечение в полнакала. В каком именно состоянии программа остановится, зависит от момента отпускания кнопки. А этот момент – величина случайная.

Для того, чтобы программа работала, алгоритм дополняется операцией ожидания.

 



<== предыдущая лекция | следующая лекция ==>
ПРАКТИЧЕСКАЯ РАБОТА 7 | Трансляция и отладка программы микроконтроллеров AVR (Белов, с. 303)


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.97 сек.