Advertisement
Guest User

Untitled

a guest
Feb 25th, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.50 KB | None | 0 0
  1.  
  2. int inputPin = 13; // инициализируем пин для получения сигнала от пироэлектрического датчика движения
  3.  
  4. int pirState = LOW; // начинаем работу программы, предполагая, что движения нет
  5.  
  6. int val = 0; // переменная для чтения состояния пина
  7.  
  8. void setup() {
  9.  
  10. pinMode(LED_BUILTIN, OUTPUT); // объявляем светодиод в качестве OUTPUT
  11.  
  12. pinMode(inputPin, INPUT); // объявляем датчик в качестве INPUT
  13.  
  14. Serial.begin(9600);
  15.  
  16. }
  17.  
  18. void loop(){
  19.  
  20. val = digitalRead(inputPin); // считываем значение с датчика
  21.  
  22. if (val == HIGH) { // проверяем, соответствует ли считанное значение HIGH
  23.  
  24. digitalWrite(LED_BUILTIN, HIGH); // включаем светодиод
  25.  
  26. if (pirState == LOW) {
  27.  
  28. // мы только что включили
  29.  
  30. Serial.println("Motion detected!");
  31.  
  32. // мы выводим на серийный монитор изменение, а не состояние
  33.  
  34. pirState = HIGH;
  35.  
  36. }
  37.  
  38. } else {
  39.  
  40. digitalWrite(LED_BUILTIN, LOW); // выключаем светодиод
  41.  
  42. if (pirState == HIGH){
  43.  
  44. // мы только что его выключили
  45.  
  46. Serial.println("Motion ended!");
  47.  
  48. // мы выводим на серийный монитор изменение, а не состояние
  49.  
  50. pirState = LOW;
  51.  
  52. }
  53.  
  54. }
  55.  
  56. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement