Инструкция по подключению на примере IR Infrared Sensor Switch Module (найти можно например на dx.com, SKU 121517) вот такого:
Датчики под неопределенным названием KeyesIR, на обратной стороне такое же неопределенное HOYA =)
Подключить не сложно, контакты на нем подписаны.
- "GND" соответственно к GND Arduino
- "+" к 5V Arduino
- "OUT" ко 2 (для примера) пину.
Пример скетча для arduino:
// постоянные:Задержка нужна в случае если нужно сделать выключатель лампы, как в моем примере, чтобы если над ним махнули рукой, он не срабатывал на все пальцы по очереди, а только на взмах =))
const int sensorPin = 2; // пин, куда подключен OUT датчика
const int ledPin = 13; // пин со светодиодом
// переменные:
unsigned long currentTime;
unsigned long loopTime;
void setup() {
pinMode(sensorPin, INPUT); // инициализируем пин датчика
pinMode(ledPin, OUTPUT); // инициализируем пин светодиода
currentTime = millis();
loopTime = currentTime;
}
void loop() {
currentTime = millis(); if(currentTime >= (loopTime+1000)) { // задержка перед повторным
if(digitalRead(sensorPin) == LOW){ // срабатыванием 1сек
digitalWrite(ledPin, !digitalRead(ledPin)); // инвертируем значение пина
loopTime = currentTime; // светодиода
}
}
}
Для задержки вместо delay() используется millis() так как в моем случае у ардуины еще много других функций, помимо этой, и с millis() он может беспрепятственно и без задержки их выполнять.
Пара фото с бредборда, отладка =)
Комментариев нет:
Отправить комментарий