типо так
#include <Servo.h>
Servo servoX;
long timer = 0;
void setup()
{
servoX.attach(4);
servoX.write(90);
Serial.begin(9600);
pinMode(3, OUTPUT);
}
void loop()
{
while (Serial.available() > 0)
{
int cmd = Serial.read();
int x = servoX.read();
switch (cmd)
{
case 'X':
timer = millis();
digitalWrite(3, HIGH);
break;
case 'R':
if (x < 180) {
servoX.write(x + 1); }
break;
case 'L':
if (x < 0) {
servoX.write(x - 1); }
break;
if (millis() - timer > 1000) {
digitalWrite(3, LOW); }
delay (20)
}
}
}
еще чет не понимаю, можно ли в скобочках свитчера писать что-то кроме кейсов
... и добавил:наступает случай Х - засекается время, включается пин, и переходит или к другому кейсу или просто вертится в ожидании команды, при этом в процессе верчения сравнивает текущее время с засеченным, когда проходит секунда - вырубает пин.
... и добавил:можно еще ввести булин который будет следить был ли пин перед этим включен. но хз нафига это надо.
... и добавил:как бы еще щас прийти домой и не заниматься там этой бесполезной херней

для подобного существует рабочее время
