用Tinkercad學arduino之 人體紅外檢測報警 蜂鳴器+LED


項目地址: https://www.tinkercad.com/things/dXbkCwjcshu 

 

int ledPin = 5;               
int inputPin = 2;               
int pinSpeaker = 6;        
int pirState = LOW;           
int val = 0;                  

void setup() {
  pinMode(ledPin, OUTPUT);     
  pinMode(inputPin, INPUT);    
  pinMode(pinSpeaker, OUTPUT);
}

void joueSon (long duree, int frequence) {
    duree *= 1000;
    int period = (1.0 / frequence) * 1000000;
    long temps_passe = 0;
    while (temps_passe < duree) {
        digitalWrite(pinSpeaker,HIGH);
        delayMicroseconds(period / 2);
        digitalWrite(pinSpeaker, LOW);
        delayMicroseconds(period / 2);
        temps_passe += (period);
    }
}


void loop(){
  val = digitalRead(inputPin); 

  if (val == HIGH) {
    digitalWrite(ledPin, HIGH);  
    joueSon(300, 160);
    delay(150);
    } 
  
  else {
      digitalWrite(ledPin, LOW);
      joueSon(0, 0);
      delay(300);    
   }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM