Я дамаю это так должно быть (для кнопки без фиксации). Правильно?
Реле использую то, которое переключает "+" на "-" на контакте, если на обмотку подается "+". И еще одно такое же реле для переключения с "-" на "+", реле используются параллельно (т.е. для двух проводов, которые идут на зеркало). Если что неправильно поправьте - я не программист
// http://compcar.ru
#include <EEPROM.h>
int ACC = 12;
int button = 2;
void setup()
{
pinMode(ACC, INPUT);
pinMode(button, OUTPUT);
}
void loop()
{
int value = EEPROM.read(0); // Прочитать статус до задержки
delay(5000); // задержка для того что бы не дергать зеркала лишний раз
if ((value==0) && (EEPROM.read(0)==0) && (digitalRead(ACC)==HIGH)) //если включен АСС и статус
{ // зеркала сложены то открыть зеркала
digitalWrite(button, HIGH); // нажать кнопку
delay(100);
EEPROM.write(0, 255); // сохраняем статус зеркал 255=разложены
}
if ((value==255) && (EEPROM.read(0)==255) && (digitalRead(ACC)==HIGH)) // если ACC включен и статус зеркал
{ // разложены, то сложить зеркала
digitalWrite(button, LOW); // отключить кнопку
delay(100);
EEPROM.write(0, 0); // сохраняем статус зеркал 0=сложены
}
}






Ответить с цитированием