美文网首页
2017-11-06

2017-11-06

作者: 5期刘雪梅 | 来源:发表于2017-11-06 22:17 被阅读0次

    今天我们学习了红外感应器,实现功能:检测红外感应器开关,并发声。#define PIN_IR_IN 7   红外线感应开关引脚  #define PIN_TONE_OUT  8  发声引脚  Serial.begin(9600);pinMode(PIN_IR_IN, INPUT);初始化,if (digitalRead(PIN_IR_IN) == HIGH) {for (int i = 0; i <5 ; i++) {for (int j = 0; j < 1500; j++) {tone(PIN_TONE_OUT, map(j,0,1499,650,1550));delay(1);}for (int j = 0; j < 3500; j++) {

    tone(PIN_TONE_OUT, map(j,0,3499,1550,650));delay(1);}}}消防车声音:低频650Hz~750Hz,高频1450~1550, 由低频到高频1.5s, 再由高频降至低频3.5s.

    超声波传感器的应用,进行编程,实现对距离测试,从而有不同的提示与操作,digitalWrite(TrigPin, HIGH); //开始发送高电平,US-100开始测量距离,delayMicroseconds(50); // 设置高脉冲宽度为50us (>10us),digitalWrite(TrigPin, LOW); // 结束高脉冲

    Time_Echo_us = pulseIn(EchoPin, HIGH);    // 敲击是第一个上升沿,返回波是第二个上升沿,两沿宽度,if((Time_Echo_us < 60000) && (Time_Echo_us > 1))    //有效的宽度范围 (1, 60000).{// 1m->5882us, 10m->58823us

    Len_mm = (Time_Echo_us*34/100)/2;      //长度(mm)Len_mm = (Time_Echo_us * 0.34mm/us) / 2 (mm), 最大10.2米

    frequence = map(Len_mm, MIN_DISTANCE, MAX_DISTANCE, NOTE_B7, NOTE_C3 );

    tone(PIN_TONE_OUT, frequence, DURATION/4);delay(Len_mm/2); // 距离越近,时间间隔越小,声音越急促。

    相关文章

      网友评论

          本文标题:2017-11-06

          本文链接:https://www.haomeiwen.com/subject/lbyrmxtx.html