Кнопки Zumo 32U4
Робот оснащён 4 кнопками для аппаратного управления:- кнопка Reset служит для перезапуска выполняемой программы
- кнопки A, B и C могут программироваться
Программирование кнопок
После подключения необходимых библиотек в начале программы для управления дополнительными устройствами (например, кнопки, моторы, экран и прочие), создаются экземпляры объектов, к которым можно обращаться и вызывать их методы. В случае с кнопками, это объекты:Zumo32U4ButtonA buttonA;
Zumo32U4ButtonB buttonB;
Zumo32U4ButtonC buttonC;
// buttonA, buttonB и buttonC – пример имён, которые мы можем сами назначать
Используемые методы (на примере кнопки А):
buttonA.waitForButton () // останавливает выполнение программы, пока кнопка А не будет нажата
buttonA.getSingleDebouncedPress () // возвращает true, если кнопку А нажали
buttonA.getSingleDebouncedRelease () // возвращает true, если кнопку А отпустили
Пример программы
/* При нажатии на кнопку С загорается жёлтая лампочка, при нажатии и отпускании кнопки А жёлтая лампочка гаснет */
#include <Wire.h>
#include <Zumo32U4.h>
// Объявляем объекты – две кнопки
Zumo32U4ButtonA buttonA;
Zumo32U4ButtonC buttonC;
void setup() {
// Вначале погасим лампочку
ledYellow(0);
}
void loop() {
// Проверяем условие, нажата ли кнопка С
if (buttonC.getSingleDebouncedPress ())
{
// даём напряжение к жёлтому светодиоду
ledYellow(1);
}
// Проверяем условие, отпущена ли кнопка А
if (buttonA.getSingleDebouncedRelease ())
{
// снимаем напряжение с жёлтого светодиода
ledYellow(0);
}
}
Задачи
Задача 1. При нажатии на кнопку А робот зажигает красный светодиод. При нажатии на кнопку В робот зажигает зелёный светодиод. При нажатии на кнопку С робот гасит все зажжённые светодиоды.
Задача 2. При нажатии и удерживании на кнопку А горит красный светодиод. При её отпускании красный светодиод гаснет.
Задача 2. При нажатии и удерживании на кнопку А горит красный светодиод. При её отпускании красный светодиод гаснет.
Задача 3. При нажатии на кнопку А робот зажигает все 3 светодиода, При нажатии на кнопку В робот гасит все 3 светодиода. При нажатии на кнопку С все светодиоды начинают мигать.
Задача 4. При запуске программы, робот ждёт нажатия кнопки А и после нажатия зажигает все 3 светодиода.
Задача 4. При запуске программы, робот ждёт нажатия кнопки А и после нажатия зажигает все 3 светодиода.
Задача 5. Ввести в программу глобальную переменную int count. При нажатии на кнопку А увеличивать эту переменную на 1. Если значение этой переменной больше 10, то зажигать жёлтый светодиод. Если больше 15 – горит только зелёный светодиод. Если больше 20 – горит только красный светодиод.
Комментарии
Отправить комментарий