Функция millis 0_0
- Войдите на сайт для отправки комментариев
Вс, 27/01/2019 - 08:54
Подскажите как реализуется функция millis на простом примере:
есть кнопка (пин 3) . при нажатии - загорается светодиод (пин 13) , горит 1 секунду ,затем - гаснет .
самый простой вариант - это конечно использовать delay, но я хочу понять как в этом случае работает millis.
как заменить delay?
const int buttonPin =3; // номер входа, подключенный к кнопке const int ledPin = 13; // номер выхода светодиода int buttonState = 0; // переменная для хранения состояния кнопки void setup() { // инициализируем пин, подключенный к светодиоду, как выход pinMode(ledPin, OUTPUT); // инициализируем пин, подключенный к кнопке, как вход pinMode(buttonPin, INPUT); } void loop(){ // считываем значения с входа кнопки buttonState = digitalRead(buttonPin); // проверяем нажата ли кнопка // если нажата, то buttonState будет HIGH: if (buttonState == HIGH) { // включаем светодиод digitalWrite(ledPin, HIGH); delay(1000); } else { // выключаем светодиод digitalWrite(ledPin, LOW); } }
Функция millis - это часы. Вот Вы посмотрели на часы и узнали, который час. Точно так же и с muillis - вызвали ее и узнали время на текущий момент.
Чтобы понять, как использовать millis в своих программах для формирования временных интервалов, проще увсего подробно разобрать, чем отличаются два примера: "blink" и "blink without delay".
noob, зачем вам millis(). Вы сейчас даже толком не умеете работать с !!! кнопками.
Подскажите как реализуется функция millis на простом примере:
Простые примеры:
http://arduino.ru/tutorials/BlinkWithoutDelay
http://robocraft.ru/blog/arduino/385.html