Advertisement
ptkrisada

arduino_00.c

Feb 3rd, 2020
226
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.22 KB | None | 0 0
  1.  
  2. #define relay 13
  3. #define c_1PIN  A0
  4.  
  5. unsigned long startTime;
  6. unsigned long maxTime;
  7. unsigned long needTime = 5000; // ใส่เวลาที่จะหน่วง
  8. unsigned long curTime;
  9. bool isOpen;
  10. ///////////////////////////////////////// Setup ///////////////////////////////////
  11. void setup()
  12. {
  13. Serial.begin(9600);
  14.   pinMode (c_1PIN, INPUT_PULLUP);
  15.   pinMode(relay, OUTPUT);
  16. }
  17. ///////////////////////////////////////// Loop ///////////////////////////////////
  18. void loop ()
  19. {
  20. int value = digitalRead(c_1PIN);
  21.  
  22.    if (value == 0 )
  23.    {
  24.      startTime = millis();
  25.      maxTime = startTime + needTime;
  26.      curTime = startTime;
  27.      isOpen = true;
  28.    }
  29.    
  30.    if (isOpen)
  31.    {
  32.       SetActive();
  33.    }
  34.  
  35.  
  36. }
  37.  
  38. void SetActive()
  39. {
  40.  
  41.   curTime = millis();
  42.  
  43.   if (curTime <= maxTime)
  44.   {
  45.      digitalWrite(relay,HIGH); //ในzone นี้สำหรับใส่คำสั่งที่อยากให้ทำงาน
  46.      Serial.println(curTime);
  47.   }
  48.  
  49.   if(curTime > maxTime)
  50.   {
  51.      digitalWrite (relay,LOW); // ใส่คำสั่งที่จะให้ทำงานเมื่อหน่วงเวลาเรา ครบแล้ว
  52.      isOpen = false;
  53.   }
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement