Использование условной конструкции if

      Комментарии к записи Использование условной конструкции if отключены

Приведенный ниже пример проверяет условие и выполняет , если условие выполнено и , если условие не выполнено:

if ()

{

;

}

else

{

;

}

Условием может быть любое логическое выражение, например

(Button_state == 1)

и– одна или несколько строк кода. Допустимо использование вложенных конструкций, т.е. в качествеилиможет быть еще одна условная конструкция, например:

if ()

{

if ()

{

;

}

}

Например, условие неравенства переменных Button_state_old и Button_state будет записано так:

if (Button_state_old != Button_state)

{

}

Знак != обозначает «Не равно».

А условие проверки Button_state на равенство 1 при неравенстве Button_state_old и Button_state будет выглядеть так:

if (Button_state_old != Button_state)

{

if (Button_state = 1)

{

//Тут описывается, что происходит, если кнопка нажата

} else

{

//Тут описывается, что происходит, если кнопка отжата

}

}

Задание.

1)Реализовать программу, включающую светодиод при зажатой кнопке.

2) Написать программу, включающую светодиод при нажатии на кнопку и выключающую при повторном нажатии.

Порядок выполнения задания.

1.Выяснить номера выводов, к которым подключены кнопка и светодиод, как описано в пункте «Определение подключения кнопки и светодиодов».

2.Запустить файл lab1_1.uvproj в папке lab1 с кодом из лабораторных 1 и 2.

3.Следующий код написать в функции main() до начала цикла while(1).

a. Включается тактирование портов, к которому подключены кнопка, как описано в пункте «Включение тактирования».

b. Заполняется структура, как описано в пункте «Настройка порта ввода-вывода». Помните, что определение переменных производится в начале функции до использования первого оператора.

4.Задание 1). Код программы (за исключением объявления переменных) пишется в цикле while(1).

a. Объявить переменную Button_state (в самом начале функции main()) с типом uint8_t. Присвоить переменной значение 0. Переменная Button_state будет хранить состояние кнопки: если нажата, значение переменной равно 1, если отжата, то 0.

b. В цикле while(1) записать в переменную Button_state состояние кнопки, как описано в пункте «Проверка состояния кнопки».

c. Включить светодиод, если кнопка нажата, и выключить светодиод, если кнопка отжата (см. пункт «Использование условной конструкции if»).

d. Проверить работу программы.

5.Задание 2). Код программы (за исключением объявления переменных) пишется в цикле while(1).

a. Объявить переменные Button_state и Button_state_old (в самом начале функции main()) с типом uint8_t. Присвоить переменным значение 0. Переменная Button_state будет хранить текущее состояние кнопки: если уже была нажата, значение переменной равно 1, если была отжата, то 0.

b. В цикле while(1) записать в переменную Button_state состояние кнопки, как описано в пункте «Проверка состояния кнопки».

c. Проверить условие, совпадают ли значения переменных Button_state и Button_state_old, применив условную конструкцию if.

d. Если условие не выполняется, необходимо проверить еще одно условие: нажата ли кнопка в данный момент (равна ли переменная Button_state единице).

e. Если Button_state == 1, программа должна выполнить следующие действия: изменить состояние светодиода (см. пункт «Изменение состояния светодиода») и организовать задержку программы на время дребезга кнопки (порядка 10 мс).

f.После кода, написанного согласно пунктам а…е, необходимо записать текущее состояние кнопки в переменную Button_state_old при помощи строчки:
Button_state_old = Button_state;

После описанных действий кнопка будет работать, как требуется в задании.

Содержание отчёта:

1) Исследуемая схема.

2) Блок-схемы программ.

3) Описание программ.

4) Программы.

5) Выводы.

Статьи к прочтению:

Условные предложения с ‘if’


Похожие статьи:

  • Глава 5. управляющие конструкции

    Составной оператор Согласно синтаксису языка Java во многих конструкциях может стоять только один оператор, но часто встречается ситуация, когда надо…

  • Использование цикла do…while

    Цикл do…while используется в тех случаях, когда вы не знаете точного количества повторов, но в то же время вам известно, что цикл необходимо выполнить,…