как я могу запрограммировать свой датчик звука и датчик движения в 1 arduino uno
int pirPin=2;
int buzzerPin=12;
int soundSensor = 19;
int LED = 3;
int statusSensor=0;
int pirVal=0;
void setup()
{
Serial.begin(9600);
pinMode(pirPin, INPUT);
pinMode(soundSensor, INPUT);
pinMode(buzzerPin, OUTPUT);
pinMode(LED, OUTPUT);
}
void loop()
{
pirVal=digitalRead(pirPin);
if(pirVal==HIGH)
{
Serial.println("Motion Detected");
digitalWrite(buzzerPin,HIGH);
delay(150);
digitalWrite(buzzerPin, LOW);
}
else
{
digitalWrite(buzzerPin, LOW);
}
statusSensor = analogRead(soundSensor);
if (statusSensor == 1)
{
Serial.println("Sound Detected");
digitalWrite(LED, HIGH);
delay(100);
digitalWrite(LED, LOW);
}
else
{
digitalWrite(LED, LOW);
}
}
@Eman Ali, 👍-1
Обсуждение1 ответ
▲ 0
Во-первых, здесь нет вывода с номером 19 (поскольку вы определили на нем датчик звука), и нет никаких проблем, вы можете использовать мой датчик звука и датчик движения в 1 Arduino Uno.
Но для этого используйте миллис вместо задержки, чтобы ваша Arduino не ждала чтения показаний другого датчика во время чтения первого датчика.
Вот ссылка, которая показывает, как использовать Arduino для многозадачности..
https://learn.adafruit.com/multi-tasking-the-arduino -part-1/обзор
,
@Shyam Singla
Смотрите также:
- Как использовать SPI на Arduino?
- Как решить проблему «avrdude: stk500_recv(): programmer is not responding»?
- Как создать несколько запущенных потоков?
- Как подключиться к Arduino с помощью WiFi?
- avrdude ser_open() can't set com-state
- Как узнать частоту дискретизации?
- Что такое Serial.begin(9600)?
- Я закирпичил свой Arduino Uno? Проблемы с загрузкой скетчей на плату
Пожалуйста, выровняйте свой код (выберите код, нажмите ctrl-k) и выровняйте блоки { и }, что сейчас не так/не соответствует вашим ожиданиям? что вы ожидаете?, @Michel Keijzers
Я ожидал запустить их обоих одновременно, @Eman Ali
А что именно сейчас не делает? (мы не можем смотреть на результат или ожидать, что мы создадим схему, которую вы построили, чтобы проверить его). Как они должны взаимодействовать друг с другом?, @Michel Keijzers
Ваш датчик звука аналоговый или цифровой?, @chrisl
@EmanAli, в тексте вопроса должно быть больше, чем просто код. Он также должен объяснить вашу проблему. Помните, что цель состоит в том, чтобы собрать набор вопросов и ответов, которые каждый сможет использовать позже. Если вы приложите усилия, чтобы создать хороший вопрос, то от этого выиграют все, у кого есть похожий вопрос., @st2000