Техническое задание и алгоритм решения – первая программа на МК

April 12, 2014 by admin Комментировать »

Перед изучением дальнейшего материала желательно ознакомиться с классическими первоисточниками по программированию [6-6], [6-7]. Именно «ознакомиться», а не детально проштудировать. Время само подскажет, когда к ним надо будет ещё раз вернуться, но уже для детальной проработки.

Разобраться в тонкостях любого процесса можно только на практике. При этом первые опыты должны быть не очень сложными, понятными и хорошо прокомментированными.

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

Пример. Разработать тестовую программу для MK SKit. После начальной подачи питания индикатор HL1 должен быть погашен. При нажатии на кнопку SB1 он должен засветиться, при отпускании — опять погашен и т.д.

Алгоритм решения задачи очевиден — в бесконечном цикле проверять состояние кнопки SB1 и если она нажата, то подавать с выхода MK НИЗКИЙ уровень на светодиод HL1. При отпускании кнопки SB1 надо снять питание со светодиода HL1, т.е. установить на линии MK ВЫСОКИЙ уровень.

На Рис. 6.6 показана графическая схема алгоритма функционирования, которую программисты по-привычке называют «блок-схемой». На каком этапе её составлять и составлять ли её вообще, каждый решает для себя сам. Одни предпочитают нарисовать алгоритм до написания листинга, другие документируют алгоритм после отладки проекта. Но в любом случае надо уметь читать такие схемы.

Рис. 6.6. Графическая схема алгоритма функционирования.

Блок-схема (англ. «block diagram», «flowchart») — это условное изображение алгоритма действий, структуры компьютерной программы или процесса принятия решения, предназначенное для выявления общей последовательности операций.

Строго говоря, термин «блок-схема» не гостирован, поскольку официально в ЕСПД различают всего лишь четыре вида схем: для алгоритмов, для программ, для данных и для систем. Однако название «блок-схема» оказалось весьма «живучим» и его часто употребляют на практике, не считая сленговым.

Момент подачи питания на MK и рестарт программы обозначается в схеме овальным блоком «Старт». В него входят начальные настройки внутренних регистров, стека, распределение ячеек памяти. В блоке «Инициализация» производится установка линий портов МК  на вход и выход, в частности, на линии  PB1 выставляется ВЫСОКИЙ уровень, чтобы светодиод HL1 изначально был погашен.

После инициализации производится опрос кнопки SB1 в ромбовидном блоке, содержащем вопрос. Если кнопка была нажата (утверждение «Да), то происходит переход на правый прямоугольник. В нём выполняется включение индикатора HL1, после чего управление передаётся вверх по стрелке к повторному опросу кнопки. Если кнопка SB1 не была нажата (утверждение «Нет»), то производится переход вниз на прямоугольный блок, гашение светодиода HL1 и «путешествие» вверх по стрелке к новому опросу состояния кнопки.

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

Источник: Рюмик, С. М., 1000 и одна микроконтроллерная схема. Вып. 2 / С. М. Рюмик. — М.:ЛР Додэка-ХХ1, 2011. — 400 с.: ил. + CD. — (Серия «Программируемые системы»).

Оставить комментарий

микросхемы мощности Устройство импульсов питания пример приемника провода витков генератора выходе напряжение напряжения нагрузки радоэлектроника работы сигнал сигнала сигналов управления сопротивление усилитель усилителя усиления устройства схема теория транзистора транзисторов частоты