Ошибка выглядит так: Arduino: 1.8.2 (Windows 8.1), Плата:"Arduino/Genuino Uno" C:\Users\User\Documents\Arduino\zvuk\zvuk.ino: In function 'void loop()': zvuk:42: error: 'lcd' was not declared in this scope lcd.backlight(); ^ exit status 1 'lcd' was not declared in this scope Этот отчёт будет иметь больше информации с включенной опцией Файл -> Настройки -> "Показать подробный вывод во время компиляции" скетч: #include <Wire.h> boolean lcdon; // состояние лампы: true - включено, false - выключено #include <LiquidCrystal_I2C.h> // подключаем библиотеку ЖКИ #define printByte(args) write(args); // int Value=0; float Value_volt=0; void setup() // процедура setup { pinMode(12,OUTPUT); // пин 12 со светодиодом будет выходом (англ. «output») pinMode(A0,INPUT); // к аналоговому входу A0 подключим датчик (англ. «intput») lcdon=false; // начальное состояние - лампа выключена Serial.begin(9600); // подключаем монитор порта LiquidCrystal_I2C lcd(0x27,16,2); // Задаем адрес и размерность дисплея lcd.init(); // Инициализация lcd lcd.setCursor(0, 0); // Устанавливаем курсор в начало 1 строки } void loop() // процедура loop { Serial.println (analogRead(A0)); // выводим значение датчика на монитор if(analogRead(A0)>28) // регистрация хлопка на датчике звука { lcdon=!lcdon; // меняем статус лампы при регистрации хлопка Value = analogRead(A0); lcd.backlight(); lcd.print (Value) delay(20); // задержка, "дребезга" хлопков } }
переменные описанные в функции являются локальными и внутри другой функции не видны. lcd у тебя создаеца внутри функции setup(), соттвецтно loop() ничего про нее не знает.
пацкаска int Value=0; float Value_volt=0; видны внутри обеих функций, а lcd - только унутре setup() дальше жувать?
ничего не изменилось #include <Wire.h> boolean lcdon; // состояние лампы: true - включено, false - выключено #include <LiquidCrystal_I2C.h> // подключаем библиотеку ЖКИ #define printByte(args) write(args); // int Value=0; float Value_volt=0; void setup() // процедура setup { pinMode(12,OUTPUT); // пин 12 со светодиодом будет выходом (англ. «output») pinMode(A0,INPUT); // к аналоговому входу A0 подключим датчик (англ. «intput») lcdon=false; // начальное состояние - лампа выключена Serial.begin(9600); // подключаем монитор порта LiquidCrystal_I2C lcd(0x27,16,2); // Задаем адрес и размерность дисплея } void loop() // процедура loop { Serial.println (analogRead(A0)); // выводим значение датчика на монитор if(analogRead(A0)>28) // регистрация хлопка на датчике звука { lcdon=!lcdon; // меняем статус лампы при регистрации хлопка lcd.init(); // Инициализация lcd lcd.setCursor(0, 0); // Устанавливаем курсор в начало 1 строки Value = analogRead(A0); lcd.backlight(); lcd.print (Value) delay(20); // задержка, "дребезга" хлопков } }