Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
products:laboratory_iot:exp45 [2020/05/24 18:17] – [Программный код эксперимента] labuser29products:laboratory_iot:exp45 [2024/12/04 14:02] (текущий) – [Программный код эксперимента] labuser30
Строка 13: Строка 13:
  
 ==== Программный код эксперимента ==== ==== Программный код эксперимента ====
-Теперь напишем программный код. Пусть, когда кнопка не нажата, светодиод не горит. А при нажатии кнопки— горит.+Теперь напишем программный код. 
  
 <file python Exp45.py[enable_line_numbers="2", start_line_numbers_at="1"]> <file python Exp45.py[enable_line_numbers="2", start_line_numbers_at="1"]>
Строка 47: Строка 47:
 </file> </file>
  
-Разберем класс кнопки. У него есть конструктор __init__:+Разберем класс кнопки. У него есть конструктор ''__init__'':
 <code python[enable_line_numbers="2", start_line_numbers_at="9"]> <code python[enable_line_numbers="2", start_line_numbers_at="9"]>
     def __init__(self, p, pressSate):     def __init__(self, p, pressSate):
Строка 69: Строка 69:
  
 Создаем объект кнопки. Она на 16 выводе и нажатым будем считать состояние логической 1. Создаем объект кнопки. Она на 16 выводе и нажатым будем считать состояние логической 1.
-<code python[enable_line_numbers="2", start_line_numbers_at="14"]>+<code python[enable_line_numbers="2", start_line_numbers_at="23"]>
 btn = Button(16, 1) btn = Button(16, 1)
 </code> </code>
  
-Использование кнопки стало предельно простым. Нам больше не нужна переменная для хранения прошлого состояния кнопки и вычисление события нажатия. Все это реализовано в классе кнопки. Мы просто создали объект кнопки, передали ей в качестве параметра номер пина и состоние которое считается нажатым. В нашем случае состояние логической единицы когда кнопка нажата. И обращаемся к методу ''onPress()'', чтобы узнать было ли событие нажатия.+Использование кнопки стало предельно простым. Нам больше не нужна переменная для хранения прошлого состояния кнопки и вычисление события нажатия. Все это реализовано в классе кнопки. Мы просто создали объект кнопки, передали ей в качестве параметра номер пина и состояние которое считается нажатым. В нашем случае состояние логической единицы когда кнопка нажата. И обращаемся к методу ''onPress()'', чтобы узнать было ли событие нажатия.
  
-<code python[enable_line_numbers="2", start_line_numbers_at="14"]>+<code python[enable_line_numbers="2", start_line_numbers_at="26"]>
 if btn.onPress(): if btn.onPress():
 </code> </code>
  
 Мы могли бы создать несколько таких кнопок и работать с ними также легко.  Мы могли бы создать несколько таких кнопок и работать с ними также легко. 
 +
 +==== Дополнительное задание ====
 +<WRAP center round tip 60%>
 +  * Измени схему, чтобы кнопка подтягивалась к питанию, а при нажатии придавливала вывод к земле. Внеси соответствующие изменения в программу, чтобы поведение всего проекта не изменилось
 +  * Добавь вторую кнопку и обрабатывай ее нажатия тоже
 +</WRAP>
 +