Ошибка "Does not name a type" с Serial.print
Я получаю ошибку, которую никогда раньше не видел и не знаю, как исправить. По сути, я пытаюсь вывести строку (хранящуюся в термисторе
) на последовательный монитор. Когда я запускаю код, я получаю сообщение об ошибке: код выхода 1
«Serial» не определяет тип.
Что я могу сделать, чтобы исправить эту ошибку?
void setup() {
Serial.begin(9600);
pinMode(4, OUTPUT);
pinMode(6, OUTPUT);
pinMode(8, OUTPUT);
}
void loop() {
} <==== ERROR: loop() ENDS TOO EARLY
String heartMonitor = codeWrite(4, HIGH, LOW, HIGH);
String lilyPad = codeWrite(6, HIGH, LOW, LOW);
String thermistor = codeWrite(8, HIGH, HIGH, LOW);
Serial.println(thermistor);
delay(1000);
String codeWrite(int pin, char output1, char output2, char output3)
{
digitalWrite(pin, output1);
int A = digitalRead(pin);
delay(1);
digitalWrite(pin, output2);
int B = digitalRead(pin);
delay(1);
digitalWrite(pin, output3);
int C = digitalRead(pin);
delay(11);
String code = String(A) + String(B) + String(C);
<==== ERROR: MISSING RETURN STATEMENT
}
@gp0478, 👍0
1 ответ
Лучший ответ:
▲ 1
Если вы переместите этот код в loop(), эскиз скомпилируется.
String heartMonitor = codeWrite(4, HIGH, LOW, HIGH);
String lilyPad = codeWrite(6, HIGH, LOW, LOW);
String thermistor = codeWrite(8, HIGH, HIGH, LOW);
Serial.println(thermistor);
delay(1000);
РЕДАКТИРОВАТЬ:
Эскиз должен выглядеть так:
void setup() {
Serial.begin(9600);
pinMode(4, OUTPUT);
pinMode(6, OUTPUT);
pinMode(8, OUTPUT);
}
void loop() {
String heartMonitor = codeWrite(4, HIGH, LOW, HIGH);
String lilyPad = codeWrite(6, HIGH, LOW, LOW);
String thermistor = codeWrite(8, HIGH, HIGH, LOW);
Serial.println(thermistor);
delay(1000);
}
String codeWrite(int pin, char output1, char output2, char output3)
{
digitalWrite(pin, output1);
int A = digitalRead(pin);
delay(1);
digitalWrite(pin, output2);
int B = digitalRead(pin);
delay(1);
digitalWrite(pin, output3);
int C = digitalRead(pin);
delay(11);
String code = String(A) + String(B) + String(C);
}
Проблема в том, что код не может находиться вне функции.
,
@VE7JRO
Смотрите также:
- Ошибка: expected unqualified-id before 'if'
- Невозможно преобразовать «String» в «uint8_t {aka unsigned char}» при инициализации
- Ошибка компиляции кода для Arduino/Genuino Uno
- Ошибка : заблудиться '\' в программе
- Ошибка: invalid application of 'sizeof' to incomplete type 'int []' при попытке вычислить размер массива в библиотеке
- ошибка: expected primary-expression before '(' token
- Недопустимое преобразование из 'char' в 'const char*' [-fpermissive] в строке
- Ошибка компиляции в nodeMCU вместе с датчиком температуры oneWire ds18b20 и ЖК-дисплеем 2x16 (не I2C)