(13-04-2020, 19:40)Robson Kerman napisał(a):(13-04-2020, 19:04)bo_box napisał(a): ...cokolwiek bym nie wybrał (napięcie z menu) to zmiana zachodzi wyłącznie na pinie 11...
A jaka zmiana ma zajść i na jakim pinie, gdy cokolwiek byś wybrał? Proszę wskazać konkretne miejsce w programie.
No więc tak,
wybieram w menu tryb ręczny >> czas zmiany >> napięcie po wyborze powinno odnieść się do:
void wybor_pradu()
{
if (napiecie = 32)
{
digitalWrite(przekaznik32V, LOW);
digitalWrite(przekaznik24V, HIGH);
digitalWrite(przekaznik18V, HIGH);
digitalWrite(przekaznik12V, HIGH);
}
if (napiecie = 24)
{
digitalWrite(przekaznik32V, HIGH);
digitalWrite(przekaznik24V, LOW);
digitalWrite(przekaznik18V, HIGH);
digitalWrite(przekaznik12V, HIGH);
}
if (napiecie = 18)
{
digitalWrite(przekaznik32V, HIGH);
digitalWrite(przekaznik24V, HIGH);
digitalWrite(przekaznik18V, LOW);
digitalWrite(przekaznik12V, HIGH);
}
if (napiecie = 12)
{
digitalWrite(przekaznik32V, HIGH);
digitalWrite(przekaznik24V, HIGH);
digitalWrite(przekaznik18V, HIGH);
digitalWrite(przekaznik12V, LOW);
}
}
jednak cokolwiek bym nie wybrał w menu to tylko Pin 11 zmienia stan na niski.
A tutaj wybieram napięcie:
if (poziom == 2 && ak == 8)
{
napiecie = 32;
return ak;
}
if (poziom == 2 && ak == 9)
{
napiecie = 24;
return ak;
}
if (poziom == 2 && ak == 10)
{
napiecie = 18;
return ak;
}
if (poziom == 2 && ak == 11)
{
napiecie = 12;
return ak;
}
a jeżeli chodzi o akcję to
jeżeli wybiorę napiecie = 32 to
digitalWrite(przekaznik32V, LOW);
digitalWrite(przekaznik24V, HIGH);
digitalWrite(przekaznik18V, HIGH);
digitalWrite(przekaznik12V, HIGH);
i tak dalej jak napisałem wcześniej kod.