【旧ブログより転載】arduinoでインターホン

目次

旧ブログに掲載していた記事を移転のためこちらに転載しました


インターホンを作りたっかたわけでもありませんが色んな事に応用できる思ったので作りました。(音だけ)

回路

スイッチを押したら音が鳴ります。

tinkercadに回路をアップロードしておきます。

https://www.tinkercad.com/embed/2AhAs7MoPs2?editbtn=1

tinkercadへ

試聴

この動画で流れる音から使いたいプログラムを選んで下さい。

1番のプログラム

普通のタイプです。 番号:1

void setup() {
  // put your setup code here, to run once:
pinMode(3, INPUT_PULLUP);
Serial.begin(9600);
  pinMode(13, OUTPUT);
 digitalWrite(13,LOW);
}
void loop() {
  // put your main code here, to run repeatedly:
int x = digitalRead(3);
if(x==LOW){
  digitalWrite(13, HIGH);
  Serial.print(x);
 tone(8,1318);
  delay(700);
  noTone(8);
tone(8,1046);
  delay(900);
  noTone(8);
delay(900);
 
 tone(8,1318);
  delay(700);
  noTone(8);
tone(8,1046);
  delay(900);
  noTone(8);
 digitalWrite(13,LOW);
}
}

2番のプログラム

1回しか鳴りません。 番号:2

void setup() {
  // put your setup code here, to run once:
pinMode(3, INPUT_PULLUP);
Serial.begin(9600);
  pinMode(13, OUTPUT);
 digitalWrite(13,LOW);
}
void loop() {
  // put your main code here, to run repeatedly:
int x = digitalRead(3);
if(x==LOW){
  digitalWrite(13, HIGH);
  Serial.print(x);
 tone(8,1318);
  delay(700);
  noTone(8);
tone(8,1046);
  delay(900);
  noTone(8);
 digitalWrite(13,LOW);
}
}

3番のプログラム

1番よりもテンポが速いタイプです。 番号:3

void setup() {
  // put your setup code here, to run once:
pinMode(3, INPUT_PULLUP);
Serial.begin(9600);
  pinMode(13, OUTPUT);
 digitalWrite(13,LOW);
}
void loop() {
  // put your main code here, to run repeatedly:
int x = digitalRead(3);
if(x==LOW){
   digitalWrite(13, HIGH);
  Serial.print(x);
 tone(8,1318);
  delay(200);
  noTone(8);
tone(8,1046);
  delay(300);
  noTone(8);
delay(300);
 
 tone(8,1318);
  delay(200);
  noTone(8);
tone(8,1046);
  delay(300);
  noTone(8);
 digitalWrite(13,LOW);
}
}