«Получение сообщение об ошибке:Arduino: переопределение ошибки функции
"error: 'int ButtonStateNext' previously declared here" (line 7 is where the issue lies)
"exit status 1"
"redefinition of 'int ButtonStateNext'
Всякий раз, когда я пытаюсь скомпилировать мой Arduino program..Could кто-то пролить свет на то, что именно происходит неправильно, я понимаю, что ошибка Сообщение сообщает мне, что я ранее объявлял ButtonNextState, но я не вижу, чтобы я сделал это (по крайней мере, намеренно?). Ниже приведено полное описание кода (размещенное все с момента его минимального значения).
String ButtonState;
int Pin = 4;
unsigned long timer;
int input;
//function that is to be called in loop to service
int ButtonNextState(input) {
//Switch statement based on state
switch(ButtonState)
{
case Idle:
if(input == LOW)
{
//Record time
timer = millis();
//Set ButtonState to wait
ButtonState = "Wait";
}
break;
case Wait:
if(input == HIGH)
{
ButtonState = "Idle";
}
else if(timer >= 5)
{
ButtonState = "Low";
return 1;
}
break;
case Low:
if(input == HIGH)
{
ButtonState = "Idle";
}
break;
} //end of switch statement
return 0; // By default, return 0 indicating nothing is happening
}
void setup() {
//Set pin as input
input = 4;
//Set ButtonState to Idle
ButtonState = "Idle";
}
void loop() {
if(ButtonNextState(digitalRead(input)))
{
//Send serial message indicating button press
Serial.write("Button Pressed.");
}
}
В сообщении об ошибке говорится, что вы уже объявили ButtonStateNext в другом месте вашей программы. –
@RobertHarvey Спасибо, но я уже знаю, что говорится в сообщении об ошибке. Проблема в том, что я не вижу нигде, что я объявил ButtonStateNext, поэтому я не уверен, почему он дает это сообщение об ошибке. Я отредактирую свое оригинальное сообщение, чтобы это отразить! – swimmingpoole