Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств
198 Микроконтроллеры AVR от азов программирования... Вы можете сказать, что и эта новая задача легко решаема при помощи простейшего D -триггера. Однако все же рассмотрим, как ее можно решить при помощи микроконтроллера. Принципиальная схема Так как для новой задачи, как и для предыдущей, нам необходима всего одна кнопка и всего один светодиод, то придумывать новую схему не имеет смысла. Применим для второй задачи уже знакомую нам схему, показанную на рис. 5.2. Алгоритм Алгоритм задачи номер два начинается так же, как алгоритм нашей первой задачи. То есть с набора команд, выполняющих инициализацию системы. Так как схема и принцип работы портов ввода-вывода не изме нились, то алгоритм инициализации системы будет полностью повторять соответствующий алгоритм из предыдущего примера. После команд инициализации начинается основной цикл программы. Однако действия, выполняемые основным циклом, будут немного дру гими. Попробуем, как и в предыдущем случае, описать эти действия сло вами. 1. Прочитать состояние младшего разряда порта PD (PD.0). 2. Если значение этого разряда равно единице, перейти к началу цикла. 3. Если значение разряда PD.0 равно нулю, изменить состояние выхода РВ.О на противоположное. 4. Перейти к началу цикла. Итак, мы описали алгоритм словами. Причем это довольно общее опи сание. Реальный алгоритм немного сложнее. Словесное описание алго ритма не всегда удобно. Гораздо нагляднее графический способ описания алгоритма. На рис. 5.3 алгоритм нашей работы будущей программы изо бражен в графическом виде. Такой способ отображения информации называется графом. Прямоугольниками обозначаются различные действия, выполняемые программой. Суть выполняемого действия вписывается внутрь такого прямоугольника. Допускается объединять несколько операций в один блок и обозна чать одним прямоугольником. Последовательность выполнения действий показывается стрелками. Ромбик реализует разветвление программы. Он представляет собой операцию выбора. Условие выбора записывается внутри ромбика. Если условие истинно, то дальнейшее выполнение про граммы продолжится по пути, обозначенному словом «Да».
Made with FlippingBook
RkJQdWJsaXNoZXIy MTExODQxMg==