Включение по условию
- Войдите на сайт для отправки комментариев
Втр, 25/07/2017 - 00:38
Всем привет! Прошу помощи. Пожалуйста, очень надо разобраться, так как сам мало волоку в этом деле пока что.
Внизу скетч программы, которая будет сигнализировать о невключенном напряжении сигналом Пищалки.
2 пин это концевик.
Так вот, как заставить программу работать: 1.чтобы она начинала как бы отстчёт с размыкания концевика.
2. как сделать чтобы эти циклы не повторялись постоянно с зажатым концевиком.
Спасибо за советы и подсказски. Всем добра!!!
вот скетч:
int analogInput = 0;
float vout = 0.0;
float vin = 0.0;
#define R1 62. // сопротивление R1 (62K)
#define R2 3.3 // сопротивление R2 (3.3K)
int value = 0;
void setup(){
Serial.begin(9600);
pinMode(analogInput, INPUT);
pinMode(2,OUTPUT);
pinMode(3,INPUT);
}
void loop(){
value = analogRead(analogInput);
vin = ((float)analogRead(A1))*5. / 1024. / R2 * (R1 + R2);
Serial.print("U1 = ");
delay(1000);
Serial.print(vin, 1);
delay(1000);
{
if ((digitalRead(3)==HIGH)&& (vin>0.0))//напряжение больше нуля, сообщает что всё нормально и пищит два раза
{
digitalWrite(2,HIGH);
delay(100);
digitalWrite(2,LOW);
delay(100);
digitalWrite(2,HIGH);
delay(100);
digitalWrite(2,LOW);
delay(100);
}
if ((digitalRead(3)==HIGH)&& (vin==0))//напряжение не включено, сообщает длинным писком, чтобы включить напряжение обратно
{
digitalWrite(2,HIGH);
delay(2000);
digitalWrite(2,LOW);
}
}
}
это не скетч. скетчем это станет, когда прочтешь
http://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukomment...
Может 3 пин ?
Надо помнить предыдущее состояние концевика и смотреть напряжение только если концевик был LOW, стал HIGH - тогда будет срабатывать 1 раз и ждать, когда концевик перекинится HIGH->LOW->HIGH.