Игнорирование данных с пина определенное время
- Войдите на сайт для отправки комментариев
Втр, 13/10/2020 - 01:02
Добрый день. Сегодня первый день, как я начал осваивать азы Arduino. Пытаюсь сделать "дополнение" к своей сигнализации на авто. Суть в следующем: Имею arduino nano, модуль sim800l и аналоговый датчик напряжения. Схема подключения такова, что ардуина будет мне звонить при появлении напряжения на сирене. Все работает, все прекрасно, но при постановке и снятии с охраны мне так же приходит звонок. Вопрос в том, чтобы как-то сделать игнорирование сигнала, если он длится меньше, скажем, 2 секунд.
#include <SoftwareSerial.h>
SoftwareSerial Main(11, 10);
void setup() {
delay (10000);
Main.begin(9600);
Main.println("AT");
delay(300);
Main.println("AT+GSMBUSY=1");
delay(300);
Main.println("AT+CLIP=1");
delay(300);
}
void loop() {
if (analogRead(A1) > 100)
{
Main.println("ATD+123456789;");
delay(20000);
Main.println("ATH");
delay(1000);
}
}
тынц
Спасибо! Даже не знал как загуглить :)
только сигнал сирены в скетче там инвертирован, т.к. подключение предполагалось через оптрон. PC817 например. Т.е. когда сирена кричит, пин ардуино садится на GND
Да мне хотя бы общую концепцию реализации данного вопроса понять, а там уже как-нибудь прорвемся
Сегодня первый день, как я начал осваивать азы Arduino.
И сразу же "памагити!!!".
Может, хоть пару-тройку месяцев поковыряться, осмотреться? Не?
Возможно, Вы и правы, но меня очень интересовал данный вопрос, а как его правильно сформулировать, я не знал. Сейчас как раз и буду ковыряться, осматриваться)
Да мне хотя бы общую концепцию реализации данного вопроса понять, а там уже как-нибудь прорвемся
Все просто - при появлении напряжения на сирене запускать таймер на две секунды и по прошествии их, если напряжение не исчезло, отправлять вам сообщение
Теперь я уже понял, что через таймер надо делать. Спасибо!