Чтение онлайн

ЖАНРЫ

Робототехника: практическое введение для детей и взрослых
Шрифт:

Рис. 3.14. Проверяем нажатие логотипа в цикле

Эта программа проверяет состояние кнопки логотипа в цикле. Пока логотип нажат, программа рисует на экране micro:bit бьющееся сердце. Но как только вы отпустите логотип, сердце исчезает!

Сенсорные контакты

Как мы уже говорили, во многих приборах используются сенсорные кнопки. Такие кнопки служат долго,

т.к. в них нет механических движущихся деталей.

Сенсорные кнопки на micro:bit версии 2 могут работать в емкостном и резистивном режиме.

В емкостном режиме используется тот факт, что прикосновение к кнопке равносильно подключению к ней конденсатора.

В резистивном режиме предполагается, что человек касается одновременно кнопки и общего провода (земли, минуса источника питания). При этом изменяется сопротивление между кнопкой и землей от практически бесконечного до значений, исчисляемых единицами или десятками КОм.

Забегая вперед, заметим, что вы можете использовать в качестве сенсорных контактов выводы P0, P1 и P2 в качестве сенсорных кнопок. На рис. 3.11 эти контакты отмечены цифрами 0, 1 и 2. Подробнее мы расскажем о контактах разъема платы micro:bit в 7 и 8 главе нашей книги.

На рис. 3.15 мы показали программу microbit2-Сенсорный-контакт.hex, которая делает то же самое, что и программа microbit2-Сенсорный-логотип-2.hex.

Рис. 3.15. Используем контакт P0 в качестве сенсорной кнопки

В начале своей работы программа устанавливает один из двух возможных режимов работы сенсорного контакта – емкостной или резистивный. Чтобы использовать емкостной режим, в меню блока set P0 to touch mode выберите строку capacitive, а чтобы в резистивном – строку resistive.

Блок set P0 to touch mode находится в палитре Расширенные, Контакты, еще, в разделе micro:bit (v2).

Загрузив программу в микроконтроллер, дотроньтесь пальцем до контакта, обозначенного на плате micro:bit цифрой 0. Пока вы держите палец, на экране micro:bit будет биться сердце.

Домашнее задание

В качестве первого домашнего задания попробуйте самостоятельно доработать программу microbit-Счетчик.hex (рис. 3.6) таким образом, чтобы при нажатии двух кнопок одновременно текущее значение счетчика сбрасывалось в нулевое значение.

Решение вы сможете найти в файле microbit-Счетчик-со-сбросом.hex, загрузив архив программ с сайта автора этой книги http://frolov-lib.ru/books/boxrover/.

В качестве второго самостоятельного задания добавьте к программе microbit-Вселенная-на-паузе.hex (рис. 3.9) код, который сбрасывает задержку к исходному значению при одновременном нажатии кнопок A и B.

Решение этого задания есть в файле microbit-Вселенная-на-паузе-со-сбросом.hex.

В качестве третьего домашнего

задания
попробуйте сделать кодовый замок. Замок должен работать следующим образом.

Чтобы открыть замок, вам нужно нажать четыре раза кнопку A, и один раз – кнопку B (в любой последовательности). Только эта комбинация должна открыть замок.

Для проверки состояния замка нажмите кнопки A и B одновременно. Если замок открылся, на экране micro:bit должно быть нарисовано сердечко, если нет, то крестик.

Решение третьего задания вы найдете в файле microbit-Секретный-счетчик.hex.

И, наконец, в четвертом домашнем задании попробуйте изменить режим set P0 to touch mode с емкостного на резистивный. Учтите, что это задание нужно выполнять на micro:bit версии 2.

Программа с измененным режимом записана в файле microbit2-Сенсорный-контакт-2.hex. Проверьте, есть ли разница в работе этой программы при изменении режима.

Итоги

Во третьей главе мы познакомились с обработкой событий от кнопок A и B, расположенных на лицевой стороне платы микрокомпьютера micro:bit, а также от сенсорной кнопки micro:bit версии 2, роль который играет логотип. Вы научились проверять текущее состояние кнопок во время работы программы.

Вы научились задавать действия при нажатии кнопок A и B, а также в тех случаях, когда эти кнопки были нажаты одновременно. Кроме того, вы теперь можете использовать контакты P0, P1 и P2 в качестве сенсорных кнопок.

Также вы усложнили программу зажигания звезд на экране микрокомпьютера и сделали так, что ее работа стала зависеть от текущего состояния кнопок.

При выполнении домашних заданий вы доработали программу управления счетчиком и звездами в вашей микро-вселенной, создали кодовый замок и испытали два разных режима работы сенсорных контактов – емкостной и резистивный.

4. Измеряем температуру

Мы уже писали во введении к этой книге, что «на борту» микроконтроллера micro:bit имеется измеритель температуры. Физически он находится внутри процессора, и поэтому, строго говоря, измеряет не температуру окружающего воздуха, а температуру самого процессора.

Так как процессор micro:bit потребляет очень малую энергию, то в первом приближении можно считать, что его температура примерно соответствует температуре окружающей среды. Конечно, для более точных измерений не обойтись без специального внешнего термометра (и мы его подключим позже, когда займемся моделью марсохода BoxRover), но сейчас для нас будет вполне достаточно измерителя температуры, интегрированного в micro:bit.

Как работает измеритель температуры

Здесь, конечно, нас не будут интересовать ртутные или иные аналоговые градусники. Нам интересно узнать, как измеряется температура в электронных устройствах.

Для измерения температуры применятся так называемые терморезисторы. Терморезистор представляет собой полупроводниковый прибор, сопротивление которого зависит от температуры.

Зависимость эта нелинейная, однако можно выставить рабочую точку терморезистора так, что она попадет на линейный участок. В этом случае по изменению сопротивления терморезистора можно будет судить об изменении его температуры.

Поделиться с друзьями: